Kolleger rapporterte at et Java-program nylig rapporterte en feil med følgende logg:
Forårsaket av: com.coho.cloud.data.exception.BizException: I/O-feil på GET-forespørsel for "https://itsvse:88/rest/api": Servervalgte protokollversjon TLS10 aksepteres ikke av klient preferanser [TLS12]; nestet unntak er javax.net.ssl.SSLHandshakeException: Servervalgte protokollversjon TLS10 aksepteres ikke av klientpreferanser [TLS12] Søk på nettet for å finne årsakenDet kan hende at den nye versjonen av JDK ikke anbefaler bruk av den gamle TLSV1.0-protokollen, så støtte for TLS10 fjernes som standard。
Logg inn på serveren for å se de historiske kommandoene som ble utført, og se at oppdateringsoperasjonen er utført, som vist i følgende figur:
Sjekk ut JDK-versjonen, som følger:
OpenJDK-versjon "1.8.0_292" OpenJDK Runtime Environment (bygg 1.8.0_292-8u292-b10-0ubuntu1~16.04.1-b10) OpenJDK 64-bit Server VM (bygg 25.292-b10, blandet modus)
Bruk følgende kommando for å se installasjonsadressen til JDK-en og det lastede innholdet:
Finn filen /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/security/java.security, som bare er en myk lenke, den faktiske filadressen er: /etc/java-8-openjdk/security/java.security, redigerjava.sikkerhetFil.
Opprinnelig konfigurasjon:
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 Endringene er som følger:
Server på nytt, kjør Java-programmet på nytt.
(Slutt)
|