EC2实例Ping超时、SSH连接被拒排查:已配置安全组与NACL仍异常
EC2实例Ping超时与SSH连接拒绝问题排查
问题概述
自定义安全组已配置允许HTTP、HTTPS、SSH(22端口)及ICMP协议,但本地测试出现以下异常:
- 执行
ping 3.209.9.15返回request time out - 执行
ssh -i minikube_keypair.pem ubuntu@ec2-3-209-9-15.compute-1.amazonaws.com报错ssh: connect to host ec2-3-209-9-15.compute-1.amazonaws.com port 22: Connection refused - NACL入站规则为默认配置:100规则允许
0.0.0.0/0所有流量,*规则拒绝所有流量
安全组规则问题分析
从提供的安全组规则清单中,发现明确配置缺陷:
- IPv4 HTTPS规则(sgr-09439547961e2f68f)缺失源地址:仅定义了协议类型和端口,但未指定允许的源IP范围(如
0.0.0.0/0),此规则无法生效 - 此外需验证基础配置:
- 确认该安全组已正确关联到目标EC2实例:规则配置正确但未绑定实例是常见失效原因
- 确认实例启用IPv4地址:若实例仅配置IPv6,本地IPv4访问必然失败
SSH连接拒绝的额外排查方向
Connection refused通常意味着实例收到了连接请求但未响应,需检查:
- 实例内SSH服务状态:通过EC2控制台→目标实例→「监控」→「获取系统日志」,查看是否有SSH服务启动失败的日志
- 密钥对有效性:确保
minikube_keypair.pem是实例创建时指定的密钥对,且权限设置正确(执行chmod 400 minikube_keypair.pem) - 实例本地防火墙:检查系统内的
ufw或iptables规则,确认未拦截22端口入站流量
NACL规则验证
默认NACL入站规则允许所有流量,但需确认出站规则:
默认NACL出站规则为100允许0.0.0.0/0所有流量,*规则拒绝所有。若出站规则被修改,会导致ICMP回包、SSH握手响应无法返回,引发超时或连接拒绝。
修复建议步骤
- 补全安全组中IPv4 HTTPS规则的源地址为
0.0.0.0/0(或业务需求的特定IP段) - 确认安全组已关联到目标EC2实例
- 通过EC2系统日志检查SSH服务是否正常启动
- 执行
chmod 400 minikube_keypair.pem修正密钥对权限 - 检查实例本地防火墙规则,确保允许22端口和ICMP流量
- 验证NACL出站规则为默认允许所有流量
内容的提问来源于stack exchange,提问作者ERJAN
相关产品推荐
相关产品推荐

