Como eu configuro o SELinux para permitir conexões de saída de um script CGI?

10

Estou migrando para um novo servidor da web que tenha o SELinux configurado (executando o Centos 5.5). Eu o configurei para que ele possa executar scripts CGI sem nenhum problema, mas alguns dos scripts mais antigos baseados em Perl não conseguem se conectar a serviços da Web remotos (feeds RSS e similares).

Em execução: grep perl /var/log/audit/audit.logdá:

tipo = SYSCALL msg = auditoria (1299612513.302: 7650): arch = 40000003 syscall = 102 sucesso = sem saída = -13 a0 = 3 a1 = bfb3eb90 a2 = 57c86c a3 = 10 itens = 0 ppid = 22342 pid = 22558 auid = 0 uid = 48 gid = 48 euid = 48 suid = 48 fsuid = 48 egid = 48 sid = 48 fsgid = 48 tty = (nenhum) ses = 235 comm = "index.cgi" exe = "/ usr / bin / perl" subj = raiz: system_r: httpd_sys_script_t: chave s0 = (nula)

Conforme meu curso intensivo no SELinux, parece que ele está recusando ativamente a conexão de saída, mas como eu o configuro para permitir que scripts CGI façam solicitações de saída?

Rowland Shaw
fonte

Respostas:

20

Você provavelmente precisa habilitar o httpd_can_network_connect SELinux booleano:

Executar como root:

# setsebool -P httpd_can_network_connect 1
jsbillings
fonte