小编Lif*_*ifz的帖子

为什么 vsftpd(防火墙后面)返回 pasv 地址的内部 IP 地址?

我在另一个 Debian 防火墙后面的 Debian 服务器上使用 vsftpd。natting 是正确的,我可以从外部连接到 ftp 服务器。但是,当客户端发出PASV命令时,ftp 服务器会返回其内部 IP (192.168.0.19)。

我没有pasv_address在conf文件中设置指令,因此“地址是从传入的连接套接字中获取的”(从手册中复制)。在我看来,当外部客户端发出时PASV,应该返回防火墙的外部IP地址,而当内部客户端连接时,应该返回内部FTP服务器的IP。

当我将pasv_address指令设置为防火墙的外部 IP 时,一切都在外部正常工作,但随后在内部中断。当我将其设置为内部 IP 地址或注释掉 时pasv_address,内部客户端可以工作,但外部客户端则不能。

有人有任何见解吗?

编辑1:这是服务器端日志文件:

Thu Sep  7 10:36:15 2017 [pid 9093] FTP command: Client "x.x.x.x", "USER yyy"
Thu Sep  7 10:36:15 2017 [pid 9093] [yyy] FTP response: Client "x.x.x.x", "331 Please specify the password."
Thu Sep  7 10:36:15 2017 [pid 9093] [yyy] FTP command: Client "x.x.x.x", "PASS <password>"
Thu Sep …
Run Code Online (Sandbox Code Playgroud)

nat ip ftp vsftpd

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

ftp ×1

ip ×1

nat ×1

vsftpd ×1