proxy_pass não está funcionando quando o SELinux está ativado, por quê?

Estou tendo um aplicativo escutando na porta 8081 e Nginx em execução na porta 8080. A declaração de passagem do proxy se parece com:

$ cat /var/etc/opt/lj/output/services/abc.servicemanager.conf

location /api/abc.servicemanager/1.0 { proxy_pass     http://localhost:8081;}

Nonginx.conf, Eu incluo este arquivo como:

include /etc/nginx/conf.d/services/*.conf;

o/etc/nginx/conf.d/service é um link simbólico:

# ll /etc/nginx/conf.d/

lrwxrwxrwx. 1 root root   39 Dec 10 00:19 services -> ../../../var/etc/opt/lj/output/services

Este é um sistema ativado para SELinux do CentOS 7.0. Se eusetenforce 0e torne-o permissivo, não vejo nenhum problema. Portanto, o arquivo está no lugar certo e sem problemas com os caminhos. Se o SELinux estiver em vigor, vejo o seguinte no log de auditoria:

type=AVC msg=audit(1418348761.372:100930): avc:  denied  { getattr } for  pid=3936 comm="nginx" path="/var/etc/opt/lj/output/services/abc.servicemanager.conf" dev="xvda1" ino=11063393 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:var_t:s0 tclass=file

Quero saber como habilitar o Nginx para encontrar o arquivo conf sem precisar desativar o SELinux.

questionAnswers(4)

yourAnswerToTheQuestion