无法在适用于 Windows 的 Amazon EC2 实例之间共享数据

无法在适用于 Windows 的 Amazon EC2 实例之间共享数据

我有两个运行 Windows Server 2003 和 IIS 6.0 的 Amazon EC2 实例。这两个实例都创建在同一区域,并具有相同的安全组。我为所有端口和连接方法启用了 icmp,并且能够成功地在两个实例之间进行 ping 操作。但是,当我尝试使用以下命令访问一个 EC2 实例与另一个 EC2 实例的共享位置时:

\\<elastic-ip>

或者

\\<internal-private-ip>

我无法看到共享位置,并收到一条错误消息:

没有网络提供商接受给定的网络路径

我能够使用 tracert 命令从两个 EC2 实例进行跟踪。

请告诉我访问两个 EC2 实例之间共享位置的方法。

谢谢

PS:我知道也可以使用 S3 来实现,但由于其他原因,我不希望使用它。

答案1

我找到了我自己问题的答案,它如下:

理论:

可以在以下网址找到此 Microsoft 知识库文章介绍了如何启用 Microsoft 文件共享 SMB。以下事项与之相关:

以下端口与文件共享和服务器消息块 (SMB) 通信相关:

  • Microsoft 文件共享 SMB:用户数据报协议 (UDP) 端口 135 至 139 和传输控制协议 (TCP) 端口 135 至 139。
  • 没有网络基本输入/输出系统 (NetBIOS) 的直接托管 SMB 流量:端口 445(TCP 和 UPD)。

怎么做:

  1. 在与您的 EC2 实例关联的安全组中启用上述端口。完成此操作后,您的安全组权限应如下图所示: EC2 安全组权限

  2. 在两个实例的 Windows 防火墙中启用端口。详细方法可参见这里. 对于 Windows Server,跳过步骤 7。

这解决了这个问题,但是可能需要重新启动实例。

答案2

以下是我检查的顺序:

  1. 网络适​​配器上已启用文件和打印机共享
  2. 所有关键服务均正在运行
  3. 两个防火墙上的所有必要端口均已打开
  4. 检查应用程序和系统事件日志以获取其他线索
  5. 确保网络适配器上没有设置 TCP 过滤。

答案3

如果您使用的是 Sonicwall,请确保您的 VPN 接口上启用了 Netbios。否则,您将看到共享,但无法访问它,等等。

答案4

我刚刚在安全组中为所有用户(例如 0.0.0.0/0 或我的 CIDR 块)启用了 TCP 和 UDP 的端口 135-139 以及 TCP 和 UDP 的端口 445,这有效。然后我可以通过 IP 访问共享驱动器,但不能通过实例 ID 或 Windows 计算机名称访问。在 Windows 防火墙中启用或禁用上述端口没有影响。

相关内容