FTP:无法在 Windows 上使用 FileZilla 进行连接 - 503 数据连接失败

FTP:无法在 Windows 上使用 FileZilla 进行连接 - 503 数据连接失败

我在 IIS 8.5/Windows 7 工作站上安装了 FTP 服务器服务,并尝试使用档案从我的笔记本电脑(客户端 - Windows 8)。我尝试使用 FileZilla 上的网络向导配置网络设置,以下是输出。[为了保护隐私,我在输出中使用“x”屏蔽了 IP]

Connecting to probe.filezilla-project.org
Response: 220 FZ router and firewall tester ready
USER FileZilla
Response: 331 Give any password.
PASS 3.9.0.5
Response: 230 logged on.
Checking for correct external IP address
IP xxx.xxx.xxx.xxx bdj-bac-bgd-ic
Response: 200 OK
PREP 50307
Response: 200 Using port 50307, data token 860523756
PORT 139,102,163,82,196,131
Response: 200 PORT command successful
LIST
Response: 150 opening data connection
Response: 503 Failure of data connection.
Server sent unexpected reply.
Connection closed

我还尝试使用以下方式从笔记本电脑进行 FTPWindows PowerShell,我能够连接,但是当我尝试获取文件时,出现以下错误。

ftp> get file.jpg
200 PORT command successful.
125 Data connection already open; Transfer starting.
> .:No CSI structure available
550 Access is denied.
ftp: 131072 bytes received in 0.15Seconds 891.65Kbytes/sec.

然后我使用油灰,并尝试通过 FTP 连接到同一台服务器,一切正常。

我想让笔记本电脑上的 FileZilla 运行 FTP。可能缺少哪些配置设置?

答案1

看起来您正在使用 FTP 主动模式,这需要客户端上的额外端口来进行数据传输。 https://wiki.filezilla-project.org/Network_Configuration#Active_mode

您可以尝试使用被动模式或在客户端/网络上配置防火墙

答案2

无论您想使用主动还是被动 FTP,您都必须转发一些端口。区别仅在于使用哪些端口以及在连接的哪一侧。

Active将需要在客户端上转发端口,以便当客户端发出命令时,服务器可以连接到它进行数据连接PORT

Passive将需要在服务器上转发端口,以便客户端可以连接到服务器响应PASV命令的端口。

你可以阅读FTP 基础知识以获得两种方法和一般端口范围的概述。

根据在 IIS 中配置 ftp 防火墙设置为了设置被动端口范围,您应该FTP Firewall Support在服务器节点内选择并配置Data Channel Port Range选项。虽然该指南适用于 IIS 7.5,但相同的选项存在于 IIS 8.5 中

答案3

正如其他人提到的,您在向导中使用了主动模式。查看PORT日志中的命令,这就是用于主动模式的命令。对于被动模式,PASV将使用。在大多数情况下,使用主动模式不起作用,因为它要求您在 Windows 防火墙中打开一个端口范围以用于传入数据连接。请参阅我的文章主动和被动 FTP 模式的网络配置了解详情。

允许在失败时退回到其他传输模式向导中的选项显然只设置了 FileZilla 中的相应首选项选项(连接 > FTP > 传输模式)。这会影响以后的正常连接,但显然对向导本身没有影响(我在我的机器上得到了同样的结果)。

相关内容