连接到 EC2 Windows 2012 实例时未呈现目录列表

连接到 EC2 Windows 2012 实例时未呈现目录列表

我创建了一个 Amazon EC2 Windows 2012 实例。我通过 IIS 安装了 FTP,并确保 Amazon 防火墙和实例的防火墙都允许端口 21 上的流量。当我从 Filezilla FTP 客户端连接到实例时,连接被接受,但目录列表未呈现。

这是尝试使用 Filezilla 连接时的输出:

Response:   501 Server cannot accept argument.
Command:    PASV
Response:   227 Entering Passive Mode (204,236,224,103,192,56).
Command:    LIST
Response:   150 Opening BINARY mode data connection. 
Error:  The data connection could not be established: ETIMEDOUT - Connection attempt 
timed out 
Error:  Connection timed out
Error:  Failed to retrieve directory listing

通过 RDP 连接到服务器时,我打开 IE 并输入ftp://localhost,可以毫无问题地连接。在我的本地浏览器中,当我输入时,ftp://ElasticIP我无法连接。请注意,我在 IIS 中设置了 FTP 服务器,并将所有未分配的 IP 地址绑定到端口 21 上监听。FTP 防火墙支持也输入了弹性 IP。

必须采取哪些额外步骤才能确保 FTP 正常工作?非常感谢您的帮助和指导。

答案1

来自此链接:https://forums.aws.amazon.com/thread.jspa?messageID=361644&tstart=0#

“IIS FTP 使用主动模式,而 EC2 仅支持被动模式 FTP 连接,因为实例具有私有和公共 IP 地址。

解决这个问题的唯一方法是:

  1. 请确保公共配置文件上的 Windows 防火墙已被禁用。

  2. 在安全组(EC2)上打开此端口范围:TCP 49152-65535

  3. 确保您在此实例上使用弹性 IP 地址 (EIP)。

  4. 在 FTP 防火墙配置中将此 EIP 添加为外部 IP 地址。 http://learn.iis.net/page.aspx/309/configuring-ftp-firewall-settings-in-iis-7/ 请参阅上一页的“步骤 2:为特定 FTP 站点配置外部 IPv4 地址”。

我在 Windows Server 2008 R2 (IIS 7.5) 上对此进行了测试。如果您按照这些步骤操作,您的 IIS FTP 应该配置为使用与 EC2 配合使用的被动模式 FTP。

这样做对我们很有帮助。

相关内容