7.10. 使用 SELinux 策略
SELinux 是安全策略的集合,它为系统上的应用程序、进程和文件定义访问控制。安全策略是一组规则,告诉 SELinux 可以或无法访问哪些规则来防止未经授权的访问和篡改。
SELinux 对服务器上的文件、目录、端口、进程、用户和其他对象进行分类。SELinux 将每个对象放在适当的安全上下文中,以定义对象如何通过角色、用户和安全级别在服务器的行为中。SELinux 将对象的这些角色分组到域中,SELinux 规则定义如何允许一个域中的对象与另一个域中的对象交互。
目录服务器有以下域:
-
Directory 服务器的
dirsrv_t
-
SNMP 的
dirsrv_snmp_t
-
LDAP 端口的 LDAP
_port_t
这些域为 Directory 服务器的所有进程、文件、目录、端口、套接字和用户提供安全上下文:
- SELinux 为每个实例标记具有特定安全上下文的文件和目录。目录服务器使用的大多数主目录都有所有本地实例的子目录,无论有多少,SELinux 都会轻松地将单个策略应用到新实例。
- 每个实例的 SELinux 标签具有特定安全上下文的端口。
- SELinux 限制相应域中的所有目录服务器进程。
- 每个域具有特定的规则,它们定义域授权了哪些操作。
- 如果 SELinux 策略没有指定,SELinux 会拒绝对实例的任何访问。
SELinux 有三个不同的执行级别:
- disabled
- 没有 SELinux
- permissive
- SELinux 处理规则被处理,但不会强制实施它们。
- enforcing
- SELinux 严格强制执行所有规则。
Red Hat Directory Server 定义了 SELinux 策略,允许它在严格的 SELinux enforcing 模式下以正常方式运行。目录服务器可以在不同的模式下运行,一个用于正常操作,一个用于数据库操作,如导入(ldif2db
模式)。Directory 服务器的 SELinux 策略仅适用于正常模式。
默认情况下,Directory 服务器使用 SELinux 策略以正常模式运行。
其他资源