Erro de acesso negado ao SELinux para scripts bash acionados a partir do script perl-cgi

1

Eu tenho uma estrutura de automação que usa o Perl-CGI para executar scripts no servidor. Como temos o SELinux ativado, estou recebendo erros de acesso negado quando o script tenta executar um script bash.

Abaixo estão os logs de erro que posso encontrar em audit.log para o script

type=AVC msg=audit(1397170377.265:109255): avc:  denied  { execute } for  pid=23776 comm="run_step.sh" name="step.sh" dev=sda1 ino=795126 scontext=system_u:system_r:httpd_sys_script_t:s0 tcontext=system_u:object_r:httpd_sys_rw_content_t:s0 tclass=file
type=AVC msg=audit(1397170377.265:109255): avc:  denied  { execute_no_trans } for  pid=23776 comm="run_step.sh" path="/var/www/html/test/generated.5465/step.sh" dev=sda1 ino=795126 scontext=system_u:system_r:httpd_sys_script_t:s0 tcontext=system_u:object_r:httpd_sys_rw_content_t:s0 tclass=file

Quando configuro o SELinux no modo permissivo, consigo executar esses scripts sem erros. Mas quando é impor, não posso fazê-lo.

Além disso, defini o rótulo httpd para os arquivos, mas ainda assim obtenho esses erros. Qualquer pensamento sobre como resolvê-lo.

    
por Abhinav 10.04.2014 / 11:37

1 resposta

1

Olhando para as mensagens audit.log, parece que você pode ter alguns dos arquivos incorretamente rotulados. Se você está tentando executar os arquivos, acho que eles devem ser rotulados como httpd_sys_script_t em vez de httpd_sys_rw_content_t .

    
por 10.04.2014 / 14:46

Tags