我有两个服务器,一个作为网关/路由器,另一个作为服务器。我使用iptable转发以下端口:21、20、65500-65600。当我与Filezilla或Total Commander连接时,ftp客户端知道10.10.0.1表示内部IP地址并切换到外部IP地址。然而,来自NPPftp的Notepad++插件连接到服务器,但是当它切换到被动模式时,它会尝试内部IP地址并冻结。
220 ProFTPD x.x.x Server [10.10.0.1]
-> USER www
331 Password required for www
-> PASS *HIDDEN*
230 User www logged in
-> TYPE A
200 Type set to A
-> MODE S
200 Mode set to S
-> STRU F
200 Structure set to F
-> PWD
257 "/" is the current directory
Connected
-> CWD /
250 CWD command successful
-> PASV
227 Entering Passive Mode (10,10,0,1,255,222).
-> LIST -al
Failure retrieving contents of directory /是否有方法从iptables返回被动端口的外部IP地址?
发布于 2014-04-28 17:35:55
在doc http://www.proftpd.org/docs/howto/NAT.html中,有一个要使用的MasqueradeAddress地址,您需要定义允许的端口范围(或者像MadHatter所说的那样使用conntrack_ftp模块)。
发布于 2017-11-04 09:21:48
在新版本中,您不需要任何伪装。对于主动和被动传输的可能性,您需要在客户端和服务器端打开下一个端口:
然后更新FTP以使用被动端口范围60000-65535。然后,在客户端使用被动模式(万一NATed、IP),其他明智的主动模式也会工作。详细资料及指示- http://sysadm.pp.ua/linux/proftpd-ubuntu-16-04.html
https://serverfault.com/questions/591704
复制相似问题