深入理解SELinux:概念、策略与实现
1. SELinux策略示例与标签优势
SELinux(Security-Enhanced Linux)是一种基于Linux内核的强制访问控制(MAC)系统,它通过策略来控制进程对资源的访问。下面通过两个策略示例来理解其工作方式:
- 策略一 :允许 httpd 进程绑定到TCP端口80。
- 策略二 :允许标记为 httpd_t 的进程绑定到标记为 http_port_t 的TCP端口。
第一个策略存在局限性,当Web服务器进程不使用 httpd 二进制文件(可能是重命名或使用其他Web服务器),或者想在不同端口上进行HTTP访问时,该策略难以复用。而第二个基于标签的策略则更具灵活性,只要进程标记为 httpd_t ,无论二进制文件名称是 apache2 还是 MyWebServer.py ,策略都适用。对于端口定义也是如此,可以将端口8080标记为 http_port_t ,从而允许Web服务器绑定到该端口。
2. 剖析SELinux上下文
SELinux上下文是一个包含至少三个,有时四个值的组合,用于定义进程或资源的安全属性。以Apache Web服务器为例,通过以下命令查看其上下文:
$ ps -eZ
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



