我有两个运行 Windows Server 2003 和 IIS 6.0 的 Amazon EC2 实例。这两个实例都创建在同一区域,并具有相同的安全组。我为所有端口和连接方法启用了 icmp,并且能够成功地在两个实例之间进行 ping 操作。但是,当我尝试使用以下命令访问一个 EC2 实例与另一个 EC2 实例的共享位置时:
\\<elastic-ip>
或者
\\<internal-private-ip>
我无法看到共享位置,并收到一条错误消息:
No Network Provider accepted the given network path
我能够使用 tracert 命令从两个 EC2 实例进行跟踪。
请告诉我访问两个 EC2 实例之间共享位置的方法。
谢谢
PS:我知道也可以使用 S3 来实现,但由于其他原因,我不希望使用它。
答案1
我找到了我自己问题的答案,它如下:
理论:
可以在以下网址找到此 Microsoft 知识库文章介绍了如何启用 Microsoft 文件共享 SMB。以下事项与之相关:
以下端口与文件共享和服务器消息块 (SMB) 通信相关:
- Microsoft 文件共享 SMB:用户数据报协议 (UDP) 端口 135 至 139 和传输控制协议 (TCP) 端口 135 至 139。
- 没有网络基本输入/输出系统 (NetBIOS) 的直接托管 SMB 流量:端口 445(TCP 和 UPD)。
怎么做:
在与您的 EC2 实例关联的安全组中启用上述端口。完成此操作后,您的安全组权限应如下图所示:
在两个实例的 Windows 防火墙中启用端口。详细方法可参见这里. 对于 Windows Server,跳过步骤 7。
这解决了这个问题,但是可能需要重新启动实例。