我想了解Apparmor和Firejail是如何相互比较的:优点、利弊、目的、相似之处等等。
我可能会要求比较苹果和橘子,但是我注意到了一些相似之处。Firejail有“配置文件”,它们包含一个规则列表,允许您定义应用程序可以使用的文件。Apparmor允许你或多或少地做同样的事情。然而,Firejail也允许您定义“功能”,而且显然它试图隔离进程,即使它曾经获得根权限(就像容器中的权限一样)。无论如何,我可以发现一些相似之处,但我不太清楚它们中的任何一个,不足以理解它们的所有特性和目的。
发布于 2018-10-09 00:21:57
AppArmor可能比SELinux更接近于FireJail,但这里有不同之处。
最重要的(海事组织)是它们的运行水平。FireJail作为一个程序在用户空间运行,而AppArmor运行在内核级别。
FireJail利用Linux名称空间在用户、挂载、网络和进程级别上提供隔离。这种隔离提供了它自己的沙箱来执行它想要的任何操作,同时防止这些更改影响到系统的其他部分。你可以想象这个类似于你所说的容器。容器还使用名称空间进行隔离。。
相反,AppArmor没有提供沙箱,而是限制了应用程序可以访问的系统的哪些部分。您正在指定应用程序无法使用的特定资源。但是,这些资源并不是孤立的,因此两个具有访问相同资源权限的AppArmor运行的应用程序可以交互。
发布于 2023-02-21 16:16:09
仅使用文件系统和网络名称空间。
文件系统: Firejail使用配置文件中的定义为进程构造文件系统树。例如,树可能包含真正的主目录(进程写入的所有内容都反映在“真实”文件系统中)和/tmp的内存文件系统(进程终止时丢失任何文件)。
网络:完全独立的IP堆栈,具有独立的IP地址空间、接口和防火墙。你可能想谷歌“网络名称空间”。
https://security.stackexchange.com/questions/195346
复制相似问题