MySQL 9.0 发行说明
安全增强型 Linux (SELinux) 是一种强制访问控制 (MAC) 系统,它通过将称为 SELinux 上下文 的安全标签应用于每个系统对象来实施访问权限。SELinux 策略模块使用 SELinux 上下文来定义进程、文件、端口和其他系统对象相互交互的方式规则。系统对象之间的交互只有在策略规则允许的情况下才允许。
SELinux 上下文(应用于系统对象的标签)具有以下字段:user
、role
、type
和 security level
。类型信息而不是整个 SELinux 上下文最常用于定义进程与其他系统对象交互方式的规则。例如,MySQL SELinux 策略模块使用 type
信息定义策略规则。
您可以使用操作系统命令(例如 ls 和 ps,带 -Z
选项)查看 SELinux 上下文。假设 SELinux 已启用且 MySQL 服务器正在运行,以下命令显示了 mysqld 进程和 MySQL 数据目录的 SELinux 上下文
mysqld 进程
$> ps -eZ | grep mysqld
system_u:system_r:mysqld_t:s0 5924 ? 00:00:03 mysqld
MySQL 数据目录
$> cd /var/lib
$> ls -Z | grep mysql
system_u:object_r:mysqld_db_t:s0 mysql
其中
system_u
是系统进程和对象的 SELinux 用户标识。system_r
是系统进程使用的 SELinux 角色。objects_r
是系统对象使用的 SELinux 角色。mysqld_t
是与 mysqld 进程关联的类型。mysqld_db_t
是与 MySQL 数据目录及其文件关联的类型。s0
是安全级别。
有关解释 SELinux 上下文的更多信息,请参阅您的发行版的 SELinux 文档。