web-dev-qa-db-ja.com

SELinux、Nginxがローカルファイルを読み取り、アウトバウンド接続を確立できるようにする

私はCentOS7、nginix、php-fpmを使用するサーバーの新しい管理者です。ローカルファイル(prod.pem)を読み取ってから、次のいずれかにアウトバウンド接続する必要があるWebフォームがあります。

gateway.Push.Apple.com:2195
gateway.sandbox.Push.Apple.com:2195

Audit.logに、次の2つのエントリが表示されます。

type=AVC msg=audit(1465918007.693:406): avc:  denied  { read } for  pid=1796 comm="php-fpm" name="prod.pem" dev="dm-0" ino=19554
type=SYSCALL msg=audit(1465918007.693:406): Arch=c000003e syscall=2 success=no exit=-13 a0=7fff2ee13570 a1=0 a2=1b6 a3=24 items=0 ppid=1213 pid=1796 auid=4294967295 uid=997 gid=996 euid=997 suid=997 fsuid=997 egid=996 sgid=996 fsgid=996 tty=(none) ses=4294967295 comm="php-fpm" exe="/usr/sbin/php-fpm" subj=system_u:system_r:httpd_t:s0 key=(null)

僕の /etc/selinux/config

SELINUX=enforcing
SELINUXTYPE=targeted

ファイルの読み取りとアウトバウンド接続を許可するようにSELinuxを設定するにはどうすればよいですか?また、これらが再起動後も保持されることを確認したいと思います。

2
jftuga

これは私のためにそれをしました:

setsebool -P httpd_read_user_content 1
setsebool -P httpd_can_network_connect 1

-Pは、再起動後も永続的になります。

1
jftuga