semanage
默认目录的安全上下文查询与修改
补充说明
semanage命令 是用来查询与修改SELinux默认目录的安全上下文。SELinux的策略与规则管理相关命令:seinfo命令、sesearch命令、getsebool命令、setsebool命令、semanage命令。
语法
1semanage {login|user|port|interface|fcontext|translation} -l
2semanage fcontext -{a|d|m} [-frst] file_spec
选项
1-l:查询。
2fcontext:主要用在安全上下文方面。
3-a:增加,你可以增加一些目录的默认安全上下文类型设置。
4-m:修改。
5-d:删除。
实例
查询一下/var/www/html
的默认安全性本文的设置:
1semanage fcontext -l
2SELinux fcontext type Context
3....(前面省略)....
4/var/www(/.*)? all files system_u:object_r:httpd_sys_content_t:s0
5....(後面省略)....
如上面例子所示,我们可以查询的到每个目录的安全性本文!而目录的设定可以使用正则表达式去指定一个范围。那么如果我们想要增加某些自定义目录的安全性本文呢?举例来说,我想要色设置/srv/samba
成为 public_content_t
的类型时,应该如何设置呢?
用semanage命令设置/srv/samba
目录的默认安全性本文为public_content_t
:
1mkdir /srv/samba
2ll -Zd /srv/samba
3drwxr-xr-x root root root:object_r:var_t /srv/samba
如上所示,默认的情况应该是var_t
这个咚咚的!
1semanage fcontext -l | grep '/srv'
2/srv/.* all files system_u:object_r:var_t:s0
3/srv/([^/]*/)?ftp(/.*)? all files system_u:object_r:public_content_t:s0
4/srv/([^/]*/)?www(/.*)? all files system_u:object_r:httpd_sys_content_t:s0
5/srv/([^/]*/)?rsync(/.*)? all files system_u:object_r:public_content_t:s0
6/srv/gallery2(/.*)? all files system_u:object_r:httpd_sys_content_t:s0
7/srv directory system_u:object_r:var_t:s0 //看这里!
上面则是默认的/srv
底下的安全性本文资料,不过,并没有指定到/srv/samba
。
1semanage fcontext -a -t public_content_t "/srv/samba(/.*)?"
2semanage fcontext -l | grep '/srv/samba'
3/srv/samba(/.*)? all files system_u:object_r:public_content_t:s0
1cat /etc/selinux/targeted/contexts/files/file_contexts.local
2# This file is auto-generated by libsemanage
3# Please use the semanage command to make changes
4/srv/samba(/.*)? system_u:object_r:public_content_t:s0 #写入这个档案
1restorecon -Rv /srv/samba* #尝试恢复默认值
2ll -Zd /srv/samba
3drwxr-xr-x root root system_u:object_r:public_content_t /srv/samba/ #有默认值,以后用restorecon命令来修改比较简单!
semanage命令的功能很多,这里主要用到的仅有fcontext这个选项的用法而已。如上所示,你可以使用semanage来查询所有的目录默认值,也能够使用它来增加默认值的设置!
来源:https://github.com/jaywcjlove/linux-command
最后修改于: Wednesday, January 31, 2024
版权申明:
- 未标注来源的内容全部为原创,未经授权请勿转载(因转载后排版往往错乱、内容不可控、无法持续更新等);
- 非营利为目的,演绎本博客任何内容,请以'原文出处'或者'参考链接'等方式给出本站相关网页地址(方便读者)。