Aus Gründen der Abwärtskompatibilitätsgründen Ich brauche einen Geode Jetty Server TLSv1 zu verwenden und nicht 1.1 oder 1.2Make Geode verwenden TLSv1
Mit ssl-enabled-components=web
und ssl-protocols=TLSv1.0
Satz in gemfire.properties
dann, wenn ich die Geode starten und überprüfen Sie die HTTPS-Verbindung mit SSL Labs dann ich erhalte eine TLS Ergebnis:
ich für die TLS 1.1 und TLS 1.0 prüft Suche auch Yes
sagen nicht No
Die Geode SSL docs sagen Make sure your Java installation includes the JSSE API and familiarize yourself with its use.
Das JSSE ist über die java.security
config in der JRE/lib/security. Ich habe dies eingestellt, um keine Sicherheitsalgorithmen zu deaktivieren und Geode neu gestartet, aber die Ergebnisse sind die gleichen. TLS 1.1 und 1.0 schlagen den SSL Labs-Test oben fehl.
Gibt es eine Möglichkeit, Geode zum Starten mit https.protocols=TLSv1
zu zwingen?
Wenn ich versuche, einen Lokator zu beginnen, dass die Verwendung --J=-XX:https.protocols=TLSv1
dann bekomme ich
Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit. Unrecognized VM option 'https.protocols=TLSv1'
Es gibt keine separate Jetty Config ich finden kann ...
aktualisieren--J=-Dhttps.protocols=TLSv1
ist die korrekte Einstellung, um der JVM TLS-Protokolle zuzuweisen und die beim Starten von Geode-Locator und -Server funktioniert.
aktualisiert Wenn ich java.security
jdk.tls.disabledAlgorithms=TLSv1.1, TLSv1.2
like the opposite of this Einstellung gesetzt, dann ist es nicht möglich, alle über HTTPS mit dem Jetty-Server zu kommunizieren. Das lässt mich denken, dass die Geode/Jetty ssl-protocols=TLSv1.0
Einstellung auch nicht gilt?
Die Jetty config sagt TLS v1.0, v1.1 and SSL v3 are no longer supported by default. If your Jetty implementation requires these protocols for legacy support, they can be enabled manually.
Gibt es eine Möglichkeit Jetty mit Geode zu konfigurieren?
Für einen Anfang, ich denke, Sie möchten '--J = -Dhttps.protocols = TLSv1' verwenden. Ich habe das kürzlich auch angeschaut und konnte kein spezifisches Protokoll verwenden (SSL in meinem Fall). Ich ging jedoch nicht so weit, irgend etwas in der JRE-Datei 'java.security' zu ändern. AFAIK, die TLS-Versionen sind abwärtskompatibel, also sollte Ihr Server immer die neueste Version unterstützen. –
@JensD danke das '--J = -Dhttps.protocols = TLSv1' startet jetzt. Das Problem ist, wenn ich das HTTPS (über Anlegestelle) mit [SSL Labs] (https://www.ssllabs.com/ssltest/analyze.html) teste, dann kommt es immer noch als nur TLS 1.2 und nicht TLS 1.1 oder 1.0 so ist es wie die [Jetty config] (https://www.eclipse.org/jetty/documentation/9.4.x/configuring-ssl.html) gibt es eine Möglichkeit, Jetty in Geode einzurichten Ich kann keine Konfiguration finden Datei... ? – rupweb
Ich verstehe nicht wirklich, warum Sie die Server-TLS-Version herabstufen sollten, wenn der Server bereits verschiedene niedrigere versionierte Clients unterstützt. Unabhängig davon, bitte beachten Sie, dass wir die Version von Jetty auf 9.4 aktualisieren werden, wodurch die Unterstützung für TLSv1.1 und darunter vollständig eingestellt wird. Für die aktuellen Besonderheiten der Einstellung des Protokolls in Jetty tun wir das hier: https://github.com/apache/geode/blob/d16d192b22f2932ac95780f18e92f0aece730240/geode-core/src/main/java/org/apache/geode/management/ intern/JettyHelper.java # L86 –