在RHEL6下排除phpVirtualBox跟SELinux的冲突

VirtualBox是一款虚拟机软件,使用很方便,功能也强大。
phpVirtualBox是它的WEB控制台

我安装的版本:VirtualBox-4.0.8, phpVirtualBox-4.0-6。
两者安装过程这里就不写了,现在遇到的问题是,当在浏览器上登录phpVirtualBox,输入用户名和密码时
会提示“can't connect to host”,无法正常登录。
当执行setenforce 0后,则一切正常,肯定是SELinux规则对程序运行作出了限制!

看看日志文件先~
/var/log/audit/audit.log中有提示:
type=AVC msg=audit(1306988351.696:1235): avc:  denied  { name_connect } for  pid=7639 comm="httpd" dest=18083 scontext=unconfined_u:system_r:httpd_t:s0 tcontext=system_u:object_r:port_t:s0 tclass=tcp_socket
用 sesearch --allow | grep "httpd_t port_t"  命令,会看到
 ...
allow httpd_t port_t : tcp_socket { name_bind name_connect } ;
...
看来这一方面没问题

结合鸟哥的教程~
里面提到seinfo时,有“针对网络服务的规则(Booleans)有xxxx条”
再用 getsebool  -a | grep httpd 命令,有
...
httpd_can_network_connect --> off
...
的结果
应该就是它了!
执行 setsebool  -P httpd_can_network_connect on 命令
再来 setenforce 1
在浏览器中再登录,搞定!!~~
 
参考资料:
鸟哥的Linux私房菜
官方文档:Red_Hat_Enterprise_Linux-6-Security-Enhanced_Linux-en-US.pdf
BTW:实践的操作系统其实是ScientificLinux 6.0

你可能感兴趣的:(linux,VirtualBox,selinux,休闲,RHEL6)