Estou tentando permitir a autenticação via LDAP em um sistema host do CentOS. Mas eu sempre recebo um erro Não consigo contatar o servidor LDAP do pam_ldap.
O servidor LDAP é pingável e a autenticação funciona perfeitamente com ldap: //, mas não com ldaps: //. Ele também funciona perfeitamente com ldaps: // no sistema operacional da Debian, mas não no CentOS.
Eu tenho o erro Não consigo contatar também com $ ldapsearch ... mas consertei a configuração TLS_REQCERT allow em / etc / openldap / ldap.conf. Mas definir isso para /etc/pam_ldap.conf não ajuda.
Passos que fiz:
- $ yum instalar o pam_ldap nss-pam-ldapd openldap-clients
-
$ authconfig-tui e ativar o LDAP para autenticação
- modificar / etc / pam_ldap
- modificar /etc/nslcd.conf
- modificar /etc/openldap/ldap.conf
- crie /etc/ldap/ldap.conf (leia em algum lugar que é um caminho de arquivo de configuração de fallback)
- crie /etc/ldap.conf (com o mesmo conteúdo de /etc/ldap/ldap.conf)
- reinicie os serviços nscd e nslcd
Mais algumas informações:
- o CA-Cert do servidor LDAP é legível para todos.
- iptables está desativado
Também é confuso o IP em / var / log / secure . Lá está escrito Senha com falha para testuser de 10.1.1.1 , mas o IP configurado para o servidor LDAP é 10.1.1.42 e o IP do host é 10.1.1.27. De qualquer forma, se eu usar o uri ldap: //10.1.1.42 e comentar a autenticação da linha ssl on funciona como um charme.
Alguma idéia?
.
Tentando autenticar via pam, / var / log / secure
Sep 15 09:50:37 client-server unix_chkpwd[16146]: password check failed for user (testuser)
Sep 15 09:50:37 client-server sshd[16144]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=10.1.1.1 user=testuser
Sep 15 09:50:37 client-server sshd[16144]: pam_ldap: ldap_simple_bind Can't contact LDAP server
Sep 15 09:50:37 client-server sshd[16144]: pam_ldap: reconnecting to LDAP server...
Sep 15 09:50:37 client-server sshd[16144]: pam_ldap: ldap_simple_bind Can't contact LDAP server
Sep 15 09:50:40 client-server sshd[16144]: Failed password for testuser from 10.1.1.1 port 11339 ssh2
Sep 15 09:50:40 client-server sshd[16145]: Received disconnect from 10.1.1.1: 13: Unable to authenticate
Executa $ ldapsearch -v -H ldaps: //10.1.1.42/ -Dcn = admin, dc = sub, dc = exemplo, dc = org -W -x -b dc = sub, dc = Por exemplo, dc = org -d1 para verificar se ldaps // está funcionando. (Sim, funciona)
ldap_url_parse_ext(ldaps://10.1.1.42/)
ldap_initialize( ldaps://10.1.1.42:636/??base )
ldap_create
ldap_url_parse_ext(ldaps://10.1.1.42:636/??base)
Enter LDAP Password:
ldap_sasl_bind
ldap_send_initial_request
ldap_new_connection 1 1 0
ldap_int_open_connection
ldap_connect_to_host: TCP 10.1.1.42:636
ldap_new_socket: 3
ldap_prepare_socket: 3
ldap_connect_to_host: Trying 10.1.1.42:636
ldap_pvt_connect: fd: 3 tm: -1 async: 0
TLS: certificate [CN=sub.example.org,OU=test-ou,O=test-o,ST=test-st,C=DE] is not valid - error -8172:Peer's certificate issuer has been marked as not trusted by the user..
TLS certificate verification: subject: CN=sub.example.org,OU=test-ou,O=test-o,ST=test-st,C=DE, issuer: CN=sub.example.org,OU=test-ou,O=test-o,ST=test-st,C=DE, cipher: AES-128, security level: high, secret key bits: 128, total key bits: 128, cache hits: 0, cache misses: 0, cache not reusable: 0
ldap_open_defconn: successful
ldap_send_server_request
...
Conteúdo do /etc/pam_ldap.conf
ldap_version 3
pam_password crypt
uri ldaps://10.1.1.42:636
base dc=sub,dc=example,dc=org
ssl on
tls_reqcert allow
tls_cacertfile /srv/ldap-cacert.pem
tls_checkpeer no
Conteúdo do /etc/openldap/ldap.conf
TLS_REQCERT allow
TLS_CACERTFILE /srv/ldap-cacert.pem
URI ldaps://10.1.1.42:636/
BASE dc=sub,dc=example,dc=org
Conteúdo do /etc/nslcd.conf
uid nslcd
gid ldap
ssl on
tls_reqcert allow
tls_cacertfile /srv/ldap-cacert.pem
uri ldaps://10.1.1.42:636/
base dc=sub,dc=example,dc=org
Conteúdo do /etc/ldap.conf e do /etc/ldap/ldap.conf :
tls_checkpeer no
tls_reqcert allow
tls_cacertfile /srv/ldap-cacert.pem
uri ldaps://10.1.1.42:636/
base dc=sub,dc=example,dc=org