华为云国际站独立账号 华为云国际站服务器安全防火墙设置
华为云国际站服务器安全防火墙设置:别让防火墙成了你的第一道拦路虎
你有没有过这种体验?辛辛苦苦在华为云国际站(Huawei Cloud International)上配好一台新加坡ECS,装完Nginx、跑通Docker、连上GitHub私仓,正准备喝口咖啡庆祝——结果浏览器一敲IP,显示ERR_CONNECTION_TIMED_OUT。你翻日志、查端口、ping测试全绿,最后发现……防火墙根本没开80端口。不是代码错了,是防火墙把你当黑客给拒之门外了。
别笑,这事儿我干过三次。一次在法兰克福节点把SSH端口写成23,一次在东京区误删了入方向规则,还有一次……干脆忘了安全组根本没绑定到实例上。所以今天这篇,不讲概念堆砌,不甩官方文档截图,就用大白话+真实踩坑顺序,带你把华为云国际站的防火墙三件套——安全组(Security Group)、网络ACL(Network ACL)、Web应用防火墙(WAF)——从‘看不懂’捋到‘闭眼都能配’。
第一步:搞清谁管什么——别让安全组和网络ACL互相背锅
先破个迷信:华为云国际站的“防火墙”不是单个开关,而是三层过滤网。就像你家小区——门禁卡(网络ACL)管整栋楼进出,单元门禁(安全组)管你住哪层哪户,而你家门口猫眼(WAF)只盯着HTTP/HTTPS流量看有没有可疑快递员。
- 安全组(Security Group):绑定到ECS实例的“贴身保镖”,有状态(你出的流量,返回包自动放行),默认拒绝所有入站,必须手动加规则。国际站控制台路径:
Compute → Elastic Cloud Server → 选实例 → Security Group tab。 - 网络ACL(Network ACL):作用于子网(Subnet)层面,“楼栋保安队长”,无状态(入站放行≠出站自动放行,得双向写),优先级数字越小越先执行。路径:
Networking → Virtual Private Cloud → Subnets → 选子网 → Network ACL tab。 - WAF:纯Web层防护,只处理HTTP/HTTPS(端口80/443),防SQL注入、XSS、CC攻击,但不替代安全组!很多人以为开了WAF就不用开安全组80端口——醒醒,WAF还没看到请求,流量早被安全组掐死在半路了。
第二步:安全组实操——从“连不上”到“连得稳”的黄金六条
别急着狂点“添加规则”,先记住一个铁律:安全组规则按顺序匹配,遇到第一条匹配就执行,不再往下看。所以,把最具体的放前面,最宽泛的(比如0.0.0.0/0)放后面。
推荐你新建一个叫web-prod-intl的安全组(别用默认那个!),然后加这6条核心规则(国际站注意:源地址填0.0.0.0/0,别写0.0.0.0/0带空格或中文逗号):
- SSH管理(仅限必要IP):入方向,TCP,端口22,源地址填你办公IP(去ipinfo.io查),别图省事写0.0.0.0/0——我见过客户因这个被扫出密钥,凌晨三点重装系统。
- HTTP服务:入方向,TCP,端口80,源地址
0.0.0.0/0(对外提供网页必须)。 - HTTPS服务:入方向,TCP,端口443,源地址
0.0.0.0/0。 - 健康检查(如用ELB):入方向,TCP,端口8080(或你自定义),源地址填负载均衡器的IP段(国际站通常为
100.125.0.0/16,具体见控制台提示)。 - 出方向全放行:出方向,All Protocols,端口All,目标
0.0.0.0/0(安全组有状态,但出方向放开更省心)。 - ICMP可选:入方向,ICMP,类型All,源
0.0.0.0/0(方便ping诊断,生产环境可删)。
配完别忘:点击实例右侧“更换安全组”,把旧的换掉——很多同学配好了规则,却忘了绑定!
第三步:网络ACL——子网级兜底,但别乱开
除非你做多VPC隔离或合规审计,否则网络ACL建议保持默认(允许全部)。但如果你真要配,记住三个反直觉要点:
- 入站和出站规则独立生效:开了入站80,必须单独加一条出站80(或All),否则HTTP响应发不出去,浏览器永远转圈。
- 华为云国际站独立账号 拒绝规则优先级高于允许:哪怕你写了“允许80”,只要上面有一条“拒绝全部”(优先级100),那80照样不通。
- 国际站子网默认关联default ACL,改之前先解绑再新建:直接编辑default ACL可能影响其他实例,稳妥做法是新建ACL→添加规则→解绑子网原ACL→绑定新ACL。
一个真实案例:某客户在阿联酋节点部署API,安全组全OK,但iOS App调用超时。最后发现网络ACL出方向只放了TCP,忘了UDP——DNS解析走UDP,域名都解析不了,还查啥后端?
第四步:WAF联动——不是打开就完事,关键在“怎么接”
华为云国际站WAF(Web Application Firewall)要起效,必须满足两个硬条件:
- 你的域名必须已接入WAF:不是绑CNAME就行!要在WAF控制台
Protection Configuration → Add Domain里完成完整接入流程(含DNS验证、证书上传、回源配置)。 - 安全组必须放行WAF回源IP段:这是90%人翻车的地方!WAF不是从用户IP直接打你服务器,而是用自己的出口IP(国际站常见段:
139.159.0.0/16,185.192.0.0/16,以控制台实时显示为准),所以安全组入方向要加一条:TCP 80/443,源地址填WAF提供的IP段,不是0.0.0.0/0!
顺手送你个检查清单:WAF开启后,curl -v 域名,看X-WAF-Info头是否出现;用nslookup your-domain.com确认解析到了WAF CNAME;最后用telnet your-server-ip 80确保安全组真放行了WAF IP——三步缺一不可。
第五步:终极排错三板斧——比重启更管用
当你又双叒叕连不上时,请默念这三句话:
- “我的请求,到底卡在哪一层?”——用
telnet your-server-ip 22测SSH:通→安全组OK;不通→查安全组+网络ACL; - “WAF是不是把我当坏人了?”——临时关闭WAF,或在WAF规则里加一条“放行我的IP”,看是否恢复;
- “我的服务器,自己信得过自己吗?”——登录服务器,
sudo ss -tlnp | grep :80确认服务真在监听;sudo ufw status(如果启用了本地防火墙)看看系统级iptables有没有拦截。
最后送一句掏心窝子的话:华为云国际站的控制台UI和国内站略有差异(比如ACL路径藏得更深),但底层逻辑一致。别怕点错,所有规则修改都有“撤销”按钮(30秒内),大胆试,错一次,记一辈子。
结语:防火墙不是敌人,是帮你守住底线的沉默队友
配置防火墙,本质是学着用最小权限原则说话:只给必要的路,关掉所有暗门。它不会让你的网站更快,但能让你少熬三次夜、少写两封事故报告、少向老板解释“为什么用户说打不开”。下次再看到那个灰扑扑的“Security Group”按钮,别皱眉,笑着点进去——因为你已经知道,那里写的不是规则,是你对线上世界的一份清醒承诺。
(全文完。现在,去检查你的安全组吧——顺便,把那条写着“0.0.0.0/0”的SSH规则删了。)


