Bootstrap

如何在CentOS7上禁用或关闭SELinux

621c2cb7c63e67d3aa149631ea014f8f.gif

介绍

SELinux 是内置于 Linux 内核中的强制访问控制 (MAC) 执行器。它限制了可能对系统构成威胁的个别服务的权限。

没有 SELinux 的 CentOS 系统依赖于其所有特权软件应用程序的配置。单个错误配置可能会危及整个系统。

为什么禁用 SELinux

并非所有应用程序都支持 SELinux。因此,SELinux 可以在软件包的正常使用和安装过程中终止必要的进程。在这些情况下,我们建议你关闭此服务。

在 CentOS 上禁用 SELinux 的步骤

第 1 步:检查 SELinux 状态

SELinux 服务在 CentOS 和大多数其他基于 RHEL 的系统上默认启用。

首先使用以下命令检查系统上 SELinux 的状态:

sestatus

下面的示例输出表明SELinux 已启用。状态显示服务处于强制执行 模式

36bc35eaef5952f837e951e8ebe5905c.png
SELinux 状态的输出示例

SELinux 可能会阻止应用程序的正常运行。如果出现以下情况,服务将拒绝访问:

  • 文件标签错误。

  • 不兼容的应用程序尝试访问被禁止的文件。

  • 服务在不正确的安全策略下运行。

  • 检测到入侵。

如果你发现服务未正确运行,请检查 SELinux 日志文件。日志位于/var/log/audit/audit.log中。最常见的日志消息标有AVC。如果找不到任何日志,请尝试查看/var/log/messages。如果auditd守护程序未运行,系统会将日志写入该文件。

第 2 步:禁用 SELinux

1:暂时禁用 SELinux

暂时禁用 SELinux,请在终端中输入以下命令:

sudo setenforce 0

sudo setenforce 0中,你可以使用permissive而不是 0。

此命令将 SELinux 模式从target改为permissive

e9a262644f560d7bdb64e090167e2f90.png
从目标模式转变为许可模式
2:永久禁用 SELinux

要永久禁用该服务,请使用文本编辑器(例如 vim 或 nano)并按照以下说明编辑/etc/sysconfig/selinux文件。

  • 1.打开/etc/sysconfig/selinux文件。我们将使用vim。如果你不熟悉文本编辑器,请参阅我们的指导指南,了解如何保存和退出文件 vim。

输入以下命令打开文件:

sudo vi /etc/sysconfig/selinux
  • 2.将SELINUX=enforcing指令更改为SELINUX=disabled

21e9607dd1343a0cb623137a553d481c.png
编辑 SELINUX 指令以禁用
  • 3.保存编辑的文件。

重启 CentOS 以保存更改

要使更改生效,你需要使用以下命令重新启动系统:

sudo shutdown -r now

重新启动后,检查服务状态以确认 SELinux 已禁用。使用命令:

sestatus

5d7b7d02c9458c56edf481a1f4aa4de9.png
编辑 SELINUX 指令以禁用

状态应该是disabled,如上图所示。系统不会加载任何 SELinux 策略或写入AVC日志。

转自微信公众号:开源Linux

Linux学习指南
有收获,点个在看
;