首页 > 解决方案 > 无法连接到 AWS EC2

问题描述

我在公共子网 Ubuntu 20.04 中有一个带有公共 IP 的 ec2 实例,一切似乎都是开放的——但我无法 ping 或 ssh 到该实例:

NACL(I/b & O/b):100 - 全部/全部 0.0.0.0/0

路由表 - 0.0.0.0/0 igw

SG:8080、443、22 - 0/0

我在公共 IP 和公共 DNS 旁边的 ec2 实例控制台中有这个“打开地址”超链接 - 当我尝试打开它时它没有打开 - 无法访问此页面 - 尝试 https://IP。

腻子超时,还有cmd ssh:

ssh -i "pem-file.pem" ubuntu@IP
ssh: connect to host 'IP' port 22: Connection timed out

标签: amazon-web-servicesamazon-ec2ssh

解决方案


当 SSH 连接超时时,通常表示网络流量没有到达 Amazon EC2 实例。

检查事项:

  • 实例正在运行Linux
  • 该实例在公共子网中启动,该子网被定义为具有指向 Internet 网关的路由表条目
  • 该实例有一个公共 IP 地址,您正在使用该地址进行连接
  • 网络访问控制列表(NACL) 设置为其默认的“全部允许”值
  • 与实例关联的安全组,允许从您的 IP 地址或 Internet ( 0.0.0.0/0)在端口 22 (SSH) 上进行入站访问
  • 您的公司网络允许出站 SSH 连接(尝试备用网络,例如家庭与工作与连接到您的手机)

另请参阅:连接到您的实例的故障排除 - Amazon Elastic Compute Cloud

如果您仍然有问题,请使用ssh -vvv ...激活调试,并将输出添加到您的问题。

一旦你有 SSH 工作,然后尝试让 443 工作。

不要使用 Ping 测试连接性,因为这需要安全组中的其他规则,它只测试 Ping 是否正常工作。


推荐阅读