SELinux 和 AppArmor 的替代品?

信息安全 linux selinux 服装
2021-09-04 22:23:47

使用 NSA 开发的 SELinux 和 Novell [*] 开发的 AppArmor,在尝试锁定系统和运行应用程序时存在哪些替代解决方案,基于 ACL 和类似概念(如 Solaris 上的区域)。

我的意思是应用程序:可通过网络公开访问的服务,即各种网络/应用程序服务器,还有数据库服务器。

chroot 不是一个选项,因为它的 PITA 可以长期设置和维护(经验)。

我想要实现的目标:限制基于网络的服务对其配置和数据文件的访问(webservers 的 docroot,db-server 的 dbs 等);传出连接通过防火墙和服务代理进行管理。如果某些攻击者能够访问系统,他将被限制在看什么和做什么,例如不运行程序,不读取其他文件。

[*] 因为禁言令等,不再信任。

4个回答

Grsecurity可能是 linux 机器上 selinux 和 apparmor 的替代品。这里给出了三种工具的比较

还有tomoyo,它提供了实现强制访问控制的方法。不过,您必须相信NTT DATA Corporation不会作恶。

此外,可以说,chroot甚至不能将其视为安全 功能

我强烈推荐RSBAC,因为它基本上是没有 NSA 的 SELinux。
所以它可能是最好的选择。

几个发行版支持它开箱即用:https : //www.rsbac.org/links
在任何其他情况下,使用 git 存储库自己修补它:https : //www.rsbac.org/download
(预修补过的内核太过时了,不安全。)

我之前的回答是错误的,它确实是活的,如下所示:https :
//www.rsbac.org/pipermail/rsbac/2018-January/002787.html

(当然,除非你亲自检查源代码,或者信任做过的人,......并且在没有硬件后门的系统上运行它......无论如何这都是无关紧要的。)

如果您对 chroot 的问题只是设置它的困难以及缺乏围绕它的标准化工具,那么您可能会发现 Docker 非常适合。使用 Docker,默认情况下容器(以及因此利用容器中的应用程序的任何东西)对您的文件系统没有任何访问权限。您必须选择允许他们访问您想要的内容,从而轻松验证您是否为他们提供尽可能少的访问权限,并且您可以进一步限制网络访问或 CPU 和内存使用限制。