SELinux是Linux系统中一种安全模块,用于控制系统中各个进程、应用程序和用户对系统资源(如文件、目录)的访问权限。它的工作模式有三种:Disabled、Permissive和Enforcing。下面我将详细讲解SELinux三种工作模式的含义和实例说明。
1. Disabled
Disabled表示SELinux完全关闭,不对系统资源进行任何安全限制和管控。这种模式下,系统管理员可以自由掌握系统资源的访问权限,但是也面临安全风险。
实例说明:
通过查看SELinux的状态,实现检测是否为Disabled模式:
# 查看SELinux状态
sestatus
SELinux status: disabled
如上,返回的状态是disabled
,表示SELinux已被关闭。
2. Permissive
Permissive模式下,SELinux只是记录应用程序的访问请求,不对系统资源进行严格的限制和管控。这种模式通常用于调试和分析SELinux产生的日志信息,帮助管理员通过检查日志信息来确定是否需要修改系统资源的访问权限。
实例说明:
通过修改SELinux的配置文件,将其运行模式设置为Permissive,然后检查SELinux状态:
修改SELinux配置文件/etc/selinux/config
,将其SELINUX
参数修改为permissive
,重启系统或者SELinux服务,使设置生效:
# 修改SELinux配置文件
vi /etc/selinux/config
# 将SELINUX参数修改为permissive
SELINUX=permissive
# 重启SELinux服务
systemctl restart selinux-policy-targeted
然后查看SELinux状态,实现检测是否为Permissive模式:
# 查看SELinux状态
sestatus
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: permissive
Mode from config file: permissive
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 31
如上,返回的状态是Current mode: permissive
,表示系统运行在Permissive模式下。
3. Enforcing
Enforcing模式是SELinux的默认工作模式,它对系统资源进行严格的安全限制和管控,且不允许应用程序访问没有被授权的资源。这种模式可以有效保护系统资源的安全性,但同时也可能对某些应用程序的正常运行造成影响。
实例说明:
通过修改SELinux的配置文件,将其运行模式设置为Enforcing,然后检查SELinux状态:
修改SELinux配置文件/etc/selinux/config
,将其SELINUX
参数修改为enforcing
,重启系统或者SELinux服务,使设置生效:
# 修改SELinux配置文件
vi /etc/selinux/config
# 将SELINUX参数修改为enforcing
SELINUX=enforcing
# 重启SELinux服务
systemctl restart selinux-policy-targeted
然后查看SELinux状态,实现检测是否为Enforcing模式:
# 查看SELinux状态
sestatus
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: enforcing
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 31
如上,返回的状态是Current mode: enforcing
,表示系统运行在Enforcing模式下。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SELinux 的工作模式(Disabled、Permissive和Enforcing) - Python技术站