Ricerca IDPA: Errore segnalato durante il test della connessione al provider di identità esterno
Summary: Questo articolo della Knowledge Base descrive un problema per cui il pulsante Test Connection riporta un messaggio di errore a causa di un errore di associazione tramite Secure Socket Layer. ...
Symptoms
All'interno della console di amministrazione di PowerProtect DPSearch, nella sezione LDAP Options , viene segnalato un errore quando si utilizza il pulsante Test connection . Il messaggio di errore non viene visualizzato se il campo SSL (Secure Socket Layer)è impostato su false.
All'interno del file cis.log , che si trova nella cartella /usr/local/search/log/cis , sono disponibili messaggi di errore simili ai seguenti:
P7FF0|2021/03/09 13:34:46:765|DEBUG|cislockbox.rb(62)|Parsed body A-OK
P7FF0|2021/03/09 13:34:46:765|DEBUG|cislockbox.rb(79)|Binding to ldap using: [Server=ldaphost, Port:636, User=ldapuser, Pwd: ********************]
P7FF0|2021/03/09 13:34:46:768|DEBUG|cisconfigldap.rb(128)|Binding to [ldaphost:636 as ldapuser]
P7FF0|2021/03/09 13:34:46:780|DEBUG|ldap_internal.rb(645)|Ldap Internal; bind_as: "Connection to ldap server ldaphost failed, ex: SSL_connect returned=1 errno=0 state=error: certificate verify failed."
P7FF0|2021/03/09 13:34:46:780|DEBUG|ldap_internal.rb(645)|Ldap Internal; bind_as: "bind as result: "
P7FF0|2021/03/09 13:34:46:780|DEBUG|ldap_provider.rb(317)|Ldap Provider; validate_user: "bind_as user ldapuser failed on LDAP Host ldaphost with #\u003cOpenStruct code=0, message=\"Success\"\u003e"
P7FF0|2021/03/09 13:34:46:780|DEBUG|ldap_provider.rb(317)|Ldap Provider; validate_user: "validate_user failed. User entry: null"
P7FF0|2021/03/09 13:34:46:781|ERROR|cisconfigldap.rb(141)|LDAP binding failed.
P7FF0|2021/03/09 13:34:46:781|ERROR|cislockbox.rb(99)|PUT /cis/lockbox/ldap/_test : LDAP binding failed. Invalid LDAP parameters.
Sull'host DPSearch se l'opzione ldapsearch il comando viene eseguito con "-v" e "-d1" switch, vengono trovate informazioni simili a quelle riportate di seguito:
TLS trace: SSL_connect:before/connect initialization
TLS trace: SSL_connect:SSLv2/v3 write client hello A
TLS trace: SSL_connect:unknown state
TLS certificate verification: depth: 1, err: 20, subject <subject of certificate>, issuer: <issuer details>
TLS certificate verification: Error, unable to get local issuer certificate
TLS trace: SSL3 alert write:fatal:unknown CA
TLS trace: SSL_connect:error in error
TLS trace: SSL_connect:error in error
TLS: cann't connect: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed (unable to get local issuer certificate).
ldap_err2string
ldap_sasl_bind(SIMPLE): Can't contact LDAP server(-1)
Cause
I certificati dell'Autorità di certificazione radice (rootCA) e CA intermedia (se utilizzati) non si trovano nell'archivio certificati attendibile, causando un errore di convalida del certificato.
Resolution
Procedura per risolvere il problema:
- Ottenere una copia della CA radice e della CA intermedia (se utilizzata) in formato PEM (Privacy-Enhanced Mail).
- Copiare i file PEM dal passaggio 1 nella cartella /etc/pki/trust/anchors/ .
- Dopo aver eseguito l'accesso come account root, eseguire il seguente comando:
update-ca-certificates
Additional Information
Procedura da seguire per esportare il certificato CA radice da una CA basata su Microsoft Windows:
- Accedere al server della CA radice con un account amministratore.
- Passare al pulsante Start, selezionare Esegui, digitare cmd e selezionare OK.
- Per esportare il server della CA radice in un nuovo nome file, eseguire il seguente comando:
certutil -ca.cert ca_name.cer
- Copiare il certificato nel server DPSearch.
- Accedere alla cartella in cui è stato copiato il file di certificato nel passaggio 4 precedente ed eseguire il comando openSSL per convertire il certificato in formato PEM:
# openssl x509 -in ca_ name.cer -inform der -out ca_name.pem -outform pem - Il file ca_name.pem è pronto per essere utilizzato per i passaggi menzionati nella precedente sezione Risoluzione.
Nei passaggi precedenti, sostituire ca_name con un nome che consenta di identificare il nome host.