7.5. 为 MCS 中的文件分配类别
为文件分配多类别安全 (MCS) 类别以限制这些类别的用户访问。通过限制不同工作组之间的数据访问,从而提高了隐私性。
您必须具有管理员权限才能为用户分配 MCS 类别。然后用户可以为文件分配类别。要更改文件类别,用户必须有权访问该文件。用户只能将文件分配给他们拥有的类别。
系统同时使用类别规则和正常文件访问权限。例如,如果类别为大脚的用户利用DAC阻止对文件的访问,则其他大脚用户无法访问该文件。即使拥有所有类别的用户也可能无法访问所有文件。
先决条件
-
SELinux 模式设置为
enforcing。 -
SELinux 策略被设置为
targeted或mls。 -
policycoreutils-python-utils软件包安装在您的系统中。 访问 Linux 用户,即:
- 分配给 SELinux 用户。
- 已分配给您要给该文件的类别。有关详细信息,请参阅为 MCS 中的用户分配类别。
- 访问您要添加到该类别中的文件的访问权限。
- 对尚未分配给此类别的 Linux 用户访问
流程
为文件添加类别:
$ chcat -- +<category1>,+<category2> <path/to/file1>使用
setrans.conf文件中的类别号c0到c1023或 category 标签。有关详细信息,请参阅在 MCS 中定义类别标签。您可以使用相同的语法从文件中删除类别:
$ chcat -- -<category1>,-<category2> <path/to/file1>注意删除类别时,必须在使用
-<category>语法前在命令行中键入--。如果您跳过此步骤,chcat命令会将类别读取为命令标志。
验证
检查文件的安全上下文,以验证它具有正确的类别:
$ ls -lZ <path/to/file> -rw-r--r-- <LinuxUser1> <Group1> root:object_r:user_home_t:_<sensitivity>_:_<category>_ <path/to/file>文件的实际安全上下文可能有所不同。
可选:当作为未分配给与该文件相同的类别的 Linux 用户登录时,尝试访问该文件:
$ cat <path/to/file> cat: <path/to/file>: Permission Denied