基本selinux安全性概念
selinux是一组可确定哪个进程能访问那些文件、目录、端口等的安全规则。每个文件、进程、目录和端口都具有专门的安全标签,称为selinux上下文。默认情况下,该策略不允许任何交互,因此明确的规则授予访问权限。如果没有允许规则,则不允许访问。
selinux具有若干个上下文,但我们最关注的是第三个上下文:类型上下文。
selinux模式
为了进行故障排除,我们可以临时禁用selinux,使用selinux模式。
强制模式中,selinux不仅记录而且提供保护。
许可模式中,selinux允许所有交互,而且记录所有被拒绝的交互。
禁用模式中,selinux将关闭。
显示和修改selinux模式
[haha@MIO-02 test]$ vi /etc/selinux/semanage.conf ^C
[haha@MIO-02 test]$ getenforce^C
[haha@MIO-02 test]$ setenforce^C
显示和修改selinux文件上下文
许多助理文件的命令都具有一个用于显示或设置selinux上下文的选项(通常是-Z),例如:
[root@MIO-02 testmount]# ps auxZ
LABEL USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
system_u:system_r:init_t:s0 root 1 0.0 0.1 19228 1460 ? Ss Jun01 0:00 /sbin/init
system_u:system_r:kernel_t:s0 root 2 0.0 0.0 0 0 ? S Jun01 0:00 [kthreadd]
system_u:system_r:kernel_t:s0 root 3 0.0 0.0 0 0 ? S Jun01 0:00 [migration/0]
[root@MIO-02 testmount]# ls -lZ
-rw-rwxr--+ root root unconfined_u:object_r:default_t:s0 a.dat
drwxrwxr-x+ root root unconfined_u:object_r:default_t:s0 test
如何确定文件的初始selinux上下文?通过是父目录的上下文制定给新创建的文件。该策略中有一些特殊规则,称为类型转换规则,可以从默认更改类型上下文。
semanage fcontext可用于显示或修改restorecon用来设置默认文件上下文规则,restorecon是policycoreutil的一部分,semanage是policycoreutil-python中的一部分。
policycoreutils
[root@MIO-02 testmount]# semanage fcontext -a -f "" -t httpd_sys_content_t '/testmount(/.*)?'
[root@MIO-02 testmount]# restorecon -RFvv /testmount/
restorecon reset /testmount context unconfined_u:object_r:default_t:s0->system_u:object_r:httpd_sys_content_t:s0
restorecon reset /testmount/a.dat context unconfined_u:object_r:default_t:s0->system_u:object_r:httpd_sys_content_t:s0
restorecon reset /testmount/test context unconfined_u:object_r:default_t:s0->system_u:object_r:httpd_sys_content_t:s0
restorecon reset /testmount/test/1 context unconfined_u:object_r:default_t:s0->system_u:object_r:httpd_sys_content_t:s0
restorecon reset /testmount/new context unconfined_u:object_r:default_t:s0->system_u:object_r:httpd_sys_content_t:s0
[root@MIO-02 testmount]# touch 1.html
[root@MIO-02 testmount]# ll -Z
-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 1.html
-rw-rwxr--+ root root system_u:object_r:httpd_sys_content_t:s0 a.dat
-rw-r--r--. root root system_u:object_r:httpd_sys_content_t:s0 new
drwxrwxr-x+ root root system_u:object_r:httpd_sys_content_t:s0 test
管理selinux布尔值
selinux布尔值是更改selinux策略行为的开关。selinux布尔值是可以启用或禁用的规则。
显示布尔状态和解释
[root@MIO-02 testmount]# semanage boolean -l
getsebool
setsebool -p
监控selinux冲突
必须安装setroubleshoot-server软件包,才能将selinux消息发送至message
上一篇:控制对文件的访问 下一篇:快递查询API