我已经彻底研究了这个主题,了解什么是主动模式以及为什么我会遇到这个臭名昭著的425 Can't open data connection.错误,但在互联网上的所有文档、教程和论坛都没有产生任何解决方案之后,我决定来这里进行最后一次破解。
通过各种方式(在底部解释),我已经能够远程连接到该服务器,但只能通过被动连接。我无法使用活动模式进行连接 - FileZilla 客户端默认使用该模式(至少在我的情况下)。
服务器运行 Windows 8 和 FileZilla 服务器(XAMPP 包的一部分)并使用端口:
这些端口在路由器的 NAT 和 Windows 防火墙中都打开。
这些是服务器的设置

这些是客户端的设置

在被动模式下,也会选择回退到主动模式
出于显而易见的原因,本地连接有效但远程连接无效。
值得一提 - ftptest.net将连接报告为SUCCESS,但是我发现它使用 PASV 模式连接到服务器。我已经把这个成功连接的日志放在pastebin 上以供参考。这再次使用基于 TLS 的隐式 FTP。标准 FTP 连接确实可以使用此网站(而不是通过我自己的连接方式)工作,但我在服务器中禁用了它们,仅强制 SSL/TLS 连接。
FTP 有一个控制连接和一个数据连接。控制连接是从客户端到服务器启动的,因此通常不会出现问题,但数据连接不同:
PORTorEPRT命令内发送。如果客户端处于主动模式下将无法工作,因为客户端使用服务器无法访问的 IP 地址。类似的问题是如果客户端在防火墙后面,因为来自外部的连接将被简单地阻止。只有 FTP 感知防火墙可能会使用特殊的帮助程序来管理活动连接(这些将不适用于 FTPS)。PASVorEPSV命令的响应中发送。客户端的 NAT 没有问题,通常防火墙也没有问题。但是如果服务器本身在防火墙或 NAT 后面,就会出现问题。简而言之:被动模式在大部分时间都有效,而主动模式仅在客户端拥有公共地址时才有效。但是对于路由器后面的客户端(在家中,公共热点......)并且通常不在移动网络中,情况并非如此。
| 归档时间: |
|
| 查看次数: |
55472 次 |
| 最近记录: |