Permissões em diretórios do Apache no CentOS

Publicado por Xerxes em 14/06/2017

[ Hits: 14.791 ]

 


Permissões em diretórios do Apache no CentOS



Dica testada no CentOS 6.9.

Compartilho uma experiência aqui que pode ajudar usuários com o mesmo problema. Num servidor CentOS há o diretório "/var/www/html". Arquivos HTML colocados dentro podem ser lidos normalmente. Mas o meu objetivo era criar um diretório chamado "arquivos" para disponibilizar arquivos PDF e outro chamado "conversor" que iria receber arquivos PDF para executar um script (que não é objeto desta dica).

Em resumo:
  • /var/www/html/arquivos --> disponibilizar PDF
  • /var/www/html/conversor --> receber PDF e executar um script

Mas as permissões precisavam ser configuradas, pois caso contrário o acesso à leitura de PDF seria proibida e o armazenamento de PDF também.

Após googlar bastante me deparei com uma linda informação que dizia:

Surprise! SELinux is here!
"You guys choose CentOS, so you got SELinux as well."
Ou seja, não importava o que fosse feito com relação às permissões, sem configurar o SELinux seria impossível.

Em resumo a solução foi a seguinte:

# chown apache:apache -R /var/www/html/arquivos
# cd /var/www/html/arquivos
# find . -type f -exec chmod 0644 {} \;
# find . -type d -exec chmod 0755 {} \;
# chcon -t httpd_sys_content_t /var/www/html/arquivos -R


E repetir tudo novamente só que para o diretório "conversor". Adicionando este comando para permitir a escrita:

# chcon -t httpd_sys_rw_content_t /var/www/html/conversor -R

Após isso, tudo funcionou como esperado. Pois os arquivos puderam ser lidos e o conversor que faz upload de arquivos PDF pode funcionar.

Segue a fonte que me ajudou: CentOS 7 + SELinux + PHP + Apache – cannot write/access file no matter what | Lysender's Daily Log Book

Outras dicas deste autor

Funtoo - Montando dispositivos automaticamente

Java Oracle no Linux Mint 18.1 sem PPA

Perdeu a senha de root do MySQL? Recupere agora

Java da Oracle no Google Chrome

Quadrados ou retângulos no lugar de texto [Resolvido]

Leitura recomendada

Coloque o iptables para iniciar como serviço no Conectiva 10

Backtrack 4 - OScanner

Metasploit no Debian 8 Jessie

Segurança na Internet

Como retornar 404 (Não encontrado) ao invés de 403 (Proibido) usando o mod_rewrite no Apache

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts