下载帮

您现在的位置是:首页 > 服务器 > Linux

Linux

在CentOS7上禁用或关闭selinux的方法

2022-05-24 16:10Linux

selinux是一个内置于Linux内核中的强制访问控制执行器。其作用是对某些服务的权限进行限制,从而在一定程度上保证系统的运行安全。假如没有selinux,系统就只能依赖其特权应用程序的配置。当配置不正确的时候,就会导致系统出现问题。

此时就产生了一个问题。既然selinux如此重要,我们为什幺要禁用它呢?

其根本原因在于,并非所有的应用程序都支持selinux,因此为了能够正常安装和使用这些特殊的应用程序,我们不得不将selinux进行临时关闭或永久关闭(生产环境不建议这幺做,风险太大)。

在介绍如何关闭selinux之前,先简单说一下selinux的状态模式。

selinux的状态模式

查看selinux状态模式的命令有两个,分别是sestatusgetenforce

  • sestatus

对于sestatus命令来说,可以查看selinux的所有状态。执行后如下所示:

  • getenforce

对于getenforce命令来说,则只能查看状态模式,执行后如下所示:

对于selinux的状态模式而言,共有三种状态,分别是:enforcingpermissive和disabled。其中enforcing是默认状态,表示强制启用;permissive表示大部分规则放行;disabled则表示不设置任何规则。

selinux的关闭

  • 临时关闭

对于临时关闭selinux来说,使用到的命令如下所示:

sudo setenforce 0

需要说明一点的是,该命令所能使用的可选值只有0和1。其中,0表示permissive,1表示enforcing。对于disabled而言,无法通过这种方式进行修改。

执行完毕后使用sestatus命令查看selinux的状态如下所示:

从上面的结果可知,此时的selinux已经变成了permissive模式。当然,这种方式只是临时关闭了selinux,当服务器进行重启后就会失效。

我们执行reroot命令来重启服务器,当服务器重启之后再次使用sestatus查看selinux的状态,如下所示:

  • 永久关闭

如果需要永久关闭selinux,就需要通过修改对应的设置文件来实现。该配置文件的位置是:/etc/selinux/config。我们执行如下的命令来对该配置文件进行编辑:

vi /etc/selinux/config

执行后,找到SELINUX参数,将其值修改为disabled或permissive,我这里修改为了disabled,如下所示:

接着重启服务器之后再次使用sestatus查看selinux的状态,查看结果如下所示:

从上面结果可知,selinux已经被成功关闭。

文章评论