selinux no RHEL6: configuração do httpd. DocumentRoot [/ path / does / exist] “não existe”

2

Estou executando uma instalação RHEL6 padrão e apontei meu httpd DocumentRoot para /path/does/exist (ele existe!). Eu concedi permissão ao usuário apache e adicionei o que eu achava que deveria ser o rótulo necessário via:

chcon -R  -t httpd_sys_content_t /path/does

mas sem dados .

audit2why mostra uma regra de permissão de aplicação de tipo ausente para uma solicitação semelhante a

avc:  denied  { search } for  pid=4793
   comm="httpd" name="/"  
   scontext=unconfined_u:system_r:httpd_t:s0 
   tcontext=system_u:object_r:file_t:s0 
   tclass=dir

Alguém pode me ajudar a interpretar? Por favor, note que eu não estou procurando a resposta "disable selinux": -)

Obrigado!

-B

    
por Bosh 21.10.2011 / 02:50

1 resposta

3

Você precisará aplicar o seguinte (assumindo que o caminho é / www)

chcon -R -u system_u /www
chcon -R -t httpd_sys_content_t /www

E faça-o sobreviver a um marcador:

semanage fcontext -a -s system_u -t httpd_sys_content_t /www

O que eu acho é mais fácil usar outro diretório como um modelo quando aplicar o contexto do SELinux a um diretório:

drwxr-xr-x. root root unconfined_u:object_r:default_t:s0 www
[root@kvm0001 /]# chcon --reference=/var/www www
[root@kvm0001 /]# ls -laZ
drwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 www
[root@kvm0001 /]#
    
por 21.10.2011 / 05:09