阿里云国际 ECS 安全组:80/443 打不开的排查顺序
机器能 SSH,浏览器却超时——先别急着重装系统。在阿里云国际站里,安全组是第一道门,没有放行公网端口,外面永远进不来。很多用户第一反应是「服务器挂了」,实际上只是入方向规则没配好。下面按「先放行、再排查、后加固」的顺序,把 80/443 打不开的问题一次讲清。
最小放行
安全组入方向只需要放行真正要用的端口,不要图省事全开。推荐的最小集合如下:
| 用途 | 协议 | 端口 | 来源 |
|---|---|---|---|
| SSH | TCP | 22 | 只放你的办公 IP,不要 0.0.0.0/0 |
| HTTP | TCP | 80 | 0.0.0.0/0 |
| HTTPS | TCP | 443 | 0.0.0.0/0 |
操作入口:实例 → 安全组 → 入方向 → 手动添加。出方向默认全放即可,一般不用动。
两个容易踩的坑:
- 改的是这台 ECS 绑定的那组安全组。克隆实例、换弹性网卡后,常出现「规则加在了 A 组,实例却绑着 B 组」的情况。
- 规则添加后要确认已保存并生效,部分操作需要几秒到几十秒。
仍不通时的排查顺序
放行之后还是打不开,按下面的顺序逐条排除,不要跳步:
- 安全组规则是否已保存、是否绑在当前弹性网卡。先确认规则真的生效,且实例绑定的就是这组。
- 系统防火墙。用
ss -lntp看 Nginx/Apache 是否在监听 80/443;再用ufw status或firewall-cmd --list-all检查系统防火墙是否拦截。 - 服务只听 127.0.0.1。如果监听地址是
127.0.0.1:80而不是0.0.0.0:80,外网自然进不来,改配置为0.0.0.0后重启服务。 - 带宽为 0 或欠费停机。带宽为 0、账户欠费都会导致公网不通,SSH 可能仍可用,但 Web 访问失败。
- 本机测通、外网不通。在服务器上
curl -I http://127.0.0.1正常,但外部访问超时,多半是跨境链路或运营商问题,参见访问优化。
完整加固建议见安全基线。再次强调:放行不是「全开 1-65535」,端口开得越多,暴露面越大。
常见问题
规则已放行但端口仍不通,先查什么?
按顺序核对:云厂商安全组/轻量防火墙是否入站放行、是否绑到正确实例、系统内防火墙或服务是否监听、本机是否只监听 127.0.0.1,以及源地址是否被限制为特定网段。
80/443 应该对哪些网段开放?
对外提供 Web 服务时通常放行 0.0.0.0/0 的 TCP 80/443;管理端口(如 22、3389、8888)应限制为运维出口 IP,避免把管理面暴露到公网。