Я пытаюсь настроить Ubuntu 10.04, чтобы я мог войти в систему, используя учетные данные ldap.
Я следовал этим общим шагам настройки, изложенным в нескольких учебных пособиях, которые я нашел:
1) Установите библиотеки:
sudo apt-get install libpam-ldap libnss-ldap nss-updatedb libnss-db nscd
2) вводится в сведения о соединении по запросу libnss_ldap
3) настроил nsswitch.conf для использования ldap:
...
passwd: files ldap
group: files ldap
shadow: files ldap
...
4) настроенные файлы pam.d common- *
Вот содержимое "common-auth":
auth [success=2 default=ignore] pam_unix.so nullok_secure
auth [success=1 default=ignore] pam_ldap.so use_first_pass
# here's the fallback if no module succeeds
auth requisite pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
auth required pam_permit.so
# and here are more per-package modules (the "Additional" block)
# end of pam-auth-update config
Я пробовал это на 2 серверах Linux. Кажется, ни один из них не распознает пользователей ldap. Например, getent passwd <ldap username>
ничего не возвращает. id <ldap username>
возвращает no such user
.
Если я пытаюсь использовать ssh, используя свои учетные данные ldap, я вижу это в auth.log:
Jun 2 14:16:50 hostnameXX sshd[1527]: pam_unix(sshd:auth): check pass; user unknown
Jun 2 14:16:50 hostnameXX sshd[1527]: pam_unix(sshd:auth): authentication failure; logname=uid=0 euid=0 tty=ssh ruser= rhost=xx.xx.xx.xx
ОБНОВИТЬ
Я раскомментировал следующее в ldap.conf:
nss_base_passwd ou=xxx,dc=xxx,dc=xxx
nss_base_shadow ou=xxx,dc=xxx,dc=xxx
nss_base_group ou=xxx,dc=xxx,dc=xxx
и теперь делает небольшой прогресс - теперь я вижу это в auth.log:
Jun 2 16:15:03 <hostname> sshd[1566]: pam_ldap: error trying to bind as user cn=xxxx,ou=xxx,dc=xxx,dc=xx" (Invalid credentials)
Jun 2 16:15:05 <hostname> sshd[1566]: Failed password for invalid user xxxx from xx.xx.xx.xx port xxxx ssh2
Если я выполняю ldapsearch
используя тот же хост и базовый dn, как указано в ldap.conf, я могу запросить и успешно найти свою учетную запись ldap.
Что мне не хватает? Может быть, какой-то сервис нужно запустить? Большое спасибо за любую помощь.