1. FTP包含两种模式:Port主动模式、Passive被动模式。
FTP一般使用2个端口,一个是命令端口(默认为21),一个为数据端口(默认为20)。
主动模式:FTP客户端向FTP服务器端的命令端口请求,FTP客户端告知FTP服务器端自己的端口是多少,FTP服务器端的数据端口会连接FTP客户端的端口并进行数据传输。
被动模式:FTP客户端向FTP服务器端的命令端口请求,告知自己是被动模式,FTP服务器打开数据端口并告知FTP客户端,FTP客户端连接该FTP服务器数据端口并进行数据传输。
主动模式的缺点:当FTP客户端通过NAT接入公网时,因为防火墙或端口映射原因,FTP服务器端无法直接连接FTP客户端的端口。此时可以通过被动模式来实现数据的传输
2. 使用Filezilla Server设置Passive被动模式
2.1 可在以下网址下载最新的FileZilla Server并进行安装
https://filezilla-project.org/download.php?type=server
2.2 可以General settings中设置服务器的监听端口
2.3 可在Passive mode settings中设置被动模式使用的端口范围。
2.4 在Users->General中设置账户
2.5 在Shared folders中设置用户的文件夹及权限。
2.6 在防火墙中将FileZilla Server添加到允许接入
2.7 如果服务器端为私网地址,那么就需要在网关或路由器上进行端口映射。
注意:被动模式的数据端口映射前后要为同一端口,否则客户端无法连接到该端口,会造成可以正常登录但无法查看目录等后续操作。
2.8 可以在https://ftptest.net进行测试,或使用另一台主机进行测试。
原文地址:https://www.cnblogs.com/wahaha-ow/p/10841092.html