6.7. 在 MLS 中更改文件敏感度
在 MLS SELinux 策略中,用户只能修改自己的敏感度级别的文件。这是为了防止以较低明确的级别向用户公开任何高度敏感信息,同时防止不明确的用户创建高敏感文件。不过,管理员可以手动增加文件的分类,例如要在更高级别处理该文件。
先决条件
-
SELinux 策略设置为
mls
。 - SELinux 模式被设置为 enforcing。
您有安全管理权限,这意味着您要分配给其中之一:
-
secadm_r
角色。 -
如果启用了
sysadm_secadm
模块,进入sysadm_r
角色。sysadm_secadm
模块默认启用。
-
-
已安装
policycoreutils-python-utils
软件包。 分配给任何安全权限级别的用户。如需更多信息,请参阅 MLS 中建立用户清除级别。
在本例中,
User1
已有s1
级别的权限。分配了安全级别的、您有全访问的文件。
在本例中,
/path/to/file
具有级别s1
权限。
步骤
检查该文件的安全级别:
# ls -lZ /path/to/file -rw-r-----. 1 User1 User1 user_u:object_r:user_home_t:s1 0 12. Feb 10:43 /path/to/file
更改文件的默认安全级别:
# semanage fcontext -a -r s2 /path/to/file
强制重新标记文件的 SELinux 上下文:
# restorecon -F -v /path/to/file Relabeled /path/to/file from user_u:object_r:user_home_t:s1 to user_u:object_r:user_home_t:s2
验证
检查该文件的安全级别:
# ls -lZ /path/to/file -rw-r-----. 1 User1 User1 user_u:object_r:user_home_t:s2 0 12. Feb 10:53 /path/to/file
可选:验证具有较低级别权限的用户是否无法读取该文件:
$ cat /path/to/file cat: file: Permission denied
其他资源