- FTP的主动模式和被动模式主要有以下区别:
- 主动模式(PORT模式):在这种模式下,FTP服务器会主动向客户端发起连接以传输数据。具体来说,客户端首先通过一个大于1024的端口N连接到服务器的21端口,然后服务器会开放20端口来主动连接到客户端指定的端口N+1以进行数据传输。
- 被动模式(PASSIVE模式):在这种模式下,服务器会等待客户端发起连接以传输数据。客户端首先通过一个大于1024的端口N连接到服务器的21端口,然后发送PASV命令告知服务器自己处于被动模式。服务器随后会开放一个大于1024的端口P,并将这个端口告诉客户端。客户端随后通过端口N+1连接到服务器开放的端口P以进行数据传输。
-
网络设置区别
主动模式下,客户端的FTP软件设置主动模式开放的端口段,在客户端的防火墙开放对应的端口段即可。
有一种常见问题是:服务器端只开放了21端口, 客户端机器没开放任何端口。FTP客户端连接采用的被动模式,结果客户端能登录成功,但是无法LIST列表和读取数据。很明显,是因为服务器端没开放被动模式下的随机端口导致。
由于被动模式下,服务器端开放的端口随机,但是防火墙要不能全部开放,解决的方案是,在ftp服务器配置被动模式下开放部分随机高位端口(范围在ftp服务器软件设置,可以设置任意1024上的端口段),然后在防火墙设置规则,开放服务器端相应的端口号即可。
FTP传输模式概述
最新推荐文章于 2024-09-30 09:51:27 发布