我不是专家,但我自己也遇到过一些 SELinux 问题。我读了几篇文章,据我所知,SELinux 是服务器的另一层安全保障,确实应该保留,而不是因为无知而关闭(这是我读到的引文,不是我的话)。我发现这个网站很有帮助,也很有趣,它可能会为您提供比我所能提供的更多信息。
http://stopdisablingselinux.com/
我遇到的一些事情,我分享一下:
您可以使用以下命令检查当前的 SELinux 权限:
ls -lZ
您可以使用以下命令设置 SELinux 权限:
chcon unconfined_u:object_r:httpd_user_content_t:s0
您可以使用通配符更改目录中的所有文件,如下所示:
chcon unconfined_u:object_r:httpd_user_content_t:s0 *
您可以使用此命令递归地设置所有文件和目录的权限(这个命令可能会解决您的权限问题,您应该避免像瘟疫一样的 777):
chcon -R unconfined_u:object_r:httpd_user_content_t:s0 *
如果您希望使用主目录来服务站点或应用程序,则需要发出以下命令:
setsebool -P httpd_enable_homedirs=1
我在 CentOS 上使用 Selinux 时遇到了 fsockopen 问题,我不得不使用以下命令(-P 使此更改永久化,您可能还需要此命令):
setsebool -P httpd_can_network_connect 1
您可以使用以下命令查看 HTTPD 上设置的标志:
sestatus
我认为最后一件事是,我在服务器上遇到了公钥/私钥身份验证问题,需要运行此命令来修复它(我相信这是一个已知的错误):
restorecon -R -v /home
希望这些片段和信息中的一些对您有用,并且这些不仅仅是一个疯子的胡言乱语。