什么是AppArmor,它如何保持Ubuntu安全?

image

AppArmor是一个重要的安全功能,Ubuntu自Ubuntu 7.10以来默认包括在内。 但是,它在后台静默运行,所以你可能不知道它是什么,它在做什么。

AppArmor锁定了易受攻击的进程,限制了这些进程可能导致的损害安全漏洞。 AppArmor也可以用来锁定Mozilla Firefox以提高安全性,但默认情况下不会这样做。

什么是AppArmor?

AppArmor类似于SELinux,默认情况下在Fedora和Red Hat中使用。 虽然它们工作方式不同,但AppArmor和SELinux都提供“强制访问控制”(MAC)安全性。 实际上,AppArmor允许Ubuntu的开发人员限制进程可以采取的行动。

例如,在Ubuntu的默认配置中受到限制的一个应用程序是Evince PDF查看器。 虽然Evince可以作为您的用户帐户运行,但它只能执行特定操作。 Evince只有运行和使用PDF文档所需的最低权限。 如果在Evince的PDF渲染器中发现了一个漏洞,并且您打开了接管Evince的恶意PDF文档,AppArmor会限制Evince可以做的损坏。 在传统的Linux安全模型中,Evince可以访问您可以访问的所有内容。 使用AppArmor,它只能访问PDF查看器需要访问的内容。

AppArmor对限制可能被利用的软件(如Web浏览器或服务器软件)特别有用。

查看AppArmor的状态

要查看AppArmor的状态,请在终端中运行以下命令:

sudo apparmor_status

您将看到AppArmor是否在您的系统上运行(默认情况下是运行),已安装的AppArmor配置文件以及正在运行的受限进程。

sudo apparmor_status

AppArmor配置文件

在AppArmor中,进程受配置文件的限制。 上面的列表显示了安装在系统上的协议 - 这些是与Ubuntu一起提供的。 您还可以通过安装apparmor-profiles软件包安装其他配置文件。 某些软件包(例如服务器软件)可能带有自己的AppArmor配置文件,这些配置文件随软件包一起安装在系统上。 您还可以创建自己的AppArmor配置文件以限制软件。

配置文件可以以“投诉模式”或“强制模式”运行。在强制模式下 - Ubuntu附带的配置文件的默认设置 - AppArmor阻止应用程序执行受限制的操作。 在抱怨模式下,AppArmor允许应用程序执行受限操作,并创建一个日志条目,抱怨这一点。 投诉模式是在AppArmor配置文件在强制模式下启用之前测试的理想选择 - 您将看到在强制模式下发生的任何错误。

配置文件存储在/etc/apparmor.d目录中。 这些配置文件是可以包含注释的纯文本文件。

image

为Firefox启用AppArmor

您可能还注意到,AppArmor的配备了一个Firefox配置文件-它在/etc/apparmor.d中目录usr.bin.firefox文件。 它默认情况下不启用,因为它可能会限制Firefox太多,并导致问题。 /etc/apparmor.d/disable文件夹中包含一个指向该文件,这表明它的禁用。

要启用Firefox配置文件并使用AppArmor限制Firefox,请运行以下命令:

sudo rm /etc/apparmor.d/disable/usr.bin.firefox

cat /etc/apparmor.d/usr.bin.firefox | sudo apparmor_parser -a

在运行这些命令后,再次运行sudo的apparmor_status命令,你会看到Firefox的配置文件加载现在。

image

要禁用Firefox配置文件(如果它导致问题),请运行以下命令:

sudo ln -s /etc/apparmor.d/usr.bin.firefox /etc/apparmor.d/disable/

sudo apparmor_parser -R /etc/apparmor.d/usr.bin.firefox


有关使用AppArmor的更多详细信息,请参阅官方Ubuntu服务器指南的上AppArmor的页面

赞 (0)
分享到:更多 ()