我正在使用 JSch 作为 SFTP 客户端,现在由于某些安全限制,我需要启用被动模式。
但我找不到启用被动模式的方法。
有人可以告诉我该怎么做吗?
“被动模式”是 FTP 协议的一个特色。
在每个单独文件的正常 FTP 模式下,客户端侦听端口并且服务器必须连接到该端口。由于许多防火墙仅支持传出连接,因此添加了被动模式 - 此处客户端连接到服务器以获取单个文件。
SFTP 是一个完全独立于 FTP 的协议——它还支持通过网络传输文件,但这已经是相似之处的终结。一切(命令和数据)都在同一个 SFTP 通道中传输,通常(当然如果使用 JSch)又是通过 TCP 传输的 SSH 连接的一部分。这个单一的 TCP 连接总是由客户端启动,因此防火墙应该没有问题,如果它们不完全阻止 SSH。
如果您对“安全性限制”(无论如何)有疑问,它肯定不依赖于这里的 SFTP 模式。如果您在问题中添加必要的信息,我们也许可以在这里为您提供帮助。
SFTP 协议没有被动模式 - 它通过一个已建立的连接运行所有内容(命令和数据)。