1、关系
AppArmor最初由Immunix开发,随后由Novell维护,它是SELinux的替代品方法,也使用了Linux安全模块(LSM)框架。通过SELinux和AppArmor使用了同样的框架,因此它们可以互换。AppArmor的开发初衷是因为有人认为SELinux太过复杂,不适合普通用户管理。AppArmor包含SELinux的一个问题在于,它需要一个支持扩展属性的文件系统;而AppArmor对文件系统没有任何要求。
2、比较
易用性:对一个ftp程序做相同的限制,使用apparmor的规则只是SELinux的1/4,而且从代码的替代性上来看,apparmor的代码也更易理解和易读。
安全性:安全性上,毋庸置疑,SELinux更安全,看下SELinux的出身,其是美国国家安全局「NSA」和SCC(Secure Computing Corporation)开发的Linux的一个扩展强制访问控制安全模块。再从理论上也可以了解到SELinux与Apparmor最大的区别在于:Apparmor使用文件名(路径名)最安全的标签,而SELinux使用文件的inode作为安全标签,则意味着,Apparmor机制可以通过修改文件名而被绕过,另外,在文件系统中,只有inode才具有唯一性。
3、第三方的对方比数据
关于这方面的资料查找到了日立软件AppArmor与SELinux的内部使用情况对比 测试报告。最后做个小总结,个人针对centos / redhat系和opensuse / ubuntu系都没有偏见,毕竟都是优秀的产品。在apparmor与selinux的选择上,也都有各自的考量。如果仅从配置与入用的难易程序上来说,apparmor做的更好的上些;从追求更高的安全性上来说,selinux上更优一些,,而且从日立软件的测试结果来看,也比较推荐使用selinux而不是apparmor。
注:也可以试试其中的图形化配置工具,apparmor有图形化的配置工具(记不住名字了suse的图形配置中心里可以找到),selinux也有相应的图形配置工具system-config-selinux。