Невозможно заставить аутентификацию ldap работать на Ubuntu 18.04 LTS

Я пытаюсь включить аутентификацию LDAP в Ubuntu, используя приведенные ниже руководства: https://computingforgeeks.com/how-to-configure-ubuntu-18-04-ubuntu-16-04-lts-as-ldap-client/

https://help.ubuntu.com/community/LDAPClientAuthentication

https://www.youtube.com/watch?v=l0e8rG0mku8

Пока что ничего не работает. ldapsearch работает, но я не могу войти или проверить с помощью команд "id" и "getent". Единственное отличие от руководств состоит в том, что у меня нет учетной записи администратора ldap и я не указываю ее, но я не думаю, что это должно сломать все остальное. Оцените любые предложения по устранению неполадок PAM и клиента ldap.

cat /etc/nsswitch.conf 
passwd: files ldap
group: files ldap
shadow: files ldap
gshadow:        files
. . .

cat /etc/pam.d/common-session
session [default=1]         pam_permit.so
session requisite           pam_deny.so
session required                        pam_mkhomedir.so umask=0022 skel=/etc/skel/
session required            pam_permit.so
session optional            pam_umask.so
session required    pam_unix.so 
session optional            pam_ldap.so 
session optional    pam_systemd.so 

sudo nano /etc/pam.d/common-auth
auth    required   pam_group.so use_first_pass
auth    [success=2 default=ignore]      pam_unix.so nullok_secure try_first_pass
auth    [success=1 default=ignore]      pam_ldap.so use_first_pass
auth    requisite                       pam_deny.so
auth    required                        pam_permit.so
auth    optional                        pam_cap.so

sudo nano /etc/pam.d/common-password
password        requisite                       pam_pwquality.so retry=3
password        [success=2 default=ignore]      pam_unix.so obscure use_authtok try_first_pass sha$
password        [success=1 user_unknown=ignore default=die]     pam_ldap.so use_authtok try_first_$
password        requisite                       pam_deny.so
password        required                        pam_permit.so
password        optional        pam_gnome_keyring.so

$ ldapsearch -x -H ldap://ldap.server.com -b ou=employee,o=test,c=an -LLL "(alias=test_username)" cn
dn: cn=Test User  5142,ou=employee,o=slb,c=an
cn: Test User
cn: Test User  5142

$su - test_username
No passwd entry for user 'test_username'

$ getent passwd test_username
$

0 ответов

Из предоставленной информации видно, что ваш сервер LDAP работает правильно, но это не относится к модулю NSS, который является вашим клиентом LDAP. Вы должны проверить это/etc/ldap.confсодержит правильную базу поиска и URI сервера LDAP. В качестве альтернативы вы можете запуститьsudo dpkg-reconfigure ldap-auth-config для интерактивного редактирования.

Кажется, что PAM настроен правильно. В противном случае это всегда можно исправить с помощью интерактивной утилиты.pam-auth-update.

Кроме того, все руководства, которым вы следуете, предлагают вам установить libnss-ldapреализация. Если вы собираетесь использовать настольную версию Ubuntu, имейте в виду, что существуют известные проблемы междуsystemd-logind а также libnss-ldap. Решение - использовать более новый пакетlibnss-ldapd. См. Этот ответ для подробностей.

Другие вопросы по тегам