Problema de negociação TLS no OpenLDAP

Problema de negociação TLS no OpenLDAP

Eu tenho a arquitetura OpenLDAP Master-Slave. Um dia reiniciei o serviço slapd no LDAP Slave e encontrei o problema de negociação TLS nos Logs.Antes de reiniciar o serviço, ele estava funcionando sem problemas

Então tentei depurar o problema, encontrei um problema comum que irá desencadear um problema de negociação TLS.

  1. O certificado SSL pode expirar- Para mim não é o caso, verifiquei que o certificado é válido
  2. O nome CN do certificado não corresponde ao nome do servidor- No meu caso, meu certificado CN=*.example.com e os nomes dos meus servidores são ldap.example.com e ldap-slave.example.com.
  3. Problemas de permissão nos arquivos de certificado- Tenho 2 diretórios (certs - [contém certificado & ca cert & key] , cacert - [contém apenas cacert]), ambos os diretórios têm permissão de leitura e gravação e são de propriedade do usuário LDAP.

Aqui está a configuração usada pelo slapd.

dn: cn=config
objectClass: olcGlobal
cn: config
olcArgsFile: /var/run/openldap/slapd.args
olcDisallows: bind_anon
olcLogLevel:: YW55IA==
olcPidFile: /var/run/openldap/slapd.pid
olcRequires: authc
olcTLSCACertificateFile: /etc/openldap/certs/example.ca.crt
olcTLSCACertificatePath: /etc/openldap/certs
olcTLSCertificateFile: /etc/openldap/certs/example.crt
olcTLSCertificateKeyFile: /etc/openldap/certs/example.key

dn: cn=module{0},cn=config
objectClass: olcModuleList
cn: module{0}
olcModulePath: /usr/lib64/openldap
olcModuleLoad: {0}syncprov.la

dn: cn=module{1},cn=config
objectClass: olcModuleList
cn: module{1}
olcModulePath: /usr/lib64/openldap
olcModuleLoad: {0}auditlog.la

Aqui está meu arquivo ldap.conf

#
# LDAP Defaults
#

# See ldap.conf(5) for details
# This file should be world readable but not world writable.

#BASE   dc=example,dc=com
#URI    ldap://ldap.example.com ldap://ldap-master.example.com:666

#SIZELIMIT  12
#TIMELIMIT  15
#DEREF      never

#TLS_CACERT /etc/openldap/cacerts/example.ca.crt
#TLS_REQCERT demand
TLS_CACERTDIR /etc/openldap/cacerts
#TLS_CACERT /etc/openldap/certs/example.ca.crt
TLS_REQCERT allow
# Turning this off breaks GSSAPI used with krb5 when rdns = false
SASL_NOCANON    on
URI ldaps://ldap.example.com/ ldaps://ldap-slave.example.com/
BASE dc=example,dc=com

Então, por favor, ajude-me a depurar o problema.

Responder1

Podemos ter os logs com o erro para ajudá-lo?

Além disso, você não precisa de olcCACertificatePath e olcCACertificateFile, para mim a configuração apenas com olcCACertficatePath é suficiente. Não sei se é a origem do seu erro mas você pode tentar deletar um deles.

informação relacionada