You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法从本地通过SSH连接Amazon EC2实例,求排查建议

排查EC2 SSH连接超时的遗漏点

你已经做了不少常规排查步骤,连接超时通常意味着数据包要么没法到达实例,要么没法正常返回,这里有几个容易被忽略的方向可以逐一验证:

  • 确认实例的公网可达性配置

    • 检查实例是否分配了公有IP或弹性IP:如果实例位于私有子网且未绑定弹性IP,公网是无法直接访问的,这种情况需要通过堡垒机或者NAT网关间接连接。
    • 验证实例所在子网的路由表:别只确认VPC关联了互联网网关(IGW),要确保实例所在子网绑定的路由表里,确实存在0.0.0.0/0指向IGW的路由条目——有时候子网可能关联了其他没有IGW的路由表。
  • 检查网络ACL的规则优先级
    网络ACL是按规则顺序匹配的,如果你添加了允许22端口的入站规则,但列表后面存在「拒绝所有入站流量」的规则,且允许规则的优先级数字更大(顺序更靠后),那允许规则会被覆盖。记得把允许22端口的规则调整到拒绝规则前面。

  • 排查本地网络的潜在限制

    • 切换网络测试:比如换成手机热点连接,部分运营商会屏蔽22端口,换网络能快速验证是不是本地ISP的问题。
    • 临时修改SSH端口:先通过EC2控制台的「获取系统日志」确认SSH服务正常运行,然后修改安全组和网络ACL允许其他端口(比如2222),再用ssh -p 2222 -i key.pem ec2-user@<实例IP>尝试连接。
  • 验证实例本身的运行状态

    • 查看系统启动日志:通过EC2控制台的「获取系统日志」功能,检查有没有SSH服务启动失败、系统内核报错等问题,确认实例是否真的正常启动。
    • 尝试控制台直接连接:用EC2控制台自带的「连接」功能(浏览器内直接连接),如果能成功进入,说明实例本身没问题,问题出在公网链路;如果也连不上,大概率是实例系统层面的故障。
  • 补充网络连通性测试
    尝试ping实例的公有IP:如果ping不通,说明网络层存在阻塞;如果ping通但SSH超时,再聚焦端口和服务配置。注意需要在安全组和网络ACL中允许ICMP协议的入站(echo request)和出站(echo reply)流量。

  • 确认密钥文件权限
    虽然你的报错是超时,但还是顺手确认下.pem文件的权限:在Linux/macOS下执行chmod 400 key.pem,避免因权限过于开放导致的隐式问题(虽然这通常会报权限错误,但排查时尽量覆盖所有可能性)。

从你提供的SSH命令输出来看,连接完全无法建立,优先排查公网可达性和网络链路阻塞相关的点,比如子网路由、网络ACL规则顺序、本地ISP限制这几个方向会更高效。

内容的提问来源于stack exchange,提问作者Roy Lucky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 07:34:09