SELinux与AppArmor与grsecurity

我必须build立一个尽可能安全的服务器。 您将使用哪种安全增强function?为什么使用SELinux,AppArmor或grsecurity? 你能给我一些提示,提示,利弊这三个?

据我所知:

  • SELinux:function最强大但最复杂
  • AppArmor:比SELinux更简单的configuration/pipe理
  • grsecurity:由于自动训练,简单的configuration,更多的function,而不仅仅是访问控制

我在这方面做了大量的研究。 我甚至还利用AppArmor的MySQL规则集 。 AppArmor是最差的stream程分离forms。 我正在利用的属性是,所有进程都对某些相同的目录(例如/tmp/具有写入权限。 AppArmor有什么好处呢是它没有以用户/pipe理员的方式破坏一些漏洞。 然而,AppArmor有一些根本性的缺陷,不会很快被修复。

SELinux非常安全,它也烦人。 与AppAmoror不同,大多数合法的应用程序在SELinux重新configuration之前不会运行。 大多数情况下,这会导致pipe理员将SELinuxconfiguration错误或将其全部禁用。

grsecurity是一个非常大的工具包。 我最喜欢的是grsecuirty的增强chroot。 这比SELinux更安全,虽然需要一些技巧和一些时间来设置一个chroot监狱,在SELinux和AppAprmor“正常工作”的地方。

有一个第四个系统,一个虚拟机。 虚拟机环境中发现了一些可能导致攻击者“爆发”的漏洞。 但是,虚拟机与虚拟机之间存在更大的分离,因为虚拟机之间共享更less的资源。 虚拟机可用的资源是虚拟的,在其他虚拟机之间几乎没有重叠。 这也涉及到<buzzword>云计算</buzzword> 。 在云环境中,您可以在数据库和Web应用程序之间进行非常干净的分离,这对于安全性非常重要。 也可能有一个漏洞可能拥有整个云和所有运行在其上的虚拟机。

就我个人而言,我会使用SELinux,因为我最终会select一些RHEL的风格,这个风格大部分都是开箱即用的。 红帽还有一组响应式维护人员,还有很多关于configurationSELinux的非常好的文档。 下面有用的链接。

  • Fedora 12 SELinux用户指南
  • RHEL 5 SELinux文档

一个“服务器”提供什么样的服务? 什么观众,在什么环境下? 在这种情况下,什么是“安全”的? 许多信息将是必要的,以提供有用的答案。 例如,纯IP时间服务器可以非常安全 – 所有的ROM固件,无线电input,自带电池的电源都可以自动充电。 但是,这可能不是一个有用的答案。

那么,什么样的服务? 互联网广泛,企业范围广泛,值得信赖的工作团队,专用的点对点networking等。 高可用性是否需要? 可靠性? 数据的完整性? 访问控制? 给我们一些关于你想要什么的信息,并且认识到“安全”是一个意思有很多维度的词。