无法通过 SSH 连接到 AWS EC2 实例

Bar*_*ide 7 amazon-ec2 amazon-web-services

我无法通过 SSH 连接到我的 EC2 实例 - 我收到超时错误。我检查了安全组以确保 SSH 流量正常工作。我检查了路由表并确保它们已连接到 Internet 网关。一个小时前我还能够通过 SSH 进入实例,但现在不行了。我通过 Putty 连接。在使用 ec2-user@domain 之前,我遇到了相同的连接超时问题,我只需在 Putty 的主机名字段中输入 IP 地址即可解决该问题。那时我可以毫无问题地连接。然后我创建了另一个 EC2 实例,现在我无法连接到任何一个实例。我在 Putty 配置中正确引用了 .ppk 文件。我尝试连接 mac 并在那里复制 .pem 文件。还有什么我可以检查的吗?还,为什么我不能像指示那样在腻子中的连接字段中输入 ec2-user@domain 。我的 AWS 环境有问题吗?

Joh*_*ein 17

诊断 SSH 问题的最佳方法是在同一子网中启动一个新实例,使用相同的安全组。如果这有效,则问题与原始实例有关。

您收到超时错误这一事实表明您的 SSH 客户端无法访问该实例。实例没有拒绝连接(例如,由于密钥对),这是无法访问实例的事实。

检查事项:

  • 确认公共 IP 地址仍然是当前的(它可以在实例停止和启动时更改它)
  • 确认实例位于公有子网中,这意味着子网具有指向 Internet 网关的路由表
  • 确认安全组允许来自您的 IP 地址的入站 SSH 流量(端口 22)(甚至0.0.0.0/0出于测试目的)
  • 除非您深入了解 NACL,否则将其保留为默认设置
  • 确保实例是 Linux 实例(Windows 没有启用 SSH)
  • 从不同的网络(例如家庭、办公室、通过手机连接)尝试,因为某些公司网络会阻止 SSH 连接

作为另一个测试,您可能想要临时创建另一个 VPC。使用 VPC 向导创建一个只有一个公有子网的 VPC。启动一个实例并确认您可以通过 SSH 连接到该实例。

  • 我自己创建了新的VPC。没有指向 Internet 网关的路由表。创建新的 Internet 网关并将其添加到路由表后,ssh 到 ec2 运行良好。谢谢! (2认同)

Bar*_*ide 5

此问题是帐户问题。我已经重新激活了我的旧帐户,但不知何故它仍然在 AWS 中被标记为“隔离”。我可以访问 AWS 控制台,但无法通过 SSH 访问任何内容。作为用户,自己没有办法看到这一点。我必须在 AWS 开发人员论坛上发帖,AWS 开发人员可以在其中看到我的帐户已“隔离”并代表我提交了票证。我现在可以毫无问题地通过 SSH 连接到我的 EC2 实例。