在 SSH 中禁用 PAM 的目的

tac*_*day 22 security ssh pam

我正在一个新机器上为 SSH 设置基于密钥的身份验证,并且正在阅读一些提到设置UsePAMnoPasswordAuthentication.

我的问题是,如果您已经拥有并设置为UsePAMno那么设置为的目的是什么?PasswordAuthenticationChallengeResponseAuthenticationno

lar*_*sks 17

我认为建议禁用的人UsePAM可能并不完全了解 PAM 堆栈提供的服务。除了认证,PAM还提供了可能会话建立的服务不是要绕行。

示例包括设置资源限制(通过pam_limit)、环境变量和安装目录。

如果它让您更舒服,您可以修改PAM配置sshd,使其不支持任何类型的密码身份验证。假设您有一个 existing /etc/pam.d/sshd,只需删除现有的auth行并将它们替换为:

auth required pam_deny.so
Run Code Online (Sandbox Code Playgroud)

  • 许多环境依赖`PAM` 提供的会话设置来进行正确操作是客观事实,而不是意见。OP 可能想要使用`PAM` 确实是我的观点。我的名字是 Lars,我同意这条消息。 (6认同)
  • 我在 sshd cfg 中设置了“UsePAM no”,我所需要的一切仍然有效,关于需要 PAM 的什么可能如此重要或有用的任何提示? (4认同)
  • 这是一个非常主观的答案。对于特定用例,例如 sshd 使用的不同身份验证模块,可能有更多的向后兼容性。是的,PAM 是可行的方法,并且设计得非常灵活,但是 OP 询问您为什么不使用它,而不是对如何使用 PAM 的描述。 (3认同)