我配置了一台服务器,之前没有启用 SELinux。我激活了 SELinux,为它配置了 SELinux 用户等。我启用了策略targeted,然后将其更改为mls

mls当我在模式下启用该策略时permissive

启用它之后,我重新标记了所有标签:

fixfiles -F -v relabel

然后我经过一段时间的尝试和验证后,改变了permissiveenforcing重新启动。

一切都很好,但是我发现存在一些问题。

  • 我尝试使用yum( yum update, yum install),但是不起作用。这没有输出。
  • 我尝试安装 SELinux 模块,但semodule -i不起作用。显示:
libsemanage.semanage_direct_install_file: Unable to read file podman-quadlet.pp
 (Permission denied).

该文件有 644 个权限。

  • 该命令ip a不起作用。

我的 SELinux 状态是:

SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             mls
Current mode:                   enforcing
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     denied
Memory protection checking:     actual (secure)
Max kernel policy version:      33

和配置:

SELINUX=enforcing
SELINUXTYPE=mls

当模式符合permissive逻辑时,所有功能均可工作。但在模式下enforcing则不行。

这看起来像是标签重新标记的问题。

这不正常。虽然模式是enforcing。工具semodule,,ip应该yum可以正常工作。我明白。

我认为问题在于重新标记。但我重新标记了所有内容。相信…详细信息。如果我执行:

fixfiles -F onboot

生成的/.autorelabel内容为:-F。然后我重新启动。系统重新标记但无法删除/.autorelabel系统重新启动的 。系统循环重新启动。

此外,在重新标记期间,存在无法重新标记的路径…这表明:

...
Warning no default label for /dev/mqueue
/sbin/setfiles: Could not set context for /opt/backups/system/boot/syslinux/ldlinux.sys:  Operation not permitted
...

这是什么意思呢?

有人知道发生了什么吗?我该如何解决这个问题?

有什么想法吗?

谢谢问候。

0