在AWS EC2实例上设置VSFTPD

我试图在我的EC2实例上设置VSFTPD被动托pipe。 我跑过这些说明http://www.synergycode.com/knowledgebase/blog/item/ftp-server-on-amazon-ec2 。 但是,当我试图在FileZilla连接,我得到了

  • 命令:CWD / home / lingiii / ftp
  • 响应:250个目录成功更改。
  • 命令:typesI
  • 响应:200切换到二进制模式
  • 命令:PASV
  • 回应:227进入被动模式(10,222,206,33,54,184)。
  • 状态:服务器发送具有不可路由地址的被动回复。 改用服务器地址。
  • 命令:LIST
  • 错误:连接超时
  • 错误:无法检索目录列表

其中目录/ home / lingiii / ftp设置为用户lingiii的wrx权限,组开发者(其中lingiii是其成员),并且以用户lingiiilogin。

有什么build议?

正如@ cyberx86所说,vsftpd发送实例的内部IP地址作为客户端必须连接的地址,以响应客户端无法连接的PASV命令,因为它不在EC2内部运行。 您需要使用pasv_addressconfiguration选项来告诉vsftpd实例的公有IP是什么。

还有另一个不是这个的失败,但可能是相似的。 如果您以被动模式连接,并且可以连接到服务器,但目录列表失败。 这可能是由于vsftpd.conf中指定的端口范围未在EC2实例中打开引起的。 您需要转到AWS EC2控制台pipe理面板才能打开端口。

有关更多详细信息,请参阅http://www.pixelstech.net/article/1422865204-Install-and-setup-vsftpd-on-AWS-server