Ubuntu 使用什么安全上下文软件?

Joh*_*ino 10 security process

Ubuntu 是否默认使用 SELinux,如果没有,如何管理安全上下文?例如,允许进程在没有安全上下文的情况下以 root 身份运行可能存在安全风险。

关于 SELinux帮助页面提示 SELinux 是一个需要手动安装的程序。

那么Ubuntu是如何处理开箱即用的安全上下文的呢?

And*_*ini 15

Ubuntu 使用AppArmor,一种 SELinux 替代品。

维基百科给出了一些关于为什么有些人认为 AppArmor 比 SELinux 更好的提示:

AppArmor 部分是作为 SELinux 的替代品提供的,批评者认为管理员难以设置和维护 SELinux。与基于将标签应用于文件的 SELinux 不同,AppArmor 使用文件路径。AppArmor 的支持者声称,对于普通用户来说,它比 SELinux 更简单、更容易学习。他们还声称 AppArmor 需要较少的修改才能与现有系统一起使用:例如,SELinux 需要一个支持“安全标签”的文件系统,因此无法为通过 NFS 挂载的文件提供访问控制。AppArmor 与文件系统无关。

Ubuntu 为核心应用程序提供了许多 AppArmor 配置文件。您可以在/etc/apparmor.d/. 如果您需要编辑默认配置文件,您可以从 覆盖设置/etc/apparmor.d/local/

Ubuntu 还提供了一些所谓的“抽象”,这些方法可以帮助您快速编写自己的 AppArmor 配置文件,而无需重复自己(著名的DRY 原则)。

需要注意的一件事是,Firefox 的 AppArmor 配置文件默认是禁用的,因为它对许多用户来说可能过于严格。但是,您可以按照文档中的说明启用它:

sudo aa-enforce /etc/apparmor.d/usr.bin.firefox
Run Code Online (Sandbox Code Playgroud)

如果你想使用 SELinux,你可以禁用AppArmor 并安装selinux包。但是请注意,Ubuntu 中 SELinux 的默认配置没有太多限制,因此您必须自己配置。