Heim >Java >javaLernprogramm >Wie kann die Wiederverwendung von TLS-Sitzungen für Datenverbindungen in FTPS mit Apache Commons Net beibehalten werden?

Wie kann die Wiederverwendung von TLS-Sitzungen für Datenverbindungen in FTPS mit Apache Commons Net beibehalten werden?

Barbara Streisand
Barbara StreisandOriginal
2024-11-09 07:25:02837Durchsuche

How to Maintain TLS Session Reuse for Data Connections in FTPS with Apache Commons Net?

So pflegen Sie eine TLS-Sitzung für die Datenverbindung in FTPS mit Apache Commons Net

Problem:

Herstellen einer Verbindung zu einem FTPS-Server, der eine Datenverbindung benötigt, um dieselbe TLS-Sitzung wie die Steuerverbindung über Apache Commons Net zu verwenden.

Lösung:

Anforderung :

Der Server muss die Wiederverwendung von TLS-Sitzungen für Datenverbindungen unterstützen.

Apache Commons Net Override:

Überschreiben Sie die _prepareDataSocket_-Methode in a Benutzerdefinierte FTPSClient-Implementierung zur Verwaltung der Sitzungswiederverwendung, ähnlich wie Cyberduck es in FTPClient.java tut.

JDK-Kompatibilität:

In Java 8u161 und höher ist die Sitzungswiederverwendung möglicherweise nicht möglich funktionieren standardmäßig. Um es zu aktivieren:

System.setProperty("jdk.tls.useExtendedMasterSecret", "false");

Alternative Implementierung:

Eine alternative Implementierung finden Sie in der folgenden Apache Commons Net JIRA-Ausgabe: https://issues.apache .org/jira/browse/NET-408.

Android-spezifische Überlegungen:

Umgehen Sie für Android SDK-Einschränkungen, um auf Reflexionsfelder für die Sitzungsverwaltung zuzugreifen: https: //issues.apache.org/jira/browse/NET-776.

Änderungen nach Java 8u161:

In neueren Versionen von Java sollte sessionByHostAndPort verwendet werden anstelle von sessionHostPortCache.

Das obige ist der detaillierte Inhalt vonWie kann die Wiederverwendung von TLS-Sitzungen für Datenverbindungen in FTPS mit Apache Commons Net beibehalten werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn