You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

禁用PAM与密码认证后仍可登录Cockpit Web UI的原因咨询

禁用PAM与密码认证后仍可登录Cockpit Web UI的原因咨询

哈哈,这个问题确实有点反直觉,我刚看到的时候也愣了一下!咱们掰开揉碎了说:

你在/etc/ssh/sshd_config里设置的那一堆规则,只对SSH命令行登录生效——就是你用ssh客户端远程连服务器的时候才会遵守这些限制。但Cockpit是个独立的Web服务,它的认证逻辑和SSH服务完全是两条线,根本不会继承sshd的这些配置。

那为什么禁用了SSH的PAM还能登Cockpit呢?核心原因有这几个:

  • 首先,Cockpit确实依赖PAM,但它是直接调用系统层面的PAM栈,而不是靠sshd启用PAM的开关。你在sshd里设UsePAM no,只是不让SSH服务用PAM,但系统本身的PAM配置和功能还是完好的,Cockpit照样能调用它来验证身份。
  • 其次,你关的PasswordAuthentication no也是SSH专属的,只限制用ssh命令登录时不能输密码。Cockpit的Web登录走的是自己的认证流程,它会直接校验你的系统用户密码,完全不受sshd的密码禁用设置影响。
  • 还有你设置的PermitRootLogin相关选项,同样只管SSH登录的root用户。Cockpit对root登录的控制是单独的,除非你在Cockpit的配置里专门锁了root,否则默认情况下是允许登录的(不同版本可能略有差异)。

总结一下就是:sshd的配置是管SSH命令行登录的,Cockpit是独立的Web服务,有自己的一套认证规则。你禁用的只是SSH服务使用PAM和密码登录的权限,并没有关掉系统本身的用户认证功能,所以Cockpit依然能正常验证你的身份~

备注:内容来源于stack exchange,提问作者orr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.23 13:22:34