Kolegové uvedli, že jeden Java program nedávno hlásil chybu s následujícím logem:
Způsobeno: com.coho.cloud.data.exception.BizException: I/O chyba při GET požadavku pro "https://itsvse:88/rest/api": Server vybraná verze protokolu TLS10 není klientem přijata preference [TLS12]; Vnořená výjimka je javax.net.ssl.SSLHandshakeException: Verze protokolu vybraná serverem TLS10 není přijata preferencemi klienta [TLS12] Hledejte na internetu důvodMůže se stát, že nová verze JDK nedoporučuje používat starý protokol TLSV1.0, takže podpora TLS10 je ve výchozím nastavení odstraněna。
Přihlaste se na server, abyste si prohlédli historické provedené příkazy, a zjistili, že aktualizace byla provedena, jak je znázorněno na následujícím obrázku:
Podívejte se na verzi JDK, která zní:
OpenJDK verze "1.8.0_292" OpenJDK Runtime Environment (build 1.8.0_292-8u292-b10-0ubuntu1~16.04.1-b10) OpenJDK 64-Bit Server VM (build 25.292-b10, smíšený režim)
Použijte následující příkaz pro zobrazení instalační adresy JDK a načteného obsahu:
Najděte soubor /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/security/java.security, což je jen měkký odkaz, skutečná adresa souboru je: /etc/java-8-openjdk/security/java.security, upravitjava.securitySoubor.
Původní uspořádání:
jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1, RC4, DES, MD5withRSA, \ DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, \ include jdk.disabled.namedCurves Změny jsou následující:
Znovu serverujte, znovu spusťte Java program.
(Konec)
|