通过对 SELinux 的介绍,初学者可以这样认为,在传统 Linux 系统使用访问控制方式的基础上,附加使用 SELinux 可增强系统安全。 那么,SELinux 是如何运行的呢?
在解释 SELinux 的工作模式之前,先解释几个概念。
- 主体(Subject):就是想要访问文件或目录资源的进程。想要得到资源,基本流程是这样的:由用户调用命令,由命令产生进程,由进程去访问文件或目录资源。在自主访问控制系统中(Linux 默认权限中),靠权限控制的主体是用户;而在强制访问控制系统中(SELinux 中),靠策略规则控制的主体则是进程。
- 目标(Object):这个概念比较明确,就是需要访问的文件或目录资源。
- 策略(Policy):Linux 系统中进程与文件的数量庞大,那么限制进程是否可以访问文件的 SELinux 规则数量就更加烦琐,如果每个规则都需要管理员手工设定,那么 SELinux 的可用性就会极低。还好我们不用手工定义规则,SELinux 默认定义了两个策略,规则都已经在这两个策略中写好了,默认只要调用策略就可以正常使用了。这两个默认策略如下:
- -targeted:这是 SELinux 的默认策略,这个策略主要是限制网络服务的,对本机系统的限制极少。我们使用这个策略已经足够了。
- -mls:多级安全保护策略,这个策略限制得更为严格。
- 安全上下文(Security Context):每个进程、文件和目录都有自己的安全上下文,进程具体是否能够访问文件或目录,就要看这个安全上下文是否匹配。如果进程的安全上下文和文件或目录的安全上下文能够匹配,则该进程可以访问这个文件或目录。当然,判断进程的安全上下文和文件或目录的安全上下文是否匹配,则需要依靠策略中的规则。举个例子,我们需要找对象,男人可以看作主体,

本文介绍了SELinux的三种工作模式:Disabled(关闭)、Permissive(宽容)和Enforcing(强制),阐述了每种模式的特点和应用场景。在Disabled模式下,SELinux被关闭;Permissive模式允许违反策略但记录日志;Enforcing模式则严格执行策略,拒绝不符合规则的访问。了解这些模式有助于提升Linux系统的安全性。
&spm=1001.2101.3001.5002&articleId=104210768&d=1&t=3&u=b8170874b386450bad6c889691a289a4)
3991

被折叠的 条评论
为什么被折叠?



