因此我有点困惑,试图弄清楚如何判断用户是否对 CentOS 中的文件和/或目录具有读/写/可执行权限。
当我看见:
-rw-r--r--. john john2 unconfined_u:object_r:user_home_t:s0 .config
-rw-r--r--. john john2 system_u:object_r:default_t:s0. .bashrc
跑步后ls -laZ
,
这意味着组“john2”中的用户“john”应该在 .confing 和 .bashrc 中都具有读/写权限?但是 unconfined_u 和 system_u 与此有什么关系?
答案1
如果你只是运行默认有针对性的策略,并且没有将任何用户帐户与 SELinux 用户关联,则所有用户都将不受限制地运行并拥有 SELinux 用户unconfined_u
。这包括 root 用户(当 root 登录或用户使用 su/sudo 时)。系统进程以 SELinux 用户身份运行system_u
。默认情况下,目标策略仅限制系统服务,而不限制用户。
如果您愿意,可以通过将用户的帐户与 SELinux 用户关联来限制用户,但通常不会这样做。在现有文件上设置或重置 SELinux 用户时,可能还需要注意。
这RHEL 文档有详细的解释现有 SELinux 用户、这些用户可以做什么以及管理他们所需的命令。虽然你没有问,但它也解释了角色,它们对用户起到补充作用,并允许该角色的用户参与特定活动,通常与管理 SELinux 本身有关。