如何在 CentOS 7 上禁用 SElinux
SELinux 代表安全增强型 Linux,是为 Linux 系统构建的额外安全控制层。 SELinux 的原始版本是由 NSA 开发的。其他主要贡献者包括 Red Hat,它在自己的 RHEL 及其衍生 Linux 发行版(包括 CentOS 7)中默认启用了它。
尽管 SELinux 可以通过程序和系统服务的访问控制来保护我们的系统,但并不总是需要启用它。有些用户甚至可能发现它会干扰他们尝试安装的某些程序。在本教程中,我们将逐步介绍在 CentOS 7 Linux 上禁用 SELinux。
在本教程中您将学习:
如何检查 SELinux 的状态
如何将 SELinux 置于宽容模式
如何在 CentOS 7 上禁用 SELinux
如何检查 SELinux 的状态
您可以随时通过执行以下命令来检查SELinux的当前状态。
$ sestatus
在我们的 CentOS 7 系统上,上面的屏幕截图表明 SELinux 的“当前模式”正在强制执行。
快速检查状态的一种更简单的方法是使用 getenforce 命令,该命令只会输出 SELinux 的当前模式,而不会输出其他内容。
$ getenforce
Enforcing
SELinux 具有三种可能的模式,您可以在运行命令时看到它们。他们是:
执行 – SELinux 很活跃并执行其策略规则。
宽容 – SELinux 允许一切事情,但记录它通常在强制模式下拒绝的事件。
已禁用 – SELinux 不执行规则或记录任何内容。
如何在 CentOS 7 上禁用 SELinux 分步说明
根据您的需要,禁用 SELinux 可能涉及将其更改为宽容模式,或完全禁用它。
将 SELinux 设置为宽容模式将禁用 SELinux 的所有方面(日志记录消息除外)。我们不需要重新启动系统即可使此更改生效,并且可以通过执行以下命令来进行更改。
$ sudo setenforce 0
OR
# setenforce 0
您可以使用 sestatus
或 getenforce
命令再次检查 SELinux 当前模式来验证更改。
当您重新启动系统时,SELinux 将更改回强制模式。如果您希望更改是永久性的,您可以使用以下分步说明来完全禁用 SELinux 或将其保持在宽松模式。
使用 nano 或您喜欢的文本编辑器打开位于
/etc/selinux/config
中的 SELinux 配置文件。您需要使用 root 帐户或 sudo 命令来执行此操作。$ sudo nano /etc/selinux/config
根据您喜欢的设置,将 SELINUX=enforcing 行更改为“permissive”或“disabled”。然后,保存更改后退出该文件。
SELINUX=disabled
一旦您重新启动系统,SELinux 将被完全禁用。为了避免立即重新启动,请按照上面的说明执行
setenforce 0
命令,以便在等待下次重新启动时立即获得结果。$ reboot
结束语
在本教程中,我们了解了如何在 CentOS 7 Linux 系统上禁用 SELinux,方法是将当前模式设置为宽松模式,以及完全禁用 SELinux。 SELinux 是一项有用的功能,只有在事先考虑或在测试环境中才应禁用它。