我一直在寻找一个 FTP 客户端来在两个服务器之间传输文件,我找到的最接近的客户端是 FTP Rush,我能够使用 FTP Rush 登录我的两个 Linux 服务器的 FTP 帐户,但我无法传输文件。有人可以推荐一些 FTP 客户端来做这件事吗?
答案1
这是一种过时的做法。您使用的是 FXP,这是一种不太受广泛支持的 FTP 扩展,用于进行服务器到服务器的传输。没有多少客户端支持这一点,因为更有意义的是远程进入其中一个服务器并启动传输、使用 rsync 或通过脚本自动化。这也是一个潜在的安全威胁。我还认为 FXP 缺乏支持延伸到了服务器端,您可能无法让它与某些 ftp 服务器一起工作。
不管怎样,FlashFXP 和 FTPRush 似乎是 FXP 传输领域的领导者。如果两者都不起作用,则说明您的服务器不支持 FXP 或需要特殊的防火墙规则才能使其工作(我的理解是,这些在被动模式下都不起作用,需要在防火墙中明确打开端口)。
http://en.wikipedia.org/wiki/File_eXchange_Protocol
此外,这很重要(来自维基文章)
“启用 FXP 支持可能会使服务器容易受到称为 FTP 反弹的攻击。因此,FTP 服务器软件通常默认禁用 FXP。”
答案2
首先 - 看看是否有任何方法可以避免使用 FTP - 它是出了名的不安全并且对于保护 NAT 遍历来说很麻烦。
我所遇到过的每个 Linux 和 Unix 发行版,甚至 MSWindows 都自带“ftp”,它有什么问题?
快速谷歌搜索,我发现的唯一“ftp rush”是只能在 Microsoft 上运行的东西。由于您在问题中提到的唯一操作系统是 Linux,如果我们知道您打算在什么操作系统上运行客户端可能会有所帮助。
还有更多 - wget 和 curl 都可以处理 FTP 和 HTTP。更不用说 Linux/Unix 和 MSWindows 上的大量 gui 类型的应用程序了。事实上,MSWindows Explorer 可以与 FTP 服务器通信。
您希望该程序提供什么?脚本?漂亮的用户界面?还是其他?
无法传输文件
听起来可能是你的网络配置出了问题 - 而不是程序。
答案3
直接从一个 FTP 服务器传输到另一个 FTP 服务器在技术上是可行的,但容易受到防火墙问题的影响,并且很少有客户端应用程序支持。
如果您的连接速度足够快,您可以使用完全支持拖放功能的 FTP 客户端(Windows 资源管理器本身就支持此功能)并以此方式传输文件,但我认为这正是您想要避免的(因为您最终将内容下载到您的位置,然后将其推送到第二台服务器)。
您没有指定服务器上运行的操作系统以及您拥有的访问权限类型,因此我无法针对您的具体情况提供建议。如果至少有一台服务器可以通过 SSH 访问,那么您可以通过该方式登录并使用命令行工具从另一台服务器进行 FTP 连接。如果两台服务器都可以通过 SSH 访问,那么您几乎肯定可以使用更好的 SCP/SFTP 协议,甚至可以使用具有额外优势的 rsync。
编辑:您的问题并未规定其他人(大概是相对非技术用户)能够在服务器之间传输文件。您可以安装基于 http 接口的文件管理器,例如http://extplorer.sourceforge.net/(似乎有相当多可用的,我已经将它加入书签,等我有时间玩这些东西时再看,但我自己还没有测试过它或任何其他的)供您的用户使用。extplorer 显然直接支持 FTP 站点,但是如果您选择一个不支持的站点,您可以通过 VPN 上的挂载链接服务器的文件系统,并允许您的用户通过这种方式在两者之间管理文件。