10.3 SELinux安全子系统

SELinux是美国国家安全局在Linux开源社区的帮助下开发的一个强制访问控制的安全子系统。目的是为了让各个服务进程都受到约束,使其仅获取到本应获取的资源。

SELinux域和SELinux安全上下文成为Linux系统中的双保险。

circle-info

一般权限和防火墙像是“门窗”,而SELinux则像是在门窗外面的防护栏,让系统内部更加安全

SELinux服务有三种配置模式,具体如下:

  • enforcing:强制启用安全策略模式,将拦截服务的不合法请求

  • permissive:遇到服务越权访问时,只发出警告而不强制拦截

  • disabled:对于越权行为不警告也不拦截

SELinux的配置主文件为/etc/selinux/config

获取当前SELinux服务的运行模式:

# getenforce

临时修改SELinux运行模式(0为禁用,1为启用)

# setenforce 0
# getenforce 
Permissive

访问网页

# curl 127.0.0.1

把SELinux服务恢复到强制启用安全策略模式

分别查看原始网站数据的保存目录与当前网站数据的保存目录是否拥有不同的SELinux安全上下文值

10.3.1 semanage命令

semanage命令用于管理SELinux的策略,格式为“semanage [选项][文件]”

SELinux服务极大地提升了Linux系统的安全性,将用户权限姥姥的锁在笼子里。

经常用到的参数及功能:

  • -l 用于查询

  • -a 用于添加

  • -m 用于修改

  • -d 用于删除

向新的网站数据目录中新添加一条SELinux安全上下文,让这个目录以及里面的所有文件都能够被httpd服务程序访问到

使用restorecona命令将设置好的SELinux安全上下文立即生效,-Rv参数对指定目录进行递归操作

测试访问网页

最后更新于