问题是我无法从运行在 ubuntu 上的 ftp 服务器下载或列出文件。当我从我的 windows 机器上尝试时,没有问题,但是当我从运行在 windows 机器上的 linux-parrot VM 上尝试时,我只能访问和移动 ftp 服务器内的目录,但是当我尝试使用 ls 或 get 时,只会显示下一条消息:
ftp> ls -l 200 PORT 命令成功。考虑使用 PASV。
并且服务器不再响应。
我已经检查过我的 Linux VM 上的 fw 已被禁用。
有谁知道如何解决这个问题?
答案1
您的 VM 很可能位于 NAT 后面,并且本质上与您的 Windows 机器位于不同的网络上,或者运行了某种阻止请求的防火墙。
您可以
- 用作
PASV
在 FTP 服务器上执行任何操作之前运行的第一个命令。这将启用“被动”模式,您的计算机会告诉服务器“您不能直接与我的端口通信,我将启动和管理所有下载”。请参阅主动 FTP 与被动 FTP。根据您使用的客户端,在设置中启用被动模式。 - 更改虚拟机设置中的网络类型。通常,虚拟机会进行 NAT 以将其与网络隔离,并使用主机作为网关以允许其访问互联网。根据您的虚拟机主机软件,您可能需要启用“桥接”模式。