(Rozwiązane) Certyfikat błędu połączenia MySQL Weryfikacja nie powiodła się

(Rozwiązane) Certyfikat błędu połączenia MySQL Weryfikacja nie powiodła się

Błąd połączenia SSL: Błąd: 0A000086: SSL Procedury :: Certyfikat Verify nieudany błąd jest zwykle napotykany podczas ustanowienia połączenia SSL z serwerem MySQL. Konfigurowałem replikację między dwoma serwerami MySQL działającymi z MySQL wersją 8.0. Po skonfigurowaniu replikacji polecenie „Pokaż status niewolnika” w instancji Slave pokazuje mi następujący błąd:

Last_io_error: Błąd Łączenie się z master '[chronione e -mail]: 3306' - ponowne czas: 60 prób: 3 Komunikat: SSL Błąd połączenia: Błąd: 0A000086: SSL Procedury :: Certyfikat Verify nie powiodło się

Następnie próbowałem podłączyć serwer główny z niewolnika za pomocą wiersza poleceń z certyfikatem klienta. Ponownie otrzymałem następujący błąd z połączeniem:

Mysql -H 192.168.1.100 -U Rep_User -p - -Ssl -Ca =/etc/mysql/certs/ca.PEM--SSL-CERT =/ETC/MYSQL/CERTS/CLIENT-CERT.PEM--SSL-key =/etc/mysql/certs/klient.pem  
Wyjście Wprowadź hasło: Błąd 2026 (HY000): SSL Błąd: Błąd: 14090086: Procedury SSL: SSL3_GET_SERVER_CERTIFATE: 

Możliwe przyczyny

Ten błąd można wystąpić z kilku powodów. Oto kilka możliwych przyczyn:

  • Certyfikat SSL MySQL Server nie jest zaufany przez klienta, ponieważ jest samowystarczalny lub nie podpisany przez Urząd Świadectwa (CA), którym jest zaufany przez klienta.
  • Certyfikat SSL MySQL Server wygasł.
  • Certyfikat SSL MySQL Server nie jest odpowiednio skonfigurowany.
  • Klient używa starej wersji biblioteki klientów MySQL, która nie obsługuje certyfikatu SSL serwera.

Rozwiązanie

  1. Sprawdź, czy oba zegary systemowe są zsynchronizowane.
  2. Następnie zweryfikuj certyfikat klienta i serwera za pomocą pliku CA i upewnij się, że wszystko jest w porządku. Użyj następującego polecenia, aby zweryfikować certyfikaty:
    openSsl Verify -Cafile CA -CERT.PEM Server-CERT.PEM Client-CERT.pem  CERT SERWER.PEM: OK Client-Cert.PEM: OK 
  3. Pamiętaj, aby ustawić inny „Nazwa zwyczajowa (FQDN)” dla certyfikatu CA i certyfikatu głównego/klienta.
  4. Sprawdź stan zmiennych SSL/TLS, wpisując. Upewnij się, że serwer używany jest prawidłowy certyfikat.
    „> Pokaż zmienne takie jak„%SSL%”;  
    Wyjście +--------------------------------- +---------- ------------------------+ | have_openssl | Tak | |. have_ssl | Tak | |. SSL_CA | /etc/mysql/certs/ca-CERT.PEM | |. SSL_CAPATH | |. |. SSL_CERT | /etc/mysql/certs/serwer-CERT.PEM | |. ssl_cipher | |. |. SSL_CRL | |. |. ssl_crlpath | |. |. SSL_FIPS_MODE | Off | |. ssl_key | /etc/mysql/certs/serwer-key.PEM | |. ssl_session_cache_mode | Na | |. ssl_session_cache_timeout | 300 | +---------------------------------+----------- -----------------------+ 27 wierszy w zestawie (0.01 s) 
  5. Na koniec upewnij się, że używasz poprawnej nazwy użytkownika, nazwy hosta i hasła do połączenia.

Wniosek

Podsumowując, „Błąd połączenia SSL: Błąd: 0A000086: SSL Procedury :: certyfikat Verify Błąd nieudany” Może wystąpić podczas ustanowienia połączenia SSL z serwerem MySQL z kilku powodów, w tym niezaufany lub wygasł certyfikat SSL, błędnie skonfigurowany certyfikat SSL lub przestarzałą bibliotekę klientów MySQL. Aby rozwiązać ten błąd, możesz zaimportować certyfikat SSL serwera do sklepu zaufania klienta, odnowić certyfikat SSL, sprawdź konfigurację SSL serwera lub zaktualizować bibliotekę klientów MySQL do nowszej wersji, która obsługuje certyfikat SSL serwera SSL.