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 政策即可。

设定完这些后,还需要设定安全性文本
安全性文本类似与我们的协议。
在这里插入图片描述

posted @ 2021-07-27 08:58  Zeker62  阅读(227)  评论(0编辑  收藏  举报