openSSL / openLDAP tls error

1

Eu tenho dois openLDAP servidores, cada um foi configurado lado a lado usando um script que fez todo o trabalho pesado, os dois servidores replicam suas configurações / usuários entre si, e por um longo tempo eu achei que tudo estava funcionando. Acabamos de descobrir que um dos servidores realmente não negocia TLS , então nada pode autenticar contra ele.

Ambos os sistemas são RHEL 6.7 , ambos foram atualizados exatamente na mesma hora, exatamente da mesma forma desde sua criação. Cada servidor deve ser 100% idêntico ....

Usando certificados autoassinados

Se eu (no quebrado): ldapsearch -ZZd 1 -D "cn=Manager,dc=example,dc=org" -w secret-b ""

TLS: loaded CA certificate file /etc/openldap/certs/ca-bundle.crt.
TLS: error: tlsm_PR_Recv returned 0 - error 22:Invalid argument
TLS: error: connect - force handshake failure: errno 22 - moznss error -5938
TLS: can't connect: TLS error -5938:Encountered end of file.
ldap_err2string
ldap_start_tls: Connect error (-11)
        additional info: TLS error -5938:Encountered end of file

Isso me deixa preocupada, porque eu não acredito que eu deveria estar usando Moznss, como eu tive problemas com os bancos de dados nos meus testes iniciais, então eu estou duro linkando para o ca-bundle.crt , assim como server.key e server.crt , que novamente funciona bem no meu outro servidor.

por outro lado, se i: openssl s_client -connect server1:636 -cert server.crt -key server.key

CONNECTED(00000003)
140398252824392:error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure:s23_lib.c:184:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 0 bytes and written 247 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE

Que, novamente, no meu outro servidor, produz bons resultados, verificando a chave.

Ambos os erros, pelo menos com base em algumas pesquisas, indicam que ele está relacionado ao banco de dados moznss , mas eu não consigo entender a) Por que um é um problema e o outro não, e b) Como resolver o problema ou ignorar o problema.

Se alguém tiver mais alguma ideia de solução de problemas ou soluções potenciais, eu ficaria muito grato.

    
por Gravy 18.04.2016 / 23:56

1 resposta

3
  1. Verifique se as diretivas de arquivo olcTLS * em cn=config apontam para arquivos reais.

    olcTLSCACertificateFile: /etc/ssl/certs/ca-bundle.crt
    olcTLSCertificateFile: /etc/pki/tls/certs/server.example.com.crt
    olcTLSCertificateKeyFile: /etc/pki/tls/private/server.example.com.key
    
  2. Verifique seus registros. Por padrão, o CentOS não registra slapd . slapd padroniza para facilitar LOCAL4 na severidade DEBUG . Você pode editar /etc/sysconfig/slapd ou sua configuração de modificação de syslog.

    # cat /etc/rsyslog.d/slapd.conf 
    local4.*    /var/log/slapd.log
    

    Não se esqueça de modificar cn=config do olcLogLevel .
    olcLogLevel: Config é provavelmente o mais relevante. man slapd-config tem mais detalhes.

por 19.04.2016 / 00:40