为什么即使我禁用了 PAM 和密码验证,我仍然能够登录 Cockpit Web UI?

为什么即使我禁用了 PAM 和密码验证,我仍然能够登录 Cockpit Web UI?

我在远程机器的 /etc/ssh/sshd_config 下有这些设置

PermitRootLogin no
PermitRootLogin prohibit-password
PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM no

我这样做的原因是我之前只想安装好公钥后通过 ssh 进行远程连接。

但后来我很好奇尝试座舱,安装成功,登录成功。但是为什么会这样呢?

堆栈答案指导我这里说明 cockpit 作为 PAM 模块运行。但是如果我禁用了 PAM,为什么它仍然允许我通过 Web 界面登录?

答案1

您必须在 PAM 中禁用密码验证,而不是 SSH。

对于我的发行版 Fedora,解决方案是在注释中添加行/etc/pam.d/cockpit以完全禁用 Cockpit 的 PAM 身份验证:

auth       required     pam_deny.so

相关内容