首页 > Unix/Linux, Web开发 > CentOS上php的问题及Selinux安全设置

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

2009年9月26日 发表评论 阅读评论 876 人阅读    

最近有位站长在用我们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服务器行为不受控制。





分类: Unix/Linux, Web开发 标签: , ,
好烂啊有点差凑合看看还不错很精彩 (5 人打了分,平均分: 4.80 )
Loading ... Loading ...
  1. 2009年12月25日12:45 | #1

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

  1. 本文目前尚无任何 trackbacks 和 pingbacks.

无觅相关文章插件,快速提升流量