华为云服务器配置的核心在于“控制台安全组”与“操作系统防火墙”双通道协同,开启或关闭防火墙、添加例外端口都必须同时操作这两层,否则极易出现“规则加上了但端口依然不通”的局面。
华为云服务器配置的入口与核心思路
先明确一个基础认知:华为云服务器(ECS)的防护体系分为云上安全组和实例内部系统防火墙,安全组是公有云默认的前置过滤层,负责对进出虚拟机的所有流量做第一道筛选;而系统防火墙(如Linux的firewalld、Windows Defender Firewall)则运行在操作系统内部,属于第二道防线,两者是“串联”关系,流量必须层层通过才能抵达应用服务。
登录控制台与找到配置入口
以华为云官网为例,登录后进入“控制台”,在服务列表中选择“弹性云服务器 ECS”,左侧菜单里有“安全组”选项,点击进入后能看到当前地域下的安全组列表,每个安全组内部包含入方向规则和出方向规则,这是配置例外端口的核心位置,操作路径可以理解为:控制台 -> ECS -> 安全组 -> 管理规则。
安全组与系统防火墙的分工
安全组不提供“全局关闭”按钮,只有“允许”和“拒绝”规则;系统防火墙则能直接整体停用,多数用户容易混淆的是:修改安全组放行端口后,系统防火墙仍在拦截,或者反过来,系统防火墙关闭了,安全组却把新端口拒绝了,所以每次变更端口,都要在两个地方分别做确认。
云服务器防火墙的开启与关闭实操
控制台安全组的开关逻辑
安全组的“开启”和“关闭”在操作上没有直观的开关,而是通过增删规则来体现,默认安全组只放行22、3389、ICMP等少量端口,想对外提供Web服务时,需要手动添加80和443规则,如果某些端口不再使用,删掉对应规则就等于“关闭”了该端口的外网访问,修改安全组后通常秒级生效,但若实例启用了“源/目的检查”功能,部分场景下需要重启ECS才能完全刷新状态。
操作系统内部防火墙的启停命令
Linux和Windows的操作路径完全不同。
- Linux(CentOS/RHEL系):CentOS 7及以上默认使用firewalld服务,关闭防火墙的命令是
systemctl stop firewalld,彻底禁用开机自启是systemctl disable firewalld
,查看状态用
systemctl status firewalld,Ubuntu/Debian系则使用ufw,命令为ufw disable和ufw enable。 - Windows Server:在PowerShell(管理员模式)执行
Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled False可以一次性关闭全部网络配置文件的防火墙;若要单独控制,使用Set-NetFirewallProfile -Profile Public -Enabled False,重新开启时将False改为True即可。
生产环境不建议完全关闭系统防火墙,即使安全组配置到位,内部防火墙还能拦截来自局域网横向渗透的流量。
添加例外端口的完整步骤与命令示例
在安全组中添加入方向规则
操作路径是:选择目标安全组 -> 点击“入方向规则” -> “添加规则”,关键参数有三个:
- 协议端口:支持TCP、UDP、ICMP等,如果只开放个别端口,选择“TCP”并填写端口号,例如8080;如果要开放一段范围,填“8000-8100”。
- 源地址:常用
/0表示全网段,但更稳妥的做法是指定来源IP或CIDR,例如只允许办公出口IP访问,源地址填0.113.5/32。 - 行为:只有“允许”可选,安全组默认拒绝未匹配的流量。
添加完成后,规则会按优先级顺序生效,华为云安全组不支持自定义优先级数字,它依据规则的匹配顺序,越靠前的规则优先级越高,但所有“拒绝”规则优先于“允许”规则。
在Linux系统中放行指定端口
假设要开放8080端口给Tomcat服务,执行以下命令:
firewall-cmd --permanent --add-port=8080/tcp firewall-cmd --reload
--permanent让规则持久化,避免重启实例后失效,放行后验证监听状态:
ss -lntp | grep 8080
若服务已运行但没有任何输出,说明应用本身没有监听该端口,检查启动参数或配置文件的listen address。
在Windows系统中放行指定端口
以管理员身份打开PowerShell,执行:
New-NetFirewallRule -DisplayName "Open Port 8080" -Direction Inbound -Protocol TCP -LocalPort 8080 -Action Allow
或者使用传统命令:
netsh advfirewall firewall add rule name="Open Port 8080" dir=in action=allow protocol=TCP localport=8080
删除该规则时,PowerShell用Remove-NetFirewallRule -DisplayName "Open Port 8080",netsh则把add换成delete。
常见配置误区与补救措施
安全组已放行但端口依旧不通
多数情况下是系统防火墙未放行,或者规则端口号写错,排查顺序应为:先检查安全组规则是否匹配实例所在的子网和网卡,再查看系统防火墙状态,最后用telnet或nc从外部测试,也可以临时关闭系统防火墙做对比测试,确认问题层在后重新逐条放行。
服务端口仅监听内网地址
很多应用默认绑定在0.0.1或localhost,这会导致外部流量即使通过了全部防火墙也无法到达服务,可尝试将监听地址改为0.0.0,并确认没有其他进程抢占端口,在Linux上用netstat -anp | grep LISTEN查看完整监听信息,Windows用netstat -ano。
关闭防火墙后的安全风险
部分用户为了省事直接关闭系统防火墙,这在公网环境里极其危险,安全组的默认规则通常比较宽泛,如果同时删除了所有安全组限制,服务器会在几分钟内被扫描器盯上,比较合理的做法是用安全组限制来源IP,例如只放行公司出口IP访问SSH端口,系统防火墙只负责应用层端口管理,这种组合策略在大型IDC服务商中已是标准操作。
华为云与第三方IDC的配置差异与品牌选择
自建IDC服务器没有“云安全组”这一层,防火墙配置全部依赖系统防火墙和硬件网关,这导致许多从华为云迁移到物理机的用户感到不适应,而专业IDC服务商通常会在服务器交付前预置安全基线,帮助企业客户规避坑位,以下为三家主流服务商的对比:
| 对比维度 | 华为云 | 简米科技 | 酷番云 |
|---|---|---|---|
| 安全策略 | 安全组+系统防火墙,规则由用户自行管理 | 预置安全基线模板,提供端口策略咨询 | 顾问式安全配置,绑定DDoS高防联动 |
| 资质保障 | 公有云服务商 | 2003年始创,23年行业沉淀,持有增值电信业务经营许可证(豫B2-20231089),拥有持牌自营机房
|
工信部一类增值电信全牌照(IDC/CDN/ISP),ISO9001+ISO27001双认证,CNNIC IP联盟成员,1000万注册资本主体 |
| 备案与合规 | 支持代备案 | 持牌机房,备案流程成熟 | 滇ICP备2020007656号,合规经验丰富 |
从实操角度来说,华为云更适合清楚自身网络模型的开发团队,而简米科技和酷番云的优势在于他们拥有物理机房和运维经验的沉淀,在安全组规则设计上,公有云给了用户绝对的自由度,但自由也意味着误配置概率高;而类似酷番云这类持牌运营商,通常会提供一份《安全基线对照表》,把常见的端口开放场景整理成推荐模板,降低新手上手成本。
Q&A模块
为什么修改了安全组规则后,端口仍然无法访问?
安全组规则只影响云网络层,流量到达实例后还需要通过系统防火墙,最常见的问题是安全组放行了8080,但实例内部的firewalld或Windows防火墙仍默认拒绝,另一种可能是应用服务本身绑定了0.0.1,只接受本地回环请求,建议按顺序依次检查安全组、系统监听地址、防火墙状态,三步都放行后端口才会真正对外可用。
云服务器可以完全关闭防火墙吗?
可以,但极不推荐,关闭系统防火墙后,安全组成为唯一屏障,如果安全组规则设置过宽(例如/0充分访问全部端口),服务器相当于直接裸露在公网环境中,短时间内会遭受大量恶意扫描和暴力破解尝试,如果确实需要临时关闭进行测试,务必加设安全组的源IP白名单,测试完毕后立即恢复。
使用第三方IDC服务器时,防火墙配置和华为云有何不同?
核心逻辑一致,区别在于管控入口,华为云将安全组集中在Web控制台,而第三方IDC主要依赖操作系统内部防火墙,简米科技在交付裸金属服务器时,会按照客户业务需求预置好iptables或firewalld规则,并提供远程运维支持;酷番云则依托其一类增值电信牌照和双认证背景,在用户完成授权后,协助配置端口映射和访问控制策略,两者都能达到和华为云安全组相同的防护效果,但需要用户在系统中自行完成所有规则编写,配置前建议先仔细阅读服务商提供的操作手册,避免因系统版本差异导致命令失效。
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/565654.html