一个看似简单的问题让我感到困惑:当我通过 VPN 连接到我的远程网络时,我无法通过 FTP 连接到我的 FTP 服务器 - 但我可以做其他所有事情(包括远程桌面)。
我已尝试完全禁用远程防火墙,并且可以成功 ping FTP 服务器,但仍然无法通过 FTP 连接到该服务器。
如果我使用命令提示符,我会得到:
ftp> open 10.0.2.1
已连接到 10.0.2.1。
远程主机已关闭连接。
我以为可能是防火墙的问题...但显然不是。还有什么可以阻止它?
它是Windows Server 2008 R2机器运转微软 IIS7(当然)。在机器上我可以导航到ftp://本地主机并查看文件,但当我通过 VPN 在“本地”时,我无法做到这一点。
谢谢您的帮助,我相信这真的很简单......!
答案1
如果您可以连接,则表明端口 21 已打开。然而,这并不是所需的全部,因为端口 21 只是控制端口,FTP 服务器会打开其他端口进行实际数据传输。查看防火墙配置中是否有可以解除对整个 FTP 服务的阻止(而不仅仅是端口 21)。
另外,您可能应该远离 FTP 主动连接,而改用被动连接。不幸的是,该ftp
命令仅支持主动连接。
设置 IE 执行被动模式,并尝试从其他机器使用它,如ftp://10.0.2.1
。
答案2
我知道原始帖子特别提到了 FTP 而不是 SFTP。尽管如此,我还是提供了一个答案,因为这两者很容易(而且经常)混淆,而且我在企业环境中遇到了确切的“远程主机关闭连接。”错误消息。
在我们的案例中,客户的SFTP 服务器已将我们的连接列入黑名单公共 IP 地址 (IPv4)我必须与我们的网络管理员合作,以确定 SSH/SFTP 服务器的预期回复未收到,并且没有证据表明我们的防火墙阻止了它。一旦我们确定了这一点并提供我们的公共 IP 地址,客户端可以看到(可能是在其服务器日志中)我们被屏蔽了。客户端将我们的地址列入白名单,从而解决了这个问题。
需要注意的是,诊断此问题的关键之一是从企业网络外部成功连接到客户端的 SFTP 服务器,即证明它与我们的 SFTP 帐户(凭据)无关,而不是 SFTP 服务器固有的故障。