介绍
在本次实验中,你将学习如何检查 Linux 系统上 SELinux 的状态和配置。SELinux 是一种重要的安全机制,它提供了强制访问控制(Mandatory Access Control)。
你将使用 sestatus 命令来获取当前 SELinux 状态的摘要信息,检查 SELinux 配置文件 /etc/selinux/config 以了解其默认设置,并使用 getenforce 命令快速检查当前的运行模式。通过完成这些步骤,你将对如何确定系统上 SELinux 是否启用以及如何配置有一个基本的了解。
使用 sestatus 检查 SELinux 状态
在这一步中,你将学习如何检查系统上 SELinux 的状态。SELinux(Security-Enhanced Linux,安全增强型 Linux)是一种为进程和资源提供强制访问控制(Mandatory Access Control,MAC)的安全机制。它在传统的自主访问控制(Discretionary Access Control,DAC)之上增加了一层额外的安全防护。
要检查 SELinux 的当前状态,我们使用 sestatus 命令。该命令会提供 SELinux 配置及其当前状态的摘要信息。
如果终端尚未打开,请打开它。你可以通过点击桌面左侧的 Xfce Terminal 图标来打开终端。
现在,在终端中输入以下命令并按下回车键:
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 version: ...
Policy load time: ...
让我们来分析一下输出中的重要部分:
SELinux status:指示系统上的 SELinux 是启用还是禁用。Current mode:显示 SELinux 的当前运行模式。常见的模式有enforcing(强制模式)、permissive(宽容模式)和disabled(禁用模式)。Mode from config file:显示在 SELinux 配置文件(/etc/selinux/config)中设置的模式。
在这个输出中,SELinux status: enabled 表示 SELinux 处于活动状态,而 Current mode: enforcing 表示 SELinux 正在积极实施其安全策略。
了解 SELinux 的状态是管理其行为的第一步。
点击 Continue 进入下一步。
使用 cat /etc/selinux/config 验证 SELinux 配置
在上一步中,你使用 sestatus 检查了 SELinux 的当前状态。现在,让我们来查看决定 SELinux 默认行为的配置文件。
SELinux 的主要配置文件位于 /etc/selinux/config。我们可以使用 cat 命令查看该文件的内容。cat 命令用于显示文件的内容。
在终端中输入以下命令并按下回车键:
cat /etc/selinux/config
你应该会看到类似以下的输出:
## This file controls the state of SELinux on the system.
## SELINUX= can take one of these three values:
## enforcing - SELinux security policy is enforced.
## permissive - SELinux prints warnings instead of enforcing.
## disabled - No SELinux policy is loaded.
SELINUX=enforcing
## SELINUXTYPE= can take one of these three values:
## targeted - Targeted processes are protected,
## for more information see selinux-policy-targeted(8)
## strict - Full SELinux protection, see selinux-policy(8)
## mls - Multi-Level Security protection.
SELINUXTYPE=targeted
你可以在这个文件中配置 SELinux 的默认模式(SELINUX=)和策略类型(SELINUXTYPE=)。
SELINUX=enforcing:这一行表明系统默认配置为以enforcing(强制)模式启动。SELINUXTYPE=targeted:这一行指定使用targeted(目标)策略。目标策略是最常用的策略,用于保护特定的系统进程。
此文件中的设置通常在系统启动时应用。虽然你可以临时更改当前模式(我们将在下一步中看到),但对 /etc/selinux/config 所做的更改需要重启系统才能完全生效。
了解配置文件有助于你了解系统预期的 SELinux 状态。
点击 Continue 继续。
使用 getenforce 检查 SELinux 模式
在前面的步骤中,你使用 sestatus 详细了解了 SELinux 的状态,并通过 cat /etc/selinux/config 查看了默认配置。现在,让我们使用一个更简单的命令 getenforce 来快速检查 SELinux 的 当前 模式。
getenforce 命令专门用于输出 SELinux 的当前运行模式。这对于快速检查非常有用,无需查看 sestatus 的完整输出。
在终端中输入以下命令并按下回车键:
getenforce
你应该会看到类似以下的输出:
Enforcing
输出将是以下之一:
Enforcing:SELinux 处于活动状态并正在实施其策略。任何违反策略的操作都将被阻止。Permissive:SELinux 处于活动状态,但不实施策略。它会记录在强制模式下 会 被阻止的操作的警告信息,但允许这些操作继续执行。此模式对于测试和故障排除很有用。Disabled:SELinux 未处于活动状态,且未加载任何策略。
在这种情况下,输出 Enforcing 确认 SELinux 当前正在以强制模式运行,这与我们使用 sestatus 命令看到的结果一致。
getenforce 命令是快速检查 SELinux 状态的便捷工具。
点击 Continue 完成此实验。
总结
在本实验中,你学习了如何检查 Linux 系统上 SELinux 的状态。你使用 sestatus 命令获取了 SELinux 配置的概要信息,包括它是否已启用、当前的运行模式(强制、宽容或禁用)以及配置文件中设置的模式。
你还学习了如何使用 cat 命令检查 /etc/selinux/config 文件来验证 SELinux 配置,该文件显示了系统启动时将应用的默认 SELinux 模式。最后,你使用 getenforce 命令快速检查了 SELinux 的当前模式。这些步骤为你了解 SELinux 的当前状态和配置提供了重要方法。



