amazon-web-services - 无法连接到 AWS E2 实例(但安全组允许入站)
问题描述
我是 AWS 的新手,并启动了我的第一个 EC2 实例(Amazon Linux),并获得了一个公共 IPv4 地址。
SSH 端口关闭,实例不响应 ping。它看起来好像完全与互联网断开连接。
我在网上找到的所有帮助都与安全组和打开正确的端口(或 ICMP)有关,但我已经这样做了,实际上我什至设置了相应的安全组以允许所有入站流量。
实例显示在线并且可达性检查显示正常。子网的路由表将 0.0.0.0/0 指向 igw。
这还能是什么???一定还有什么我忘记了。
谢谢!
编辑:(这仍然没有解决,下面的建议虽然很好,但没有帮助)
一切截图: https ://florianbador.com/pub/aws-issue-screenshots/
编辑2:
我发现了问题所在(或最终发现了真正的症状)。该机器在创建后大约 1 分钟可以通过网络使用,然后它就像离线(尽管仍然打开)。
我用另外两台机器测试了两次,同样的事情发生了:1 分钟内我可以通过 ssh 登录,然后终端冻结,好像有人在那里设置了 iptables DROP 规则,我再也无法访问服务器。我从不同的 IP 地址尝试过,似乎不是某些东西将我的 IP 列入黑名单,而是从任何地方都无法访问的整个服务器。
知道这可能是什么吗?
编辑 3:
作为对 Amit 下面回答的确认,这里有一个屏幕截图显示亚马逊确实阻止了帐户,即使它们已被重新激活,并且无法判断一个帐户在他们的网络上以某种方式被阻止,因为门户中的一切都显示正常。
我决定不使用 AWS,因为我不能冒险让 20 家企业处于危险之中,因为某些需要几天时间来调试/理解的管理原因,我不能冒着有一天看到它们全部倒闭的风险。
解决方案
我遇到了一个非常相似的问题,我终于弄明白了。
安全组充当您的实例的虚拟防火墙,以控制入站和出站流量。
因此,即使安全组允许入站和出站流量,您也需要确保VPC 是公共的或使用 NAT 网关的 VPC 私有的。
公共子网中的实例可以将出站流量直接发送到 Internet,而私有子网中的实例则不能。相反,私有子网中的实例可以使用位于公共子网中的网络地址转换 (NAT) 网关访问 Internet。数据库服务器可以使用 NAT 网关连接到 Internet 以进行软件更新,但 Internet 无法与数据库服务器建立连接。
更新:
正如评论中提到的,看起来问题出在 aws 帐户上。帐户关闭\暂停后,该帐户被阻止连接任何资源。即使重新激活帐户后,该帐户仍然无法访问新实例,您需要连接 aws。
此信息基于此线程和@FlorianB 经验。
推荐阅读
- delphi - TabOrder = 0 的 FireMonkey 控件在运行时不集中
- php - 重构:如何用函数代码替换函数调用
- sas - 有没有办法在输出只显示一个唯一列的 SAS 中排序?
- python - 将小 np.array 添加到更大的 np.array
- android - 谷歌广告定位设备安卓版本是否与最低 SDK 版本相同?
- python - 访问redis key时如何重置TTL?
- recursion - 分析运行时
- javascript - Authorization of an api to get data in Angular js
- ruby-on-rails - 强参数中的嵌套数组
- vue.js - 使用 Vuetify v-data-table,我想折叠/展开单个组?