selinux mls ssh 被拒绝 dyntransition - 登录失败

selinux mls ssh 被拒绝 dyntransition - 登录失败

我正在尝试学习 SELinux 并阅读 RHEL 7 的 Red Hat 文档。我偶然发现了多层安全性(MLS)的文档并想尝试一下,因此我设置了 SELINUXTYPE=mls 和 SELINUX=permissive ,触摸了 /.autorelabel (在其中回显了 -F )并重新启动。

我能够登录,但想检查审计日志以确保没有发生任何故障或拒绝,从而阻止我使用强制模式登录。我发现了以下内容:

type=AVC msg=audit(1457127380.826:208): avc:  denied  { dyntransition } for      pid=2109 comm="sshd" scontext=system_u:system_r:sshd_t:s0-s15:c0.c1023 tcontext=root:sysadm_r:sysadm_t:s0 tclass=process

所以,我认为没什么可担心的(仍在学习),所以我将 SELINUX 设置为强制执行并重新启动。把自己锁在外面了!

我能够通过一些黑客攻击重新进入并将 SELINUX 重新设置为宽容,但我不确定为什么它不起作用......

我已尝试 restorecon /usr/sbin/sshd 并且它确实具有正确的上下文:

ls -Z /usr/sbin/sshd
-rwxr-xr-x. root root system_u:object_r:sshd_exec_t:s0 /usr/sbin/sshd

但是如果你看一下错误中的 tcontect,它很奇怪:

 tcontext=root:sysadm_r:sysadm_t:s0 

无论如何,正如我所说的,我仍在学习,所以任何建议都会有帮助...如果能提供文档来解释任何示例或解决方案,我将不胜感激 - “授人以鱼不如授人以渔...”

非常感谢!乔

答案1

看起来root不允许在 MLS 系统上直接通过 ssh 登录。

您需要以staff_t用户身份通过​​ ssh 登录,然后sudo以 root 身份登录。

相关内容