阿里云服务器安全增强型Linux(SELinux)是一个Linux内核功能,SELinux提供支持访问控制的安全政策保护机制,Linux百科以阿里云Linux服务器为例开启或关闭SELinux教程:
阿里云Linux服务器开启或关闭SELinux
Linux服务器开启SELinux可以提高系统安全,但是也有可能导致破坏操作系统的文件,造成系统无法启动的问题。如果你的应用需要十分严格的安全策略,需要在Linux操作系统中开启SELinux,可以参考Linux百科本文教程,Linux百科以阿里云Linux服务器CentOS 7.2 64位操作系统为例:
开启SELinux
1. root远程连接云服务器ECS,执行命令:ssh root@服务器IP
2. 编辑SELinux的config文件,在云服务器ECS是执行命令:vi /etc/selinux/config
3. 找到SELINUX=disabled
,按i
进入编辑模式,通过修改该参数开启SELinux
SELINUX=disabled
如上图所示,修改SELINUX=disabled
参数,有两种修改方式:
-
SELINUX=enforcing
:强制模式,表示所有违反安全策略的行为都将被禁止; -
SELINUX=permissive
:宽容模式,表示所有违反安全策略的行为不被禁止,但是会在日志中作记录。
根据实际情况选择修改SELINUX参数。
4. 修改完后,按键盘左上角Esc键,退出vi编辑模式,执行命令::wq
,保存并退出文件
注意:修改config文件后,需要重启云服务器,但是直接重启ECS会出现系统无法启动的错误。所以,在重启之前需要在根目录下新建autorelabel文件。操作方法如下:
5. 在根目录下新建隐藏文件autorelabel,命令:touch /.autorelabel
,云服务器ECS实例重启后,SELinux会自动重新标记所有系统文件。
6. 重启云服务器ECS,命令:shutdown -r now
验证SELinux状态
1. root远程连接云服务器,命令:ssh root@服务器ip
2. 验证SELinux状态,执行命令:getenforce
返回状态是enforcing或permissive,表示SELinux已经开启。
运行命令:sestatus
,可以查看更多SELinux信息,如下图:
sestatus
关闭SELinux
1. root连接服务器,命令:ssh root@服务器IP
2. 验证SELinux状态,命令:getenforce
如果返回结果为enforcing,则表示SELinux已开启
3. 选择临时关闭
执行命令setenforce 0
,可临时关闭SELinux。
4. 永久关闭SELinux,永久关闭SELinux的方法,和开启SELinux方法相同
编辑SELinux的config文件,命令:vi /etc/selinux/config
,找到SELINUX=enforcing,按i进入编辑模式,将参数修改为SELINUX=disabled即可。
修改后,按:wq
保存并退出文件。然后重启云服务器ECS实例即可。重启后,可以运行getenforce
命令查看验证SELinux状态,如果显示disabled则代表SELinux已经关闭。