我如何知道 apparmor 正在运行?

我如何知道 apparmor 正在运行?

我希望在答案中回答一些问题:

  • 我如何知道 apparmor 是否正在运行?
  • 我如何知道它是否运行良好?

答案1

要了解你的 app-armor 的状态,请在终端中输入此命令。

sudo apparmor_status

例如,示例输出:在此处输入图片描述

为了提高 Apparmor 的工作性能,我认为没有测量工具。据我所知,我们必须通过电脑周围发生的事情来检测它,我的意思是一些异常的事情。

答案2

为了解决这个问题:我如何判断它是否运行良好?

Apparmor 配置文件正在开发中。因此,目标正在发生变化。请查看 寻找 AppArmor 配置文件中的漏洞以及 Canonical 的 Jamie Strandboge 的回应这里我希望这两个链接能让你了解这个问题的复杂性。

是否保留子问题作为问题的一部分由您决定。

对于这个“未回答”我提前表示歉意。

编辑以进一步说明为什么这个子问题至少依赖于上下文:

考虑最流行的程序之一:Firefox。它有一个配置文件,但它以投诉模式而不是强制模式交付。换句话说,Apparmor 对 Firefox 没有任何作用。原因如下这里,尽管很简短:

对于默认安装的用户来说,最终用户的影响将不存在。在开发周期中,Firefox 软件包将以投诉模式发布,并在发布前(或在周期中的某个时间点)更新为禁用。用户必须选择使用该配置文件,因此应该知道 AppArmor 限制可能会导致 Firefox 出现意外行为。

接下来,想象一下,当一个普通用户刚刚“听说”或“读到”Apparmor 并把配置文件设置为强制模式时会发生什么。毫无疑问,这会带来一种成就感。

然后看看这个错误从 2010 年开始,忽略那些粗鲁的部分。注意标题:“firefox apparmor 配置文件太宽松了”。请继续阅读评论 #4 中的部分理由:

AppArmor 可以防止许多事情。firefox 配置文件可以防止浏览器执行任意代码、读取/写入不属于您的文件(例如 /etc/passwd)、读取/写入敏感文件(如用户的 gnome-keyring、ssh 密钥、gnupg 密钥、历史文件、swp、备份文件、rc 文件以及标准 PATH 中的文件)。它还将附加组件和扩展限制在上述范围内。Firefox 集成到桌面中,因此必须允许它打开辅助程序并访问用户的数据。默认情况下,配置文件一般用途设计如下:
* 启用后,它显著提高了 Firefox 的安全性
* 它为人们提供了一个起点,让他们可以随心所欲地限制 Firefox
* 该实现使用户能够对其进行微调,使其尽可能严格
当然,可以对 Firefox 进行更多锁定以保护用户的数据。我们可以让它只能写入 ~/Downloads 并从 ~/Public 读取。然而,这偏离了上游的设计,可能会危及 Ubuntu 的 Mozilla 品牌,最重要的是会让用户感到沮丧。Ubuntu 的配置文件是否“违反了 apparmor 的理念”?当然不是——它保护用户免受各种攻击和多种形式的信息泄露。提供功能齐全的浏览器是发行版的要求。不要用过于激进的安全保护措施破坏浏览器是发行版的选择。用户/管理员可以选择为其环境配置配置文件。

类似的论点也适用于 Evince。

答案3

您可以使用以下命令进行检查:

sudo systemctl status apparmor

相关内容