Apache Commons Net을 사용하여 FTPS에서 데이터 연결을 위한 TLS 세션을 유지하는 방법
문제:
Apache를 사용하여 제어 연결과 동일한 TLS 세션을 사용하기 위해 데이터 연결이 필요한 FTPS 서버에 연결 Commons Net.
해결책:
요구 사항:
서버는 데이터 연결을 위해 TLS 세션 재사용을 지원해야 합니다.
아파치 커먼즈 넷 재정의:
Cyberduck이 FTPClient.java에서 수행하는 작업과 유사하게 사용자 정의 FTPSClient 구현에서 _prepareDataSocket_ 메서드를 재정의하여 세션 재사용을 관리합니다.
JDK 호환성:
Java 8u161 이상에서는 세션 재사용이 가능합니다. 기본적으로 작동하지 않습니다. 활성화하려면:
System.setProperty("jdk.tls.useExtendedMasterSecret", "false");
대체 구현:
대체 구현은 다음 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에서는 sessionHostPortCache 대신에 sessionByHostAndPort를 사용해야 합니다.
위 내용은 Apache Commons Net을 사용하여 FTPS에서 데이터 연결을 위한 TLS 세션 재사용을 유지하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!