SELinux的基本概述
什么是SELinux?
英文名: Security Enhanced Linux 安全强化Linux。
这是一种Linux机制,用于保护Linux的进程、档案安全
SELinux 是在进行程序、档案等细部权限设定依据的一个核心模块! 由于启动网络服务的也是程序,因此刚好也能够控制网络服务能否存取系统资源的一道关卡,也就是说,在搭建服务器的时候,必须考虑到SELinux的存在
传统的档案权限与账号关系:自主式访问控制, DAC
DAC就是我们要么使用root权限进行访问、要门使用普通权限进行访问。
带来的问题就是:如果使用root权限访问的人漫不经心,导致档案权限危险,就会发生安全事故
例如,如果不小心将某个目录的权限设定为 777 ,由于对任何人的权限会变成 rwx ,因此该目录就会被任何人所任意访问
以政策规则订定特定程序读取特定档案:委任式访问控制, MAC
为了避免 DAC 容易发生的问题,因此 SELinux 导入了委任式访问控制 (Mandatory Access Control, MAC) 的方法
- MAC可以针对特定的程序与特定的档案资源来进行权限的控管!
- 即使是 root ,那么在使用不同的程序时,你所能取得的权限并不一定是 root(最高权限) , 而得要看当时该程序的设定而定。
- 如此一来,我们针对控制的
'主体'变成了'程序'
而不是用户
SELinux 是通过 MAC 的方式来控管程序,他控制的主体是程序, 而目标则是该程序能否读取的’档案资源’
- 主体 (Subject):
SELinux 主要想要管理的就是程序,因此你可以将’主体’跟本章谈到的 process 划上等号; - 目标 (Object):
主体程序能否存取的’目标资源’一般就是档案系统。 因此这个目标项目可以等档案系统划上等号; - 政策(Policy):
由于程序与档案数量庞大,因此SELinux会依据某些服务来制订基本的存取安全性政策。 这些政策内还会有详细的规则 (rule) 来指定不同的服务开放某些资源的存取与否。 在当前 CentOS 7.x 里面仅有提供三个主要的政策,分别是:- targeted:针对网络服务限制较多,针对本机限制较少,是预设的政策;
- minimum:由 target 修订而来,仅针对选择的程序来保护!
- mls:完整的SELinux限制,限制方面较为严格。
建议使用预设的 targeted 政策即可。
设定完这些后,还需要设定安全性文本
安全性文本类似与我们的协议。
本文来自博客园,作者:{Zeker62},转载请注明原文链接:https://www.cnblogs.com/Zeker62/p/15167825.html