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