摘要:linux 系统中的 SELinux 是什么?SELinux 是(Security-Enhanced Linux)的缩写,由美国国家安全局(NSA)联合其它安全机构(比如 SCC 公司)共同开发的,旨在增强传统 Linux 操作系统的安全性...
linux 系统中的 SELinux 是什么
SELinux 是(Security-Enhanced Linux)的缩写,由美国国家安全局(NSA)联合其它安全机构(比如 SCC 公司)共同开发的,旨在增强传统 Linux 操作系统的安全性,解决传统 Linux 系统中自主访问控制(DAC)系统中的各种权限问题(如 root 权限过高等)。
SELinux 是一个 Linux 内核模块,也是 Linux 的一个安全子系统,主要作用就是最大限度地减小系统中服务进程可访问的资源(最小权限原则)。
我们可以简单的理解为它是部署在 Linux 系统上用于增强系统安全的功能模块。
SELinux的3种工作模式
SELinux 提供了 3 种工作模式,分别是 Disabled 工作模式、Permissive 工作模式和 Enforcing 工作模式。它们的具体介绍如下:
1. Disabled工作模式(关闭模式)
在 Disable 模式中,SELinux 被关闭,使用 DAC 访问控制方式。该模式对于那些不需要增强安全性的环境来说是非常有用的。
注意,在禁用 SELinux 之前,需要考虑一下是否可能会在系统上再次使用SELinux,如果决定以后将其设置为Enforcing或Permissive,那么当下次重启系统时,系统将会通过一个自动SELinux文件重新进行标记。
关闭 SELinux 的方式:
临时关闭:使用命令 setenforce 0 永久关闭:修改/etc/selinux/config文件将 SELINUX=enforcing 改为 SELINUX=disabled,重新启动系统即可
2. Permissive工作模式(宽容模式)
在 Permissive 模式中,SELinux 被启用,但安全策略规则并没有被强制执行。当安全策略规则应该拒绝访问时,访问仍然被允许。这时会向日志文件发送一条该访问应该被拒绝的消息。
SELinux Permissive 模式主要用于审核当前的 SELinux 策略规则;它还能用于测试新应用程序,将 SELinux 策略规则应用到程序时会有什么效果;以及用于解决某一特定服务或应用程序在 SELinux 下不再正常工作的故障。
3. Enforcing工作模式(强制模式)
在 Enforcing 模式中,SELinux 被启动,并强制执行所有的安全策略规则,举个例子,比如某个文件,尽管设置了777权限,但是我们还是无法修改,提示权限不足,这时候就需要关闭 SELinux 模式了。