SELinux(安全性增强的Linux )是Linux内核安全性模块,它允许管理员和用户对访问控制进行更多控制。它允许根据SELinux策略规则进行访问。

SELinux策略规则规定了进程和用户如何交互以及进程和用户如何与文件交互。

如果没有专门允许访问的SELinux策略规则,例如打开文件的进程,则拒绝访问。

SELinux具有三种模式:

  • 强制:SELinux允许基于SELinux策略规则进行访问。
  • 允许:SELinux仅记录在强制模式下运行时将被拒绝的操作。
  • 已禁用:无SELinux策略已加载。

在CentOS 7中,默认情况下已启用SELinux并处于强制模式。

建议将SELinux保持为强制模式,但在某些情况下,您可能需要将其设置为许可模式或将其完全禁用。

在本教程中,我们将向您展示如何在CentOS 7系统上禁用SELinux。

先决条件

开始学习本教程之前,请确保您以具有[sudo]权限的用户身份登录

检查SELinux状态

要查看当前的SELinux状态以及系统上正在使用的SELinux策略,可以使用sestatus命令:

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已启用并将其设置为强制模式。

停用SELinux

您可以使用以下命令将SELinux模式从targeted暂时更改为permissive

sudo setenforce 0

但是,此更改仅对当前运行时会话有效。

要在您的CentOS 7系统上永久禁用SELinux,请执行以下步骤:

打开/etc/selinux/config文件并将SELINUX mod设置为disabled:  

/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=disabled
# SELINUXTYPE= can take one of these two values:
#       targeted - Targeted processes are protected,
#       mls - Multi Level Security protection.
SELINUXTYPE=targeted

保存文件并使用以下方法重新启动CentOS系统:

sudo shutdown -r now

系统启动后,用sestatus命令验证更改:

sestatus

输出应如下所示:

SELinux status:                 disabled

结论

在本教程中,您学习了如何在CentOS 7计算机上永久禁用SELinux。

您可能希望访问 CentOS SELinux 指南,并详细了解SELinux的强大功能。

如果您有任何疑问或意见,请在下面发表评论。