与 FileZilla FTP 服务器的连接正常,但目录列表失败

与 FileZilla FTP 服务器的连接正常,但目录列表失败

我正在尝试在家中设置本地 FTP 服务器。每当我连接到托管服务器的计算机上的帐户时,一切正常,但当我尝试在另一台计算机上连接时,即使帐户连接成功,目录列表也会失败。我已允许端口 21 TCP 和 UDP 通过主机的防火墙,并将 FileZilla Server 添加到允许通信的程序列表中。我该如何解决这个问题?

答案1

虽然这个问题很老了,但并没有真正全面的答案。所以我加了一个。

在被动 FTP 模式(目前最常见的模式)中,FTP 服务器在端口 21 上侦听 FTP 控制连接。但对于所有数据传输(包括目录列表),它都会侦听另一个端口。该端口是从配置的端口范围中挑选出来的。

如果您只打开防火墙上的 21 控制端口,则会出现上述情况。您可以连接,但无法列出目录或传输文件。

有关详细信息,请参阅我的文章被动 FTP 模式的网络配置

你必须去控制面板 > 系统和安全 > Windows 防火墙 > 高级设置 > 入站规则 > 新规则并为您的 FTP 服务器正在使用的数据端口范围添加新的入站规则。

防火墙入站规则端口

FileZilla FTP 服务器使用的端口范围配置在编辑 > 设置 > 被动模式设置 > 使用自定义端口范围。您可以配置一个较窄的范围(例如 10 个端口),以限制打开的端口数量。您应该使用 1024 及以上的端口号(最多 65535)。

FileZilla 被动自定义端口范围

答案2

FTP 需要的端口不止 21(而且它不需要 UDP)。数据连接的端口是动态的。如果服务器位于防火墙后面,则应尝试主动 FTP 模式;如果客户端位于防火墙后面,则应尝试被动模式。如果两者都位于限制性防火墙后面,而防火墙无法将 FTP 作为特殊协议,那么您就没那么幸运了。

答案3

尝试将传输模式更改为“主动”。

要解决此 FTP 错误,请按照以下步骤操作:

  1. 打开 Filezilla,转到“编辑”->“设置”
  2. 点击连接 -> FTP:选择活动
  3. 点击连接 -> FTP -> 主动模式:选择“向操作系统询问外部 IP 地址”
  4. 点击连接 -> FTP -> 被动模式:选择回退到主动模式

按照网址中的步骤操作:FTP 错误“无法检索目录列表”

答案4

或者通过打开站点管理器来创建帐户。

单击主机中的新站点,使用您的主机名。选择正常的登录类型。提供您的用户名和密码。

协议使用ftp和加密:仅使用palin ftp

相关内容