-
我们知道SELinux的默认策略为:target,那么本片文章就是介绍在target策略下的相关SELinux规则
一、getsebool命令
1.功能
- 查看系统上面进程与服务的SELinux规则
2.命令格式
- getsebool [-b] [规则的名称]
相关参数与选项
- -b:列出目前系统上面所有SELinux规则的布尔值状态
- 规则的名称:
3.注意事项
- 结果后面显示off:代表SELinux所管控,不允许放行,读取文件有SELinux的限制
- 结果后面显示on:代表不归SELinux所管控,允许放行,读取文件没有SELinux的限制
4.演示案例
- 查看系统上面所有的SELinux规则的布尔值,且最后会显示off还是on
- cron_can_relabel 等 :这些与我们的cron服务有关
- httpd_enable_homedirs等:这些与网页有关
二、seinfo命令
1.功能
- 查看在某种SELinux策略下面系统的详细SELinux信息
2.注意事项
- 这个命令可能默认没有安装。(安装:yum install setools-console.x86_64)
- 如果想要查询SELinux策略下所有的身份或角色,可以使用-u/-r来查看
3.命令格式
- seinfo [选项]
相关选项
- -A:列出SELinux的状态、规则布尔值、身份识别、角色、类型等所有信息
- -u:列出SELinux的所有身份识别(user)种类
- -r:列出SELinux的所有角色(role)种类
- -t:列出SELinux的所有类型(type)种类
- -b:列出所有规则种类的布尔值
4.演示案例
- 可以看到在targeted的策略下,此策略下的安全上下文类型有4778个。各种SELinux的规则共制定了316条
三、sesearch命令
1.功能
- 查看某种类型的进程所能读取的SELinux类型文件有哪些
2.命令格式
- sesearch [-A] [-s 主体类型] [-t 目标类型] [-b 布尔值]
相关参数与选项
- -A:列出的数据中,含有允许【读取或放行】的相关信息
- -t:后面还要接类型,代表该种类型能被哪些进程所读取。例如:-t http_t
- -b:后面还要接SELinux的规则,例如:-b httpd_enable_ftp_server
3.演示案例
- 案例一:查看crond_t能够读取的文件SELinux类型
- 显示的格式是:allow(允许)crond_t读取cron_spool_t、user_cron_spool_t这些SELinux类型的文件
- 且后面还会显示file、dir。代表读取的类型是文件还是目录
- 案例二:查看crond_t能否读取admin_home_t的SELinux文件
- 可以看到crond_t只能识别SELinux类型为admin_home_t的目录(dir),但是不能识别admin_home_t的文件(file)
四、setsebool命令
1.功能
- 设置SELinux的规则
2.命令格式
- setsebool [-P] 规则名称 [0/1]
相关参数与选项
- -P:直接将设置值写入配置文件,该设置信息未来会生效
- 0/1:0代表off,1代表on
3.演示案例
- 案例:我们将SELinux规则为httpd_enable_homedirs的设置为on,并且写入配置文件
- 第一步:先查看一下
- 第二步:将httpd_enable_homedirs规则改为on(这不可能要等待一段时间)
- 第三步:我们只是实验而已,把上面的再改回来