Apache jogando 403 na exibição de imagens de um compartilhamento NFS

4

Estou recebendo repetidamente 403 erros de Permissão negada ao tentar exibir imagens do apache em execução na Máquina A. As imagens estão em um diretório que é um compartilhamento NFS da Máquina B. A entrada na Máquina B / etc / exports é assim: / dir / xxx.xxx.xxx.xxx (rw, sync, no_root_squash)

Consigo navegar nos arquivos / diretórios montados pelo NFS na Máquina A com sucesso.

Depois de passar pelo httpd.conf, eu também descomentei as opções EnableMMAP off e EnableSendFile Off como escritas lá.

Ambas as máquinas estão no RHEL5.

    
por s1d 03.06.2009 / 11:46

4 respostas

7

Finalmente resolvido isso. Foi uma questão SELinux o tempo todo. Encontrei a solução aqui - link

No Red Hat Enterprise Linux 4, os daemons mais visados não interagem com os dados do usuário e não são afetados pelos diretórios iniciais montados pelo NFS. Uma exceção é o Apache HTTP. Por exemplo, os scripts CGI que estão no sistema de arquivos montado possuem o tipo nfs_t, que não é um tipo que o httpd_t tem permissão para executar.

Configurar o SELinux como permissivo nos servidores relevantes fez o trabalho para mim.

    
por 02.09.2009 / 08:56
1

O NFS sempre faz coisas divertidas acontecerem assim sempre que UID / GIDs não estiverem alinhados corretamente.

Supondo que o seu servidor da Web esteja sendo executado como usuário "apache", verifique se as permissões no arquivo são de tal modo legíveis para o mundo.

su para o usuário do apache e cd para o diretório, e tente cat'ing os arquivos.

É mais provável que seja um problema de permissão. Se o apache não estiver gravando no diretório, não importa se os arquivos que estão lendo estão no NFS ou qualquer outra coisa.

    
por 03.06.2009 / 11:53
0

Além da sugestão de Matt, também verifique se o Apache tem permissão para exibir arquivos de onde seu ponto de montagem do NFS existe. Por motivos de segurança, muitas distribuições do Apache vêm com uma diretiva restritiva como esta:

<Directory />
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
</Directory>

Isso impede que arquivos sejam veiculados de / e acima. Normalmente, você terá uma regra menos restritiva para permitir que outro diretório, que contém o DocumentRoots, forneça arquivos com um pouco mais de liberdade.

Não estou familiarizado com o modo como o RHEL5 distribui seus arquivos de configuração do Apache. Mas você pode precisar criar uma diretiva de diretório adicional para permitir que arquivos sejam servidos a partir do ponto de montagem.

    
por 03.06.2009 / 12:20
-1

Eu tive esse problema exato.

Estou no Xubuntu e o usuário www-data (apache) não tem acesso a uma montagem nfs.

antes de 'sudo mount -a' o ponto de montagem era ...

drwxrwxrwx

mas depois

drwxrwx ---

alguém mencionou mudar o grupo do dir para www-data, mas eu o adicionei de volta ao 777 após o mount. Eu preciso ler em montagens nfs para fazer isso automaticamente

    
por 05.02.2014 / 19:43