我尝试配置 vsftpd 以在被动模式下工作,但没有成功。我按照问题答案中给出的说明进行操作如何配置 vsftpd 以使用被动模式我也关注了本文他们在那里解释了如何准确设置 vsftpd,我在全新安装的 Ubuntu Server 14.04.3 上完成了此设置。
调用后我的iptables
看起来像这样iptables --list
:
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpts:40000:40100
我尝试重新启动 vsftpd 服务并且也重新启动了服务器但没有变化。
我能够从浏览器以及 Windows 资源管理器登录并浏览/编辑文件,但是当我尝试使用ftp
Windows 命令行命令连接到服务器时,我登录并在发出命令(例如ls
)后,它说
200 PORT 命令成功。请考虑使用 PASV。
并卡在那里(因为我没有在防火墙中启用任何东西,所以没关系)。
为什么我的 vsftpd 没有以被动模式运行?有什么原因吗?
谢谢
答案1
Windows 命令行 FTP 客户端不支持被动模式。您无法通过任何服务器端配置来修复此问题。
如果您需要支持被动模式的可编写脚本的 Windows FTP 客户端,则必须使用其他客户端。
例如我的WinSCP FTP 客户端支持脚本并默认为被动模式。
这里有一份指南将 Windows FTP 脚本转换为 WinSCP 脚本。