SELinux政策问题

由于qemu和KVM在SELinux开箱即用的情况下工作正常,我想启用SELinux来改善我的CentOS 6服务器上的客户隔离。 问题是我正在使用需要禁用SELinux的第三个奇偶校验虚拟化pipe理软件。 因为他们永远不会实现,我现在试图让我自己的工作…

虽然我能够修复所有libvirt / qemu相关的问题(更改默认图像/ lvm位置,并与audit2allow修复另一个问题),我卡住了他们用来处理各种pipe理任务的自定义lighttpd

我试图用audit2allow添加一个自定义规则,但是根本不起作用。 所以,我不是一个SELinux专家,我只是想找一个办法

  • 只是把lighttpd放在宽松的模式(所以它可以做任何必要的)
  • 仅对运行虚拟机的qemu / libvirt进程强制执行SELinux

我已经在semanage manpage中find了这个,我想这可能是一个解决schemesemanage permissive -a TYPE http_r命令,但是这只是返回: / usr / sbin / semanage:bad选项

我认为这是因为他们没有从CentOS仓库运行股票lighttpd,所以缺less了lighty的政策。

以下是audit.log中的一小段代码

 type=SYSCALL msg=audit(1393761691.786:1259): arch=c000003e syscall=9 success=yes exit=140369999609856 a0=0 a1=1fa588 a2=5 a3=802 items=0 ppid=1 pid=8532 auid=4294967295 uid=500 gid=500 euid=500 suid=500 fsuid=500 egid=500 sgid=500 fsgid=500 tty=(none) ses=4294967295 comm="php" exe="/usr/bin/php" subj=system_u:system_r:httpd_t:s0 key=(null) type=AVC msg=audit(1393761691.813:1260): avc: denied { name_connect } for pid=8532 comm="php" dest=5656 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:port_t:s0 tclass=tcp_socket type=SYSCALL msg=audit(1393761691.813:1260): arch=c000003e syscall=42 success=no exit=-115 a0=4 a1=7fffa6ed55f0 a2=10 a3=0 items=0 ppid=1 pid=8532 auid=4294967295 uid=500 gid=500 euid=500 suid=500 fsuid=500 egid=500 sgid=500 fsgid=500 tty=(none) ses=4294967295 comm="php" exe="/usr/bin/php" subj=system_u:system_r:httpd_t:s0 key=(null) type=AVC msg=audit(1393761691.969:1261): avc: denied { nlmsg_write } for pid=8552 comm="tc" scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:system_r:httpd_t:s0 tclass=netlink_route_socket 

你正在寻找的命令是

 semanage permissive -a httpd_t