Sempre que tenho que solucionar os erros de "Acesso Negado" no Samba, há três locais que eu normalmente verifico para garantir que o usuário tenha acesso adequado. Nesse caso, o número 3 pode ajudá-lo:
1.) Se seu ambiente permitir, chame "setenforce 0" para testar a desativação do SELinux. Houve muitas vezes que eu soltei problemas de permissão extensivamente apenas para descobrir que o SELinux está impedindo o acesso. Se esse parece ser o problema, considere escrever uma instrução condicional para permitir o acesso necessário.
2.) O sistema de arquivos - faça o login na caixa Linux como usuário e tente navegar para o caminho para o qual o compartilhamento está apontado. Uma vez lá, crie um arquivo e crie um diretório. Se você puder fazer isso sem um problema, há uma boa chance de que seja um problema de permissões do Samba.
3.) Samba - O Samba gera muitos logs, dependendo do nível de log. Eu encontrei o nível de log 3 é geralmente suficiente, mas se você precisar, defina "log level = 4" no smb.conf.
Dentro do diretório de log do samba, você deve encontrar um log para cada host que tentou se conectar a um compartilhamento. O host será identificado pelo endereço IP ou pelo nome do host.
Ative o log do host ao qual você está tentando se conectar enquanto tenta qualquer operação que resulte em um erro "Permissão negada". Você vê rapidamente onde as permissões dos usuários estão sendo desfeitas, seja uma senha incorreta, uma exceção de usuário válida ou um erro de acesso negado ao sistema de arquivos.
Se isso falhar, você pode tentar criar um compartilhamento totalmente aberto e restringi-lo cada vez mais até que o acesso seja interrompido.
E, finalmente, no seu caso específico, você pode verificar as credenciais que o Apache está usando para acessar o compartilhamento do Samba;)