SELinux(Security-Enhanced Linux)是一种针对Linux系统的强制访问控制机制。在系统中使用SELinux可以更加细致地控制进程对文件、网络等资源的访问,从而提高系统的安全性。在SELinux中,有三种工作模式:enforcing(执行模式)、permissive(宽容模式)、disabled(禁用模式)。
- getenforce 命令:
getenforce 命令用于查看当前系统的 SELinux 工作模式。在终端输入以下命令:
getenforce
输出结果为:enforcing/permissive/disabled,代表当前系统的 SELinux 工作模式。
- setenforce 命令:
setenforce 命令用于设置当前 SELinux 的工作模式。在终端输入以下命令:
setenforce 0
设置 SELinux 为 permissive 模式,输出结果不会有变化。其它取值如下:
setenforce 1
设置 SELinux 为 enforcing 模式,输出结果会有变化。
- sestatus 命令:
sestatus 命令同时显示 SELinux 各种详细的信息,包括上面的两个命令所显示的 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
其中:
- SELinux status:SELinux 是否启用的状态。
- Loaded policy name:当前载入的策略名字,最常见到的是 targeted。
- Current mode:当前系统的 SELinux 模式,enforcing、permissive 或者 disabled。
- Mode from config file:SELinux 默认设置的工作模式。
- Policy MLS status:多级部分(Multi-Level Security)状态。
- Policy deny_unknown status:难以识别的数据情况下如何处理的状态。
实例:
假设某系统当前工作模式是 enforcing,现需要将其调整为 permissive。
首先通过 getenforce 命令查看当前系统的工作模式:
getenforce
输出结果为 enforcing。
然后,使用 setenforce 命令将当前系统的 SELinux 模式设置为 permissive:
setenforce 0
最后可以使用 sestatus 命令查看设置结果:
sestatus
输出结果中 Current mode 显示为 permissive,代表成功将系统的SELinux工作模式调整为 permissive 模式。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SELinux工作模式设置(getenforce、setenforce和sestatus命令) - Python技术站