Press "Enter" to skip to content

vsftpd设置被动模式遇到的坑

FTP被动模式设置完成以后,一直卡在

227 Entering Passive Mode (192,168,150,90,195,149)

解决办法:

在被动模式,服务器做了NAT,例如云主机,这时候我们用特定的IP访问机器,其实还转了一层。FTP客户端访问机器可能会没响应。具体情况为登录成功,但是list目录和文件的时候卡住。

这时候我们用lsof -i:21

vsftpd   22411   nobody    0u  IPv4  68905      0t0  TCP 10.140.41.65:ftp->10.10.10.98:43380 (ESTABLISHED)
vsftpd   22411   nobody    1u  IPv4  68905      0t0  TCP 10.140.41.65:ftp->10.10.10.98:43380 (ESTABLISHED)

这时候可以看到机器的真正IP。

我们需要设置

pasv_address=本机ip【就是我们能访问的外网IP】
pasv_addr_resolve=yes

这样ftp客户端就可以解析IP,访问成功。

One Comment

  1. Ryan Gee Ryan Gee 5月 31, 2021

    太感谢了 搜了好多CSDN,都没卵用,还是您的这个有效,阿里云等云平台一言难尽。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注