![FTP 可在 LAN 上访问,但无法通过公共 IP 地址上的端口转发 WAN 访问](https://linux22.com/image/780517/FTP%20%E5%8F%AF%E5%9C%A8%20LAN%20%E4%B8%8A%E8%AE%BF%E9%97%AE%EF%BC%8C%E4%BD%86%E6%97%A0%E6%B3%95%E9%80%9A%E8%BF%87%E5%85%AC%E5%85%B1%20IP%20%E5%9C%B0%E5%9D%80%E4%B8%8A%E7%9A%84%E7%AB%AF%E5%8F%A3%E8%BD%AC%E5%8F%91%20WAN%20%E8%AE%BF%E9%97%AE.png)
我已经多次处理过这个问题,每次处理时都无法找到解决方案。我搜索过这些论坛、我的防火墙论坛,并与一些防火墙管理员合作,以及与制造商支持人员合作。我有许多 Reolink E1 Zoom 摄像头,它们在本地(site1)和远程(site2)都具有 FTP 功能。这些摄像头不支持 SFTP。在与防火墙论坛上的人员合作时,防火墙似乎没有阻止任何东西,因为所有规则都是正确的,我们可以看到到服务器的流量。
- 我有一个本地托管的 FTP 服务器(Windows Server 2016),我想将所有摄像机 FTP 文件发送到位于我的 pfSense 防火墙后面的服务器。
- 我已将 FTP 服务器设置为以被动模式绑定到端口 50022,并配置了端口 49152-65534。
- 我有一个 NAT 端口转发规则设置为任何源地址或目标地址,源或目标端口 50022、端口 49152-65534 以及我的本地 LAN FTP 服务器(site1)的 NAT IP。
- 如果我指向远程设备 (site2) 的公共 IP 地址,我仍会收到 FTP 测试失败的信息,并且我在 wireshark 捕获中(在托管 FTP 的服务器上)只看到 3 个与源 IP 地址隔离的流量包。流量来自正确的端口 50022,有 1 个 syn,然后有 2 个重新传输的 syn 包。Wireshark 捕获的屏幕截图我从未看到服务器向远程 (site2) 发出 syn/ack 响应。它与本地设备配合良好。
- 我尝试过禁用 tcp 时间戳,正如一些人建议的那样,我确保 TCP V6 已关闭,我已禁用服务器端窗口缩放。最初我使用的是 IIS FTP,后来我改用 Filezilla,结果相同。有什么想法吗?
谢谢你,