我希望能获得尽可能多的意见。
sudo audit2allow -m "${name}" -i /var/log/audit/audit.log > ${name}.te
/etc/selinux/local/${name}-setup.sh
。SOURCE=/etc/selinux/local
BUILD=/etc/selinux/local
/usr/bin/checkmodule -M -m -o ${BUILD}/${name}.mod ${SOURCE}/${name}.te
/usr/bin/semodule_package -o ${BUILD}/${name}.pp -m ${BUILD}/${name}.mod
/usr/sbin/semodule -i ${BUILD}/${name}.pp
/bin/rm ${BUILD}/${name}.mod ${BUILD}/${name}.pp
话虽如此,大多数人最好只是禁用SELinux,并通过其他通常被接受的共识性最佳实践来加固其系统,例如互联网安全中心基准(请注意,他们推荐使用SELinux :-)).
我曾经在一家大型计算机制造商工作,为该公司的服务器上运行的RedHat Linux(以及其他两种版本)提供第三级支持。在绝大多数情况下,我们关闭了SELinux。我的感觉是,如果你真的需要SeLinux,你会知道你需要它,并且可以明确说明为什么需要。当你不需要它,或者不能清楚地表达为什么需要时,并且它默认启用时,你很快就会意识到它很麻烦。跟随你的直觉。
我听说情况正在变得更好,但我仍然禁用它。对于服务器而言,除非你是ISP或大型企业想要在多个本地用户之间实施细粒度访问级别控制,否则这并没有什么意义。
在Web服务器上使用它,我遇到了很多Apache权限的问题。我不断地必须运行,
chcon -R -h -t httpd_sys_content_t /var/www/html
在添加新文件时更新ACL。我相信这个问题现在已经解决了,但是启用SELinux对于标准Web站点部署的有限奖励来说是很痛苦的。
是的。它很蠢。它可能会导致标准守护程序出现故障,几乎不可能诊断。它还可以关闭一个门,但留下一个窗户开着。也就是说,在新的CentOS安装中,它阻止了从“/etc/init.d/smb”启动smbd。但是,当作为“sh /etc/init.d/smb”或“smbd -D”调用时,它没有阻止它启动,也没有将init.d/smb文件移动到另一个目录,从那里它可以很好地启动smbd。
所以,无论它认为自己在保护我们的系统方面做了什么-通过破坏它们-它甚至都没有一致地做到这一点。咨询一些严肃的CentOS大师,他们也不理解其行为的不一致性。它旨在让您感到安全。但这只是安全的幌子。这是锁定系统安全的真正工作的替代品。
run_init service <servicename> <command>
。不要通过_移动_文件来搞乱标签;而应该复制它们。 - Michael Hampton我在这里没有太多可以贡献的,但由于它没有得到答复,我想我会发表我的意见。
个人而言,在处理不重要的事情时,我会在开发框中禁用它。当我处理任何生产或需要更好安全性的事情时,我会将其打开并/或花时间调整它以按照我的需求处理事情。
无论您是否使用它,最终取决于您的需求,但是它是有原因被创建的,所以请考虑使用它而不是总是关闭它。
我没有禁用它,但是有一些问题。
有些应用程序与它不太兼容。
例如,我相信我启用了smartd来跟踪我的raid磁盘的s.m.a.r.t.状态,但是selinux会对引导时创建的新的/dev/sda*
节点感到困惑(我认为这就是问题所在)
您必须下载规则源代码才能理解事情。
只需检查/var/log/messages
中的“avc denied”消息,您就可以解码被拒绝的内容。
谷歌搜索“selinux faq”,您将找到一个fedora selinux faq,告诉您如何解决这些问题。