从原有EC2实例制作AMI启动新实例后无法访问其公/私网IP如何解决
EC2从自定义AMI启动后外部无法访问问题排查方案
你提到新实例内部可正常访问localhost、也可主动访问原实例的公/私网IP,说明实例出站网络连通性、服务本身运行状态均正常,问题集中在入站流量拦截、服务监听配置异常两类场景,可按以下顺序排查:
- 安全组配置校验
- 核对新实例关联的安全组入站规则,是否放通了你访问的服务对应端口(例如HTTP 80、HTTPS 443、自定义服务端口等),入站源是否包含你当前访问所用的公网IP/所属私网网段
- 即使启动时选择了和原实例相同的参数,也需确认是否安全组规则在制作AMI后有过改动,或者启动时误选了其他安全组
- 子网网络ACL配置校验
- 检查实例所属子网的网络ACL入站、出站规则,是否放通了对应服务端口以及临时端口范围的流量,避免ACL默认拒绝规则拦截访问请求
- 服务监听配置校验
- Linux系统执行
ss -tulpn或netstat -tulpn查看对应服务的监听地址,如果监听地址为127.0.0.1则仅允许本地访问,需要修改服务配置将监听地址改为0.0.0.0或者实例当前的私网IP - Windows系统执行
netstat -ano查看监听地址,判断是否仅绑定了本地回环地址
- Linux系统执行
- 实例内部防火墙规则校验
- 确认实例内部是否开启了iptables、firewalld(Linux)或Windows Defender防火墙,是否配置了限制外部IP访问对应服务端口的规则
- 公网访问额外校验
若你使用公网IP访问,需额外确认:- 新实例是否分配了公网IP/弹性公网IP,实例所属子网是否开启了自动分配公网IP的配置
- 实例所属子网的路由表是否配置了指向互联网网关的公网路由,确保公网入站流量可以正常往返
内容的提问来源于stack exchange,提问作者Quang Tran
相关产品推荐
相关产品推荐

