Linux云计算架构-SELinux安全子系统
文章目录
Linux云计算架构-SELinux安全子系统
1. selinux简介
Linux系统的双保险=SElinux域+SELinux安全上下文
- SELinux域:对服务程序的功能进行限制,确保服务程序做不了出格的事。【限制使用的功能】
- SELinux安全上下文:确保文件资源只能被其所属服务程序进行访问。【限制功能的合理使用】
在使用SELinux安全子系统的时候,可以从限制资源使用的角度去理解问题,首先看有没有这个功能,其次是这个功能有没有正确的被使用。
2. SELinux服务的配置模式
- selinux的配置模式
enforcing【强制启动安全策略模式,拦截服务的不合法请求】
permissive【若服务器越权访问,发出警告但不强制拦截】
disabled【对越权行为,不警告也不拦截】 - 配置文件及命令
cat /etc/selinux/config【查看selinux主配置文件的selinux的配置模式】【默认为:enforcing】【重启依然生效】
getenforce【获取当前的SELinux服务的运行模式】
setenforce 0【临时修改SELinux服务的运行模式,0为禁用,1为启用】【禁用enforcing,即相当于启用permissive】【0为启用permissive,1为启用enforcing】【临时生效,重启失效】



一般SELinux安全子系统默认的配置模式是Enforcing
3. SElinux域(开启或禁用某个功能)
在这里先介绍布尔值的概念。布尔值是SELinux中功能的开关设置。可通过命令getsebool -a 找出系统中已设置的布尔值。
- 查询SELinux中所有与HTTP协议相关的安全策略(什么功能是允许的,什么功能是禁止的)【
off为禁止,on为允许】【值为bool类型】
getsebool -a | grep httpd【获取SELinux域的有关httpd服务程序的功能开启情况】 - 启用或禁用SELinux域中关于某项服务的功能
setsebool -P httpd_enable_homedirs=on【修改参数httpd_enable_homedirs,-P为修改后的SELinux策略规则永久生效,且立即生效】【-P参数一定要加】
4. SELinux安全上下文(添加上下文,使得一般文件和目录文件支持某种服务)
-
查看文件或者目录的SELinux安全上下文
-Z:查看文件的SElinux安全上下文
-d:查看的文件是目录文件



-
管理文件或者目录的SELinux安全上下文

①添加SELinux安全上下文(目录和目录下的所有文件都要添加)
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot【目录】
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/*【目录下所有文件】
②让SELinux安全上下文立即生效
restorecon -Rv /home/wwwroot/【-Rv参数对指定的目录进行递归操作,以及显示SELinux安全上下文的修改过程】
③一步添加selinux安全上下文并立即生效
chcon -R -t http_sys_content_t /home/wwwroot -
查看某个服务支持的端口的SELinux安全上下文
semanage port -l | grep http

-
添加某个服务的端口号的SELinux安全上下文
semanage port -a -t http_port_t -p tcp 8111

理解了以上内容,就可以知道是否启动的SELinux服务,并根据实际情况修改SELinux域和SELinux安全上下文。