我有 2 台在 Amazon EC2 中运行的 Windows 和 Ubuntu 服务器。我在 Windows 中使用 plesk 创建了 FTP 服务器,并在 Ubuntu 中使用了 vsftpd。我在两台服务器中都启用了所有 TCP 端口。vsftpd 在 Ubuntu 中以被动模式运行。
在两个服务器上,从远程位置访问 ftp 都运行正常,但我的备份程序(Backup maker)似乎在 EC2 中的两个 FTP 服务器中都存在问题(备份程序在位于 Amazon 之外的服务器上运行)。备份结束时,它显示大小不匹配,并中止备份。但当我比较时,备份后和备份前的文件之间没有区别。
对于错误编译,我通过将备份软件中的目标 FTP 服务器从亚马逊更改为其他 FTP 服务器进行了检查,备份工作正常。我只在 Amazon EC2 服务器中遇到此问题,无论其中运行的是哪种操作系统。
我在 EC2 上运行 Windows 操作系统的 FTP 服务器时遇到了另一个问题 - 我无法使用 wget 实用程序下载 FTP 服务器中的文件。我还在此服务器中启用了匿名 FTP。
请帮我解决这些错误。
答案1
Vsftpd 使用一些高编号端口进行被动模式连接。
检查您的安全组并添加两条规则:自定义 TCP 规则 TCP 10090 - 10100 0.0.0.0/0 自定义 UDP 规则 UDP 10090 - 10100 0.0.0.0/0
我敢打赌这可以解决你的问题。如果你查看你的配置,你可能会有这样的块?
pasv_enable=Yes
pasv_max_port=10100
pasv_min_port=10090