使用getenforce命令可以在Linux下查看是否开启了SELinux。
下面是Linux getenforce命令的使用方法。
[root@DB-Server ~]# getenforce
Enforcing
如何开启、关闭SELinux呢?最简单的方式使用setenforce,这样不用重启服务器,但是该命令只能将SeLinux在enforcing、permissive这两种模式之间切换,服务器重启后,又会恢复到/etc/selinux/config下,也就是说setenforce的修改是不能持久的。
[root@DB-Server ~]# setenforce 0
[root@DB-Server ~]# getenforce
Permissive
[root@DB-Server ~]# setenforce 1
[root@DB-Server ~]# getenforce;
Enforcing
[root@DB-Server ~]#
另外就是修改/etc/selinux/config,如下所示,可以配置SELinux为enforcing、permissive、disabled三个值,修改后必须重启系统才能生效。
[root@DB-Server ~]# more /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 - SELinux is fully disabled.
SELINUX=enforcing
# SELINUXTYPE= type of policy in use. Possible values are:
# targeted - Only targeted network daemons are protected.
# strict - Full SELinux protection.
SELINUXTYPE=targeted
You have new mail in /var/spool/mail/root
[root@DB-Server ~]#
如果由 enforcing 或 permissive 改成 disabled,或由 disabled 改成其他两个,那也必须要重新开机。这是因为 SELinux 是整合到核心里面去的,你只可以在SELinux 运作下切换成为强制 (enforcing) 或宽容 (permissive) 模式,不能够直接关闭 SELinux 的!同时,由 SELinux 关闭 (disable) 的状态到开启的状态也需要重新开机啦。