Estou tentando configurar o Ubuntu 10.04 para que eu possa fazer o login usando as credenciais do ldap.
Eu segui estas etapas gerais de configuração descritas em vários tutoriais que encontrei:
1) Instale bibliotecas:
sudo apt-get install libpam-ldap libnss-ldap nss-updatedb libnss-db nscd
2) inserido nos detalhes da conexão quando solicitado pelo libnss_ldap
3) nsswitch.conf configurado para usar o ldap:
...
passwd: files ldap
group: files ldap
shadow: files ldap
...
4) configurado pam.d common- * files
Este é o conteúdo de "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
Eu tentei isso em 2 servidores linux. Nenhum dos dois parece reconhecer nenhum usuário do ldap. Por exemplo, getent passwd <ldap username>
não retorna nada. id <ldap username>
retorna no such user
.
Se eu tentar ssh usando minha credencial ldap, vejo isso no 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
UPDATE
Eu descomentei o seguinte no arquivo 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
e agora fazendo um pequeno progresso - agora estou vendo isso no 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
Se eu fizer um ldapsearch
usando o mesmo host e base dn conforme especificado em ldap.conf, posso consultar e encontrar minha conta de usuário ldap com sucesso.
O que estou perdendo? Talvez algum serviço precise ser iniciado? Muito obrigado por qualquer ajuda.