SSH公钥认证可以使用pam_group吗?

SSH公钥认证可以使用pam_group吗?

我正在配置一些服务器以使用 LDAP(通过 PAM)来验证用户身份。此外,我使用 pam_group 将所有用户添加到某些系统组,例如音频/视频/vboxusers/....

我的 PAM 配置适用于大多数服务(su、login 和 sudo 都考虑到 pam_group),但不适用于 SSH。具体来说,当我使用公钥进行身份验证时,不会从 /etc/security/group.conf 添加组,但当我使用密码进行身份验证时,则会添加组。

环顾四周,我发现 SSH 公钥身份验证绕过了 PAM 堆栈并自行设置用户凭据,因此它忽略了 PAM 特定的配置,例如 pam_group。奇怪的是,LDAP 组(通常由 pam_ldap 设置)在所有情况下都会设置,无论是否有密码。

我希望我的用户的用户体验尽可能可预测,以便他们始终是同一组组的成员,无论其身份验证方法如何。使用 pubkey 身份验证时,是否有任何方法可以配置 SSH 以从 /etc/security/group.conf 添加组?

提前致谢,

答案1

可能不会。

手册页pam_group说:

只有授权提供了模块类型。

由于 SSH 在使用公钥时不使用 PAM 进行身份验证,因此auth不会使用这些模块。

至于为什么 pam_group只能作为一个auth模块工作,而不是作为一个session模块,我不能说。

相关内容