给 ECS 开 80 端口:安全组入方向规则这样配,配完三招验证
今天在成长中心用云宝助手问了一个很实际的问题:在华为云上,如何为弹性云服务器 ECS 配置安全组放行 80 端口?云宝按产品文档给出了步骤,我顺手把这套流程、参数含义和验证方法整理成这篇笔记,方便下次直接照着做。
先分清:打不开,不一定是安全组的问题
浏览器访问 http://弹性公网IP 没反应,常见原因有三层:
- 安全组入方向没有放行 80 端口,流量在云平台侧就被拦住了;
- 实例里 Web 服务没启动,或者只监听了 127.0.0.1;
- 实例内部防火墙(如 firewalld/iptables)或服务本身配置有问题。
所以正确顺序是:先在控制台把安全组配对,再到实例里确认服务在监听 80 端口,最后从外部验证。只改一处、只看一处,很容易绕圈子。
控制台操作:五步放行 80 端口
1. 进入安全组列表
登录华为云控制台,进入安全组列表页面。
2. 找到目标安全组
在列表中找到 ECS 实例所属的安全组,单击该行操作列下的“配置规则”,进入安全组规则配置页面。选错安全组是新手最常见的坑:实例可以关联多个安全组,改的是哪一个,一定要和实例详情页里挂着的保持一致。
3. 添加入方向规则
切换到“入方向规则”页签,单击“添加规则”,弹出“添加入方向规则”对话框。注意是入方向,不是出方向:外部用户访问我们的 80 端口,走的是入方向。
4. 设置规则参数
| 参数 | 建议值 | 说明 |
|---|---|---|
| 优先级 | 1 | 数字越小优先级越高,1 为最高 |
| 策略 | 允许 | 拒绝会直接丢弃流量 |
| 类型 | IPv4 | 按实例地址类型选 |
| 协议端口 | TCP 80 | 只放行需要的端口,别图省事放全端口 |
| 源地址 | 0.0.0.0/0 | 允许所有 IP 访问;仅内部访问时请改成具体网段 |
| 描述 | Web-80 | 写清楚用途,方便以后清理 |
5. 确认添加
单击“确定”,回到入方向规则列表,确认多了一条 TCP 80 的允许规则。规则一般即时生效,不需要重启实例。
配完三招验证
第一招:实例里看监听
先确认服务真的在 80 端口上:
# Linux:看 80 端口是否在监听
ss -tlnp | grep ':80'
# 没有 ss 时可用 netstat
netstat -an | grep 80
如果没有任何输出,问题不在安全组,先把 Web 服务启动起来,并确认它监听的是 0.0.0.0:80 而不是 127.0.0.1:80。
Windows 实例可用:
netstat -an | findstr 80
第二招:本机 curl 看响应
在自己的电脑上:
curl -v http://弹性公网IP地址/
能拿到 HTTP 状态码和响应头,说明链路通了;如果卡在 Trying ... 或 Connection timed out,多半还是安全组或网络层面的问题;如果是 Connection refused,则端口没监听,回到第一招。
第三招:浏览器实测
在浏览器输入 http://ECS的弹性公网IP地址,能正常打开页面,才算真正完成。顺带检查一下页面资源有没有混用其他未放行的端口。
三个容易踩的坑
- 源地址 0.0.0.0/0 是把双刃剑:测试、公开站点可以用,生产环境建议只对可信来源放行,管理端口(如 22、3389)更不要这样开。
- 优先级不是越大越强:安全组规则优先级 1-100,数字越小越高;多条规则冲突时,先看优先级。
- 改完立刻复查:规则列表里那条 80 端口记录,就是最好的“证据”,截图或记下来,下次排查直接对照。
小结
安全组放行 80 端口本身只有五步,难的是定位:先分层(安全组、实例监听、内部防火墙),再按“配规则—查监听—外部验证”的顺序走一遍,大多数“打不开”都能在十分钟内定位。希望这篇笔记能帮你少绕一次圈子。测
- 点赞
- 收藏
- 关注作者
评论(0)