用户手册

1. Loongnix-Server SELinux 介绍

1.1. SELinux 基本介绍

安全增强型 Linux(Security-Enhanced Linux)简称 SELinux,它是一个 Linux 内核模块, 也是 Linux 的一个安全子系统。SELinux 主要由美国国家安全局开发。2.6 及以上版本的 Linux 内核都已经集成了 SELinux 模块。

SELinux 的结构及配置非常复杂,所以很多 Linux 系统管理员嫌麻烦都把 SELinux 关闭了。 然而对于服务器操作系统,安全无疑是衡量一个操作系统非常重要的指标,因此 Loongnix- Server8.3 系统也应该完美支持 SELinux 特性。

简而言之,SELinux 主要作用就是最大限度地减小系统中服务进程可访问的资源(最小权限 原则)。

设想一下,如果一个以 root 身份运行的网络服务存在权限漏洞,黑客就可以利用这个漏洞 ,以 root 的身份在服务器上为所欲为了,比方说:rm -rf /* 。 是不是很可怕? 那么 SELinux 就是来解决这个问题的。

1.2. SELinux 的三种工作模式

SELinux 有三种工作模式,分别是:

  1. enforcing:强制模式。违反 SELinux 规则的行为将被阻止并记录到日志中。
  2. permissive:宽容模式。违反 SELinux 规则的行为只会记录到日志中。一般为调试用。
  3. disabled:关闭 SELinux。

SELinux 工作模式可以在 /etc/selinux/config 中设定。

如果想从 disabled 切换到 enforcing 或者 permissive 的话,需要重启系统。反之亦然。 enforcing 和 permissive 模式可以通过 setenforce 1|0 命令快速切换。

需要注意的是,如果系统已经在关闭 SELinux 的状态下运行了一段时间,在打开 SELinux 之后的第一次重启速度可能会比较慢。因为系统必须为磁盘中的文件创建安全上下文(很有 可能让人以为是死机了……)。

SELinux 日志的记录需要借助 auditd.service 这个服务,请不要禁用它,这个后面会介绍到。

1.3. SELinux日志管理

SELinux 阻止的进程的日志记录存放在/var/log/audit/audit.log文件中,但是该文件中的 内容用户阅读体验很差, 因此系统为我们提供了sealert工具,帮助我们整理该日志文件, sealert工具处理日志文件的时候需要花费一点时间。

另外SELinux的日志功能需要auditd.service服务的开启。

1.4. Loongnix-Server8.3 是如何使能 SElinux 功能的?

前面介绍到,SELinux 会将阻止的进程相关的日志信息记录在相应的文件中,因此我们可以 利用该日志生成相应的初始配置策略文件。Loongnix-Server8.3 就是这么干的,先将SELinux 的运行模式切换为 permissive, 然后根据生成的日志文件过滤生成策略文件,再将该策略 安装,最后将 SELinux 工作模式切换为 enforcing 即可。 方便期间,Loongnix-Server8.3 提供了默认的系统策略文件,用户可以通过安装 loongnix- policy 软件包完成策略的安装。用户只需修改工作模式就可以了。

©龙芯开源社区 all right reserved,powered by Gitbook文档更新时间: 2021-09-30 15:48:58

results matching ""

    No results matching ""

    results matching ""

      No results matching ""