openldap authentication ssh

前端之家收集整理的这篇文章主要介绍了openldap authentication ssh前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试在名为ldap_client的ldap-client主机上运行debian 6上的openldap服务器上的ssh身份验证.

这是ldapsearch在服务器上返回的内容

  1. dn: dc=localnet,dc=lan
  2. objectClass: dcObject
  3. objectClass: organization
  4. dc: localnet
  5. o: Some_Enterprise
  6. description: localnet.lan
  7.  
  8. dn: ou=people,dc=localnet,dc=lan
  9. objectClass: top
  10. objectClass: organizationalUnit
  11. ou: people
  12.  
  13. dn: ou=groups,dc=lan
  14. objectClass: top
  15. objectClass: organizationalUnit
  16. ou: groups
  17.  
  18. dn: uid=joe,ou=people,dc=lan
  19. objectClass: account
  20. objectClass: posixAccount
  21. cn: joe
  22. uid: joe
  23. uidNumber: 10001
  24. gidNumber: 2000
  25. homeDirectory: /home/joe
  26. loginShell: /bin/sh
  27. gecos: joe
  28. description: joe

在客户端,我已经配置了libnss-ldap和nsswitch.conf如下;

  1. passwd: files ldap
  2. group: files ldap
  3. shadow: files ldap

这样客户端上的unix命令id(id joe)就会返回它的uid / gid.因此用户被ldap识别.

但是经过几个小时google周围,我无法使用ssh在客户端上设置身份验证.

我在/etc/pam.d/commun-account,commun-auth和commun-password上有这些行

  1. auth sufficient pam_ldap.so
  2. auth required pam_unix.so nullok_secure

这些在/etc/pam.d/ssh上

  1. auth sufficient /lib/security/pam_ldap.so no_warn
  2. auth required pam_unix.so no_warn try_first_pass
  3. account required /lib/security/pam_ldap.so no_warn ignore_authinfo_unavail ignore_unknown_user
  4. account required pam_unix.so

我在/etc/ssh/sshd.conf上有usePam = yes.

以下是客户端上auth.log的输出

  1. ==> /var/log/auth.log <==
  2. Dec 7 17:39:06 versionning sshd[3898]: pam_ldap: error trying to bind (Invalid credentials)
  3. Dec 7 17:39:06 versionning sshd[3898]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=xxx.kimsufi.com user=joe
  4. Dec 7 17:39:08 versionning sshd[3898]: Failed password for joe from a.b.c.d port 58191 ssh2

在服务器上:
==> / var / log / syslog< ==
12月7日16:42:43 ldap slapd [963]:< = bdb_equality_candidates

猜你在找的Bash相关文章