SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux历史上最杰出的新安全子系统。
用通俗易懂的话来描述,就是:在没有SELinux的系统中,文件的权限是由用户来决定的,root用户是拥有所有权限的。在启用SELinux的系统,不仅需要该用户有权限,还要判断每一类进程是否拥有对该文件(资源)的访问权限。
总之东西好是好,就是贵...不对,就是麻烦。
在接触Linux初期,完全没有必要把大把精力放在这上面。当然相同道理的还有防火墙。
并不是说安全不重要,而是安全就意味着麻烦,和更多的限制,在自身能力不足的情况下,增加了出错的可能和排错的难度。个人以为应当在熟悉命令操作后,再用多种安全方式来武装自己。所以我是不建议新手开启SeLinux和防火墙的。
SELinux在CentOS 7中是默认开启的,我们需要手动关闭它。
配置文件:
SELinux的配置文件是/etc/selinux/config
,建议使用cp命令对该文件进行备份。
小贴士:要养成良好的备份文件的习惯,每次修改配置文件,尤其是系统关键文件时,一定记得备份。
[root@master ~]# cp /etc/selinux/config /etc/selinux/config.bak.ks.20181103
# 备份SELinux配置文件
# .bak是备份的意思
# .ks是标记备份人
# .20181103是标记备份时间
关闭SELinux开机自启动:
方法一:
使用vi或vim编辑器,修改配置文件,将SELINUX=enforcing
改为SELINUX=disabled
。
方法二:
使用sed命令直接修改文件
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
在任意目录输入如下命令即可,原理其实和方法一直接用编辑器修改是一样的。至于sed命令后面会提到,这里暂时不提。
结束SELinux进程:
使用getenforce
命令查看SELinux的运行状态
- Enforcing 表示SELinux正在运行
- Permissive 表示忽略(仅提示)
- Disable 表示SELinux已关闭
使用setenforce
命令查看修改方法
[root@master ~]# setenforce
usage: setenforce [ Enforcing | Permissive | 1 | 0 ]
关闭SELinux
[root@master ~]# setenforce 0
再次查看SELinux的运行状态
[root@master ~]# getenforce
Permissive
SELinux自启动关闭后,重启计算机再使用getenforce
查看则返回Disabled。
That's it...