强制执行 SELinux 后无法使用 SSH

强制执行 SELinux 后无法使用 SSH

我们在 Azure 上有一个 ubuntu VM。我们使用 Debian 软件包 ( selinux-basics_0.5.2_all.deb& selinux-policy-default_2.20140421-9_all.deb) 将 AppArmor 替换为 SELinux。

当 selinux 处于permissive模式时,一切都运行良好,但是一旦我们更改模式,enforcing我们就无法 ssh。

我已尝试过,autorelabel但是没有帮助。

我是 SELinux 的新手,找不到问题出在哪里。

请查看以下审计日志:

pam_systemd(sshd:session): Failed to create session: Connection timed out
pam_selinux(sshd:session): Unable to get valid context for <user>
error: ssh_selinux_getctxbyname: Failed to get default SELinux security context for <user>
error: ssh_selinux_getctxbyname: Failed to get default SELinux security context for <user>
error: ssh_selinux_setup_pty: security_compute_relabel: Invalid argument

如能得到任何帮助或指点我将非常感激。

答案1

尝试安装 policycoreutils 并使用 audit2allow 为 ssh 创建适当的规则。

Audit2allow 查看 audit.log 文件(或您指定的包含问题 ssh selinux 行日志的任何文件)并创建一组可用于修复该问题的规则。

查看手册页了解有关具体用法的更多详细信息。

相关内容