PAM SSSD 允许本地用户

PAM SSSD 允许本地用户

我有一个带有 PAM 的默认 SSSD 配置。我可以以任何 LDAP 用户身份正常登录。但是,当我在服务器上创建本地用户时:

adduser test1
passwd test1

然后尝试以该用户身份登录,出现以下错误:

pam_sss(sshd:account): Access denied for user test1: 10 (User not known to the underlying authentication module)

我的/etc/nsswitch.conf是这样的:

passwd:     files sss
shadow:     files sss
group:      files sss

#hosts:     db files nisplus nis dns
hosts:      files dns  

bootparams: nisplus [NOTFOUND=return] files

ethers:     files
netmasks:   files
networks:   files
protocols:  files
rpc:        files
services:   files sss

netgroup:   files sss

publickey:  nisplus

automount:  files ldap
aliases:    files nisplus

sudoers: files sss

现在files被列为替代方案,nsswitch.conf但它似乎没有查看要验证的文件。

当 SSSD 作为我的身份验证模块时,如何允许以本地用户身份登录?

答案1

身份验证、密码更改和访问控制故障排除 为了使身份验证成功,必须首先准确提供用户信息。在调试身份验证之前,请确保用户信息可以使用getent passwd $user或解析id $user。无法检索用户信息也会显示在安全日志或日志中,消息如下:

pam_sss(sshd:account): Access denied for user admin: 10 (User not known to the underlying authentication module)

信息来源

答案2

听起来很奇怪。您应该查看 pam 配置中以 account 开头的行。我想只有 pam_sss但没有pam_unix

找到正确的 pam 文件可能很棘手,取决于您使用的发行版。

对于基于 RHEL 的系统和 SSH/etc/pam.d/password-auth

答案3

当我收到此错误时,问题最终在于辅助身份验证(在我的情况下是 yubikey)应该在 /etc/pam.d/common-auth 中的 unix 身份验证之前列出,但我把它放在了最后。可能不适用于您的情况,但值得检查

答案4

当我退出并重新加入 AD 节点时遇到了这个问题。

生成的 sssd.conf 中有此行​​ access_provider = simple

正确的配置是 access_provider = ad

相关内容