如何使用Apache Commons Net 維護FTPS 中數據連接的TLS 會話
問題:
連接到需要資料連接的FTPS 伺服器以使用與控制項相同的TLS會話使用 Apache Commons Net 連線。
解決方案:
要求:
伺服器必須支援資料連線的TLS 會話重複使用.
伺服器必須支援資料連線的TLS 會話重複使用.伺服器必須支援資料連線的TLS 會話重複使用.
伺服器必須支援資料連線的TLS 會話重複使用.
伺服器必須支援資料連線的TLS 會話重複使用.伺服器必須支援資料連線的TLS 會話重用>
Apache Commons Net重寫:System.setProperty("jdk.tls.useExtendedMasterSecret", "false");重寫自訂 FTPSClient 實作中的 _prepareDataSocket_ 方法來管理會話重複使用,類似於 Cyberduck 在其 FTPClient.java 中所做的操作。
JDK 相容性:
在 Java 8u161 及更高版本中,會話重複使用可能不會預設工作。要啟用它:替代實作:
替代實作可以在以下Apache Commons Net JIRA 問題中找到:https://issues.apache .org /jira/browse/NET-408.
Android特定注意事項:對於 Android,繞過 SDK 限制來存取會話管理的反射欄位:https://issues.apache.org/jira/browse/NET-776。 Java 8u161 後的變更:在較新版本的 Java 中,sessionByHostAndPort 應該是用來取代 sessionHostPortCache。以上是如何使用 Apache Commons Net 維護 FTPS 中資料連線的 TLS 會話重複使用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!