我已经设置了一个 EC2 实例,但似乎无法通过 ssh 进入它。
四处寻找并寻找此问题的一般解决方案,我已将其设置为具有以下特征
- 我使用了一个包含互联网网关的子网,以及
0.0.0.0/0 --> IGW rule
ssh
安全组有允许入站和All, All, 0.0.0.0/0
出站的规则- EC2 有一个公共 DNS 和一个弹性公共 IP - 我认为我在这里不需要两者,因为公共 IP 就足够了,但我认为提供弹性 IP 不会有什么坏处
- 子网网络 ACL 有一条专门针对 ssh 入站和端口 49152-65535 出站的 TCP 规则。
- 子网的可用区与 EC2 实例的可用区相匹配。
我认为这是一个网络问题,而不是与现阶段的 ssh 密钥相关的任何问题,因为当我运行ssh -v
尝试连接到机器时,我甚至没有看到它成功到达握手的第一部分。
对我遗漏了哪些步骤有什么想法吗?
答案1
首先检查您的实例是否响应来自 22 端口的流量。https://ping.eu/port-chk/
然后请检查您的终端是否支持 SSH。例如:
ssh -T [email protected]
如果一切顺利,请在您的实例上尝试您的凭据。
对于 AWS,我建议:
- 确保实例正在运行。
- 附加的安全组有以下规则:
inbound: TCP PORT 22 from 0.0.0.0
- SSH 的用户名通常在镜像(AMI)中设置,
ec2-user
例如亚马逊 Linux以及ubuntu
Ubuntu LTS等等...所以请尝试查看实例的详细信息面板。 - 确保 VPC 已连接到互联网。然后确保此 VPC 已与您的实例所在的子网关联。