我在 Ubuntu 20.04 上设置 ldap 身份验证时遇到了一些困难。我按照本指南,也就是说,我安装了软件包libnss-ldap libpam-ldap ldap-utils nscd
。
nsswitch.conf
看起来
passwd: files systemd ldap
group: files systemd ldap
shadow: files ldap
gshadow: files
我把这一行改成/etc/pam.d/common-password
了
password [success=1 user_unknown=ignore default=die] pam_ldap.so try_first_pass
我还添加了以下行/etc/pam.d/common-session
:
session optional pam_mkhomedir.so skel=/etc/skel umask=022
现在我不确定用户是否有必要在本地存在。如果用户存在,则一切正常。如果不存在,我会在 auth.log 中收到以下消息:
Jan 27 07:06:55 myserver sshd[4479]: Invalid user myuser from xxxx:xxx:xxxx:xxx::xx port 50556
Jan 27 07:07:03 myserver sshd[4479]: pam_unix(sshd:auth): check pass; user unknown
Jan 27 07:07:03 myserver sshd[4479]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=xxxx:xxx:xxxx:xxx::xx
Jan 27 07:07:03 myserver sshd[4479]: pam_ldap: error trying to bind as user "CN=myuser,OU=Users,OU=TEST,DC=ad,DC=test,DC=example,DC=de" (Invalid credentials)
Jan 27 07:07:05 myserver sshd[4479]: Failed password for invalid user myuser from xxxx:xxx:xxxx:xxx::xx port 50556 ssh2
我做错了什么吗?应该自动创建用户(如果本地不存在)还是它按预期工作,我必须事先创建用户?
答案1
登录时您要添加完全限定域名吗?使用 AD 用户 (LDAP) 登录时,我们必须使用全名
远程控制[电子邮件保护]@服务器主机名