EC2实例公网IP访问网站超时(ERR_CONNECTION_TIMED_OUT)求助
排查Windows 2019 EC2实例公网IP无法访问网站的问题
检查Windows本地防火墙规则
实例内部用公网IP访问都超时,首先排查Windows防火墙:- 打开「Windows Defender 防火墙」→「高级设置」,检查入站规则里是否有允许TCP 80端口的规则,且源地址设置为「任何IP地址」(而非仅localhost/私网IP)。
- 可临时关闭Windows防火墙进行测试,如果关闭后能访问,说明是防火墙规则未放行公网IP的80流量,需重新配置入站规则。
确认Web服务器的绑定地址
不管是IIS还是其他Web服务,必须确保站点绑定的是0.0.0.0(全部未分配),而非仅localhost或私网IP:- 以IIS为例:打开IIS管理器,找到目标站点→右键「编辑绑定」,检查HTTP协议的绑定IP是否为「全部未分配」。如果仅绑定私网IP,公网IP的请求会被直接拒绝。
验证安全组与网络ACL配置
- 安全组:确认入站规则中TCP 80端口的源地址是
0.0.0.0/0(允许所有外部IP),而非仅实例自身的公网IP——如果源地址限制为实例公网IP,只有实例内部请求能通过,外部访问会被阻断。 - 网络ACL(NACL):检查EC2所在子网的NACL规则,入站需允许TCP 80端口,出站需允许1024-65535的临时端口(Web服务响应的返回流量使用这些端口),NACL是无状态的,双向规则都要配置。
- 安全组:确认入站规则中TCP 80端口的源地址是
确认弹性公网IP的关联状态
登录EC2控制台,进入「弹性IP」页面,检查该公网IP是否正确关联到你的Windows 2019实例,避免关联到其他实例导致流量转发错误。外部访问测试工具
从外部设备用以下命令排查:- 用
telnet 你的公网IP 80测试端口连通性:超时则说明网络层面阻断,拒绝则可能是Web服务未监听或防火墙拦截。 - 用
tracert 你的公网IP(Windows)或traceroute 你的公网IP(Linux)追踪数据包路径,定位阻断节点。
- 用
内容的提问来源于stack exchange,提问作者Ullan
相关产品推荐
相关产品推荐

