欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

NAT后的vsftp访问

程序员文章站 2022-07-01 13:54:56
...

ftp下载提示ftp: bind: Address already in use

生成环境中遇到的问题,由于vsftp服务器为内网服务器,通过端口映射对外暴露端口。在映射出ftp的连接端口和数据传输端口后,ftp可以正常登陆,但获取数据时报错“500 Illegal PORT command. ftp: bind: Address already in use”

按网上的解决办法仍然不行,根据提示怀疑是因为NAT后,客户端回源时查找的是服务端内网地址导致无法连接:
ftp> quote pasv
227 Entering Passive Mode (192,168,0,112,164,248).
ftp> passive
Passive mode on.

正确解决办法

最后在google找到解决方案,直接在ftp中更改pasv_address配置,配置为公网地址即可,但如此配置后,将无法直接使用内网地址连接ftp

pasv_enable=YES
listen_port=***
pasv_min_port=***    (Default: 0 (use any port) ) pasv使用的最小端口
pasv_max_port=***   (Default: 0 (use any port) ) pasv使用的最大端口
pasv_address=公网地址  (Default: (none - the address is taken from the incoming connected socket) ) pasv模式中服务器传回的ip地址
相关标签: vsftp NAT

上一篇: NAT

下一篇: 如何查询自己的公网IP