[英]Java SSLSocket reuse session for different port
我正在使用 org.apache.commons.net.ftp.FTPSClient 从外部 ftp 服务器下载文件。 这台服务器不是我管理的,它配置了选项“ require_ssl_reuse ”。 这意味着,据我所知,必须使用相同的会话进行命令和数据连接。
对于命令连接,使用端口 21,但对于数据,端口是从未使用的端口范围中选择的。 因此,当成功连接到服务器后,我尝试 yo list directory 由于此限制而关闭连接。
在内部,java 客户端使用 SSLSockets。 是否可以为相同的 IP 但不同的端口重用 SSLSession? 有人知道支持ssl会话重用的java客户端吗?
提前致谢!
我找到了解决办法! 它是来自 Cyberduck 核心的FTPClient 类。 它从 org.apache.commons.net 扩展 FTPSClient 并重用 Session 使用 java 反射将其注入 SSLSocket。
SSL 会话不绑定到特定端口,并且 JSSE 已经支持会话恢复。
这应该是开箱即用的。
你有证据证明不是吗?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.