SELinux 拒绝 nginx 在本地主机上进行代理

SELinux 拒绝 nginx 在本地主机上进行代理

我现在的SELinux配置不允许nginx连接localhost:5000(进行代理传递时)。这是来自的日志SELinux

type=AVC
msg=audit(***********.*****): avc: denied  { name_connect } for
pid=*****
comm="nginx"
dest=5000
scontext=system_u:system_r:httpd_t:s0
tcontext=system_u:object_r:commplex_main_port_t:s0
tclass=tcp_socket
permissive=0

我明白那个nginx领域 httpd_t哪个希望被允许连接目的(资源)commplex_main_port_t。但我不知道如何更改此权限。

我试图设置httpd_can_network_relayhttpd_can_network_connect 塞布尔true即使重新启动后,它仍然无法工作。

答案1

我发现我正在尝试的是正确的:

setsebool -P httpd_can_network_connect true

我只是忘记了该-P选项,该选项使更改在重新启动后持续存在。

但如果有人读了我的文章,我仍然对更具体的解决方案感兴趣,例如,只允许nginx连接到localhost:5000

相关内容