我们在 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 行日志的任何文件)并创建一组可用于修复该问题的规则。
查看手册页了解有关具体用法的更多详细信息。