NetWorker: Integrace serveru LDAPS se nezdaří a zobrazí se chyba "Došlo k chybě handshaku SSL při pokusu o připojení k serveru LDAPS: Unable to find valid certification path to requested target".
Summary: Pokoušíte se spustit příkaz/skript authc_config pro přidání externího ověřování AD/LDAPS pomocí nástroje NetWorker. Váš certifikát LDAPS CA byl importován do úložiště klíčů JAVA cacerts, ale zobrazuje se chybová zpráva "Při pokusu o připojení k serveru LDAPS došlo k chybě handshake SSL: unable to find valid certification path to requested target". ...
Symptoms
"Při pokusu o připojení k serveru LDAPS došlo k chybě handshaku SSL: unable to find valid certification path to requested target"
- Pokoušíte se spustit příkaz/skript authc_config pro přidání externího ověřování AD/LDAPS pomocí nástroje NetWorker.
- Je možné úspěšně integrovat protokol AD/LDAP (bez protokolu SSL) se softwarem NetWorker. Problém se objevuje pouze při integraci protokolu SSL (LDAPS).
- Váš certifikát LDAPS CA byl importován do úložiště klíčů JAVA cacerts.
- Ve svém prostředí používáte "řetěz certifikátů".
Cause
K tomuto problému dochází, protože do úložiště klíčů Java trust byl importován pouze řetězový certifikát. V případě řetězu certifikátů by všechny certifikáty v řetězci měly být správně importovány do úložiště klíčů Java ve správném pořadí řetězu (nižší řetězec ke kořenovému certifikátu). Jakýkoli problém při importu certifikátu by vedl k selhání ověření certifikátu.
To se identifikuje při spuštění příkazu openssl ze serveru NetWorker na server LDAPS:
OPENSSL_INSTALL_PATH\bin> openssl s_client -showcerts -connect ldaps-server.lab.emc.local:636 CONNECTED(00000124) depth=1 DC = LOCAL, DC = EMC, DC = LAB, CN = LDAPS-SERVER --- Certificate chain 0 s:/CN=LDAPS-SERVER.LAB.EMC.LOCAL i:/DC=LOCAL/DC=EMC/DC=LAB/CN=ROOTCA-SERVER -----BEGIN CERTIFICATE----- << removed for brevity >> -----END CERTIFICATE----- 1 s:/DC=LOCAL/DC=EMC/DC=LAB/CN=ROOTCA-SERVER i:/CN=ROOTCA-SERVER -----BEGIN CERTIFICATE----- << removed for brevity >> -----END CERTIFICATE-----
Resolution
Chcete-li vyřešit chybu certifikátu, postupujte podle níže uvedených pokynů:
1. Odeberte všechny dříve importované certifikáty z úložiště klíčů java cacerts Trust.
Procesy v tomto článku znalostí využívají příkaz Java keytool . Může být nutné změnit adresář (cd) na adresář bin Java. To se může lišit v závislosti na instalaci jazyka Java a operačním systému. Příkaz keytool naleznete v adresáři bin instalace Java. Většina implementací NetWorker používá prostředí NetWorker Runtime Environment (NRE) pro prostředí Java.
- Linux: /opt/nre/java/nejnovější/bin
- Windows: C:\Program Files\NRE\java\jre#.#.#_###\bin
JAVA_INSTALL_PATH\bin> keytool -list -keystore "JAVA_INSTALL_PATH\lib\security\cacerts" -storepass changeit | findstr LDAPS-SERVER
ldaps-server, DATE-IMPORTED, trustedCertEntry,
JAVA_INSTALL_PATH\bin> keytool -list -keystore "JAVA_INSTALL_PATH\lib\security\cacerts" -storepass changeit | findstr ROOTCA-SERVER
rootca-server, DATE-IMPORTED, trustedCertEntry,
- Servery LDAPS-SERVER a ROOTCA-SERVER slouží pouze jako příklady. Tyto hodnoty je nutné nahradit aliasy, které odpovídají vašemu serveru LDAPS a kořenovému serveru CA (obvykle se používá název hostitele).
- I když se certifikáty nezobrazují při použití příkazu findstr/grep. Zkontrolujtevýstup bez zúžení výsledků, abyste ověřili, že se na serveru LDAPS A/NEBO kořenovém serveru CA nenachází žádné aliasy. Nástroj findstr byl ve výše uvedeném příkladu stručně použit.
- Výchozí storepass pro úložiště klíčů Java cacerts Trust je "changeit".
- Nahraďte JAVA_INSTALL_PATH úplnou cestou k instalaci jazyka Java.
- Pro odebrání certifikátů z umístění authc.truststore a/nebo authc.keystore zadejte úplnou cestu k těmto souborům pro -keystore a heslo NetWorker authc pro -storepass. Heslo NetWorker authc keystore je konfigurováno během instalace nástroje NetWorker.
- Linux:
- /opt/nsr/authc-server/conf/authc.truststore
- /nsr/authc/conf/authc.keystore
- Windows:
- C:\Program Files\EMC NetWorker\nsr\authc-server\conf\authc.truststore
- C:\Program Files\EMC NetWorker\nsr\authc-server\tomcat\conf\authc.keystore
- Linux:
Pokud se zobrazí certifikát, musíte jej odstranit (v opačném případě přejděte k dalšímu kroku):
keytool -delete -alias ALIAS_NAME -keystore "PATH_TO_CACERTS_FILE" -storepass PASSWORD
Příklad:
JAVA_INSTALL_PATH\bin> keytool -delete -alias LDAPS-SERVER -keystore ..\lib\security\cacerts -storepass changeit
JAVA_INSTALL_PATH\bin> keytool -delete -alias ROOTCA-SERVER -keystore ..\lib\security\cacerts" -storepass changeit
2. Připojte se k serveru LDAPS pomocí nástroje openssl:
openssl s_client -showcerts -connect LDAPS_SERVER:636
Příklad:
OPENSSL_INSTALL_PATH\bin> openssl s_client -showcerts -connect ldaps-server.lab.emc.local:636
CONNECTED(00000124)
depth=1 DC = LOCAL, DC = EMC, DC = LAB, CN = LDAPS-SERVER
---
Certificate chain
0 s:/CN=LDAPS-SERVER.LAB.EMC.LOCAL
i:/DC=LOCAL/DC=EMC/DC=LAB/CN=ROOTCA-SERVER
-----BEGIN CERTIFICATE-----
<< removed for brevity >>
-----END CERTIFICATE-----
1 s:/DC=LOCAL/DC=EMC/DC=LAB/CN=ROOTCA-SERVER
i:/CN=ROOTCA-SERVER
-----BEGIN CERTIFICATE-----
<< removed for brevity >>
-----END CERTIFICATE-----
3, a. Zkopírujte řetězový certifikát včetně -----BEGIN CERTIFICATE----- záhlaví a -----END CERTIFICATE----- zápatí do textového souboru, např. chain.cer
3, b. Zkopírujte kořenový certifikát včetně záhlaví -----BEGIN CERTIFICATE----- a -----END CERTIFICATE----- zápatí do textového souboru, např. root.cer
4. Importujte řetězový certifikát do důvěryhodného úložiště klíčů Java cacerts a importujte všechny certifikáty vedoucí k kořenovému certifikátu:
Příklad:
JAVA_INSTALL_PATH\bin> keytool -import -alias LDAPS-SERVER -keystore "JAVA_INSTALL_PATH\lib\security\cacerts" -storepass changeit -file "PATH_TO\chain.cer"
<< removed for brevity >>
Trust this certificate? [no]: y
Certificate was added to keystore
JAVA_INSTALL_PATH\bin> keytool -import -alias ROOTCA-SERVER -keystore "JAVA_INSTALL_PATH\lib\security\cacerts" -storepass changeit -file "PATH_TO\root.cer"
<< removed for brevity >>
Trust this certificate? [no]: y
Certificate was added to keystore
- Nahraďte hodnoty aliasů aliasy, které odpovídají vašemu prostředí, například název hostitele serveru LDAPS a CA.
- Nahraďte PATH_TO úplnou cestou k umístění souborů, které jste vytvořili pro soubory chain.cer a root.cer.
- Zajistěte, aby během importu nedošlo k žádným dalším chybám.
5. Restartujte služby NetWorker. Služba authc při spuštění načte úložiště klíčů cacerts:
Linux: nsr_shutdown
systemctl start networker
Windows: net stop nsrd /y &&net start nsrd
6. Dokončete integraci protokolu LDAPS:
NetWorker: Jak nakonfigurovat protokol "AD over SSL" (LDAPS) z webového uživatelského rozhraní NetWorker (NWUI)
Networker: Postup konfigurace ověřování LDAPS.