AppArmor

✍ dations ◷ 2025-08-16 05:47:54 #AppArmor

AppArmor (“Application Armor”,意为“应用盔甲”) 是一个Linux内核安全模块,允许系统管理员通过每个程序的配置文件限制程序的功能。如它的帮助页面所说,“AppArmor 是一个对内核的增强工具,将程序限制在一个有限的资源集合中。AppArmor 独特的安全模型将对访问属性的控制绑定到程序而非用户。”

AppArmor 通过提供强制访问控制(MAC)来补充传统的Unix自主访问控制(DAC)模型。 从Linux内核的2.6.36版本开始,它已经被包含在主流分支中,并且自2009年它的开发得到了 Canonical 公司的支持。

AppArmor 对相关程序的约束与控制通过 apparmor_parser 加载到内核的配置文件来提供,这一般通过 /etc/init.d/apparmor 中的 SysV initscript ,如:

# /etc/init.d/apparmor start# /etc/init.d/apparmor stop# /etc/init.d/apparmor restart

AppArmor可以以两种模式运行:执行(enforcement)模式或学习(complain/learning)模式:

AppArmor 是使用Linux安全模块(LSM)内核接口实现的。在2009年,Linux 2.6.30 中包含了一个名为 Tomoyo(英语:Tomoyo) 的新解决方案;像 AppArmor 一样,它也使用基于路径的访问控制。

AppArmor 是作为 SELinux 的替代品出现的,因为对 SELinux 的批评者认为它难以让管理员设置和维护。与基于将标签应用于文件的 SELinux 不同,AppArmor 使用文件路径来确认文件。 AppArmor 的支持者声称,它对普通用户而言要比 SELinux 更简单、更易学习。 他们还认为 AppArmor 对现有系统的要求更低:例如 SELinux 需要支持“安全标签”的文件系统,因此无法为通过 NFS 挂载的文件提供访问控制。 AppArmor 则对文件系统没有要求。

但不论如何,这两个软件产品对让管理员加强系统的安全性都非常有帮助。他们都专注于访问控制,强化了标准的Linux访问控制策略。他们都生成日志,并提供审计活动的工具。他们都在应用程序层内工作。从技术上讲,他们同样地使用LSM与Linux内核进行交互。它们允许管理员使用GUI与非GUI工具。最后,它们都允许管理员在没有真正阻止访问的情况下尝试策略(而只是警告),以便仅在足够数量的测试之后才应用安全加固策略。

SELinux 和 AppArmor 的不同主要体现在管理方式和集成方式上。例如一个重要的区别: SELinux 通过 inode 编号而不是路径标识文件系统对象。这意味着如果给一个无法访问的文件创建了硬链接,在 AppArmor 中它将可以访问,但 SELinux 通过新创建的硬链接仍然会拒绝访问——由 inode 引用的基础数据是一样的。另外,在文档数量上 AppArmor 要比 SELinux 略逊一筹,这意味着网上寻找解决方案的难易程度同样有所差异。

AppArmor 在1998~2003年首先在 Immunix(英语:Immunix) Linux中被使用。当时,AppArmor被称为SubDomain,这个名字意在将特定程序的安全配置文件分割成不同的域,而程序可以动态地在不同的域中进行切换。 AppArmor 首先在 SLES 和 openSUSE 中可用,并且在 SLES(英语:SUSE_Linux_Enterprise) 10 和 openSUSE 10.1 中默认首先启用。

2005年5月,Novell 收购了 Immunix 并将 SubDomain 重命名为 AppArmor,并开始对其 Linux 内核进行代码清理和重写。从2005年到2007年9月,AppArmor 由 Novell 维护。从那时起,SUSE 就是商标名 AppArmor 的合法所有者。

AppArmor 在2007年4月第一次成功移植并打包于 Ubuntu。它成为Ubuntu 7.10版本的默认软件包,并最终作为Ubuntu 8.04发行版的一部分,默认设置只保护 CUPS。从 Ubuntu 9.04 开始,更多的项目(如MySQL)已经安装了配置文件。在 Ubuntu 9.10 中,AppArmor 的功能不断得到改进,因为它提供了客户会话、libvirt 虚拟机、Evince文档查看器的配置文件。它还提供了一个可选的 Firefox 的配置文件。

AppArmor 第一次被集成到 Linux 内核中是在2010年10月的2.6.36版本。

2014年,AppArmor 已经集成到了 Synology 的 DSM 5.1 Beta中。

相关

  • 机器翻译机器翻译(英语:Machine Translation,经常简写为MT,简称机译)属于计算语言学的范畴,其研究借由计算机程序将文字或演说从一种自然语言翻译成另一种自然语言。简单来说,机器翻译是通
  • 干燥剂干燥剂是指能除去潮湿物质中水分的物质,常分为两类:化学干燥剂,如硫酸钙和氯化钙等,通过与水结合生成水合物进行干燥;物理干燥剂,如硅胶与活性氧化铝等,通过物理吸附水进行干燥。湿
  • NAVERNAVER(韩语:네이버)是Naver公司旗下韩国著名入口/搜索引擎网站,其Logo为一顶草帽,于1999年6月正式投入使用。它使用独有的搜索引擎,并且在韩文搜索服务中独占鳌头。除了搜索之外也
  • 永元 (东汉)永元(元年:89年 - 末年:105年四月)是东汉和帝刘肇的第一个年号。汉朝使用这个年号时间共计17年。章和二年二月汉和帝即位沿用章和年号,次年正月初一(89年1月30日)改元永元。永元十
  • 分层广义线性模型在统计学中,分层广义线性模型(hierarchical generalized linear models (HGLM))可视为广义线性模型的推广。在广义线性模型中,误差分量是统计独立的, 然而这一假设并非总是成立的
  • 南奇乡南奇乡,是中华人民共和国河北省保定市竞秀区下辖的一个乡镇级行政单位。南奇乡下辖以下地区:南奇村、北奇村、一亩泉村、孙家塘村、夏庄村、贾庄村、张海庄村、谢庄村、王庄村
  • 伦敦国际金融期货交易所伦敦国际金融期货交易所(LIFFE)是欧洲第一家金融期货交易所。它成立于1982年9月30日,并开始交易“3月期欧洲美圆存款利率”期货和“英镑兑美圆汇率”期货,后来又增加了德国马克
  • 神尾枫珠神尾枫珠(日语:神尾 楓珠/かみお ふうじゅ ,1999年1月21日-)是一名日本演员,隶属于A-team(日语:A-team (芸能プロダクション))。
  • 胡安·阿吉莱拉胡安·阿吉莱拉(西班牙语:Juan Aguilera,1962年3月22日-),生于巴塞罗那,西班牙男子网球运动员,1980年成为职业球手。他曾获得德国网球公开赛男子单打冠军。他于1991年1月退役。
  • 波旁的玛丽亚·伊莎贝尔 (1851年-1931年)玛丽亚·伊莎贝尔(西班牙语:María Isabel Francisca de Asís Cristina Francisca de Paula Dominga,1851年12月20日-1931年4月22日),西班牙女王伊莎贝拉二世的长女。玛丽亚·伊莎贝尔一出生即为阿斯图里亚斯女亲王(即西班牙王储),直到弟弟阿方索于1857年出生为止。阿方索即位为西班牙国王以后,玛丽亚·伊莎贝尔再次成为阿斯图里亚斯女亲王,直到侄女玛丽亚·梅塞德斯的诞生。玛丽亚·伊莎贝尔父母的婚姻并不愉快,伊莎贝拉二世在十六岁时就被迫与堂