6.2. MLS 中的 SELinux 角色
SELinux 策略将每个 Linux 用户映射到 SELinux 用户。这允许 Linux 用户继承 SELinux 用户的限制。
MLS 策略不包含 unconfined 模块,包括无限制的用户、类型和角色。因此,用户将不受限制(包括 root )的用户无法访问每个对象,并执行他们在目标策略中可以进行的每个操作。
您可以通过调整策略中的布尔值来自定义 SELinux 策略中受限用户的权限。您可以使用 semanage boolean -l 命令确定这些布尔值的当前状态。要列出所有 SELinux 用户、其 SELinux 角色和 MLS/MCS 级别和范围,以 root 用户身份使用 semanage user -l 命令。
| User | 默认角色 | 其他角色 |
|---|---|---|
|
|
| |
|
|
| |
|
|
| |
|
|
|
|
|
| ||
|
| ||
|
| ||
|
|
| |
|
|
|
|
|
| ||
|
| ||
|
| ||
|
|
|
请注意,system_u 是系统进程和对象的特殊用户身份,system_r 是关联的角色。管理员不得将这个 system_u 用户和 system_r 角色关联到 Linux 用户。另外,unconfined_u 和 root 是没有限制的用户。因此,与这些 SELinux 用户关联的角色不会包含在下表中 type 和 SELinux 角色的访问中。
每个 SELinux 角色都与 SELinux 类型对应,并提供特定的访问权限。
| Role | Type | 使用 X 窗口系统登录 | su 和 sudo | 在主目录和 /tmp 中执行(默认) | Networking |
|---|---|---|---|---|---|
|
|
| 否 | 否 | 是 | 否 |
|
|
| 是 | 否 | 是 | 仅限 Web 浏览器(Firefox、GNOME Web) |
|
|
| 是 | 否 | 是 | 是 |
|
|
| 是 |
仅 | 是 | 是 |
|
|
| 是 | 是 | 是 | |
|
|
| 是 | 是 | 是 | |
|
|
|
仅在 | 是 | 是 | 是 |
-
默认情况下,
sysadm_r角色具有secadm_r角色的权限,这意味着具有sysadm_r角色的用户可以管理安全策略。如果这没有与您的用例对应,您可以通过在策略中禁用sysadm_secadm模块来分离这两个角色。如需更多信息,请参阅 MLS 中的从安全管理分离系统管理。 -
非登录角色
dbadm_r、logadm_r和webadm_r可用于管理任务的子集。默认情况下,这些角色不与任何 SELinux 用户关联。