CentOS上php的问题及Selinux安全设置

CentOS上php的问题及Selinux安全设置

最近有位站长在用我们WebIM客户端的时候,无法登录我们的WebIM服务器,十分惊讶。 在我们的用户里尚属首例,其实更惊讶的是我的CentOS也遇到了同样的问题。然后分析了这位站长的HttpResponse , Shamee :( 一样的OS.

搜了一下,发现的解决方法都是在代码上。 我想可能关键词有错误,因为我坚信我的问题肯定不在代码上,应该是来自OS本身的限制。于是重新debug了一下代码,报错 permission (13) connection。然后直接在洋人的邮件列表里搜了一下。

问题确定了 是SeLinux(http://zh.wikipedia.org/wiki/SELinux)安全策略的限制。

这下问题明了了,执行 /usr/sbin/setenforce 0就能迅速关闭SELINUX,或者vi /etc/selinux/configenforcing改成permissive 然后reboot.

但是我想了一下,就算安全级别为B1的Linux被攻击的可能小,但是总会有面对这种问题的时候,况且这种解决访问本身并不优雅。

于是想了下 把Apache脱离SeLinux是一个最恰当的办法,于是执行

sudo  setsebool -P httpd_disable_trans 1 && sudo   /etc/init.d/httpd restart

这样就能保证在SeLinux的光环下,Web服务器行为不受控制。

(转载本站文章请注明作者和出处 宝酷 – sou-ip ,请勿用于任何商业用途)

好烂啊有点差凑合看看还不错很精彩 (11 人打了分,平均分: 2.82 )
Loading...

CentOS上php的问题及Selinux安全设置》的相关评论

  1. 似乎SeLinux带来的总是麻烦,但是网络上看到的都是如何关闭这件件安全利器,
    不得不说是个遗憾。
    从permission (13) connection的日志看来,
    应该是httpd的网络连接被SeLinux拒绝。
    将httpd_can_network_connect置为1可以打开httpd的网络连接权限。
    直接把httpd带出SeLinux的势力范围而言,这也是另外一个温和的选择。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注