news 2026/10/5 1:04:43

华为防火墙安全策略优化:从六条规则收敛到五条的ENSP实战

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
华为防火墙安全策略优化:从六条规则收敛到五条的ENSP实战

简介:一份面向网络管理员与信息安全初学者的防火墙规则配置实验指导,围绕华为ENSP仿真环境,结合等级保护2.0对访问控制的要求,讲解防火墙访问控制规则的制定、应用与优化方法。资源内容完整覆盖实验目的、软硬件要求、需求分析、具体操作步骤及规则优化思路,着重演示如何剔除冗余规则、消除规则重叠并保证规则数量最小化,同时附有常见问题注意事项与附加实验,适合用于课程设计或等保合规实践。压缩包内为1个PDF文件,大小约863KB,内容结构清晰,便于查阅。目前已有615人学习下载,可作为理解防火墙安全策略配置的实用参考资料。

1. 防火墙规则配置与优化:一份把六条需求收敛成五条规则的ENSP实战文档

网络通信安全课程里,防火墙规则配置与优化这个实验,是我见过最能反映真实工作状态的一份PDF。它不教你背防火墙概念,而是直接给一个华为ENSP拓扑:内网10.1.1.0/24,外网200.0.0.0/24,六条访问控制需求,要求配完还要优化。很多人按需求一条条配上,结果规则堆了六条,测评一问“为什么不能合并”就卡住。这份文档的价值就在后半段:它把重叠规则剔除、调整匹配顺序,让规则从六条收敛成五条,并且解释了为什么b要排在a前面。适合正在学网络通信安全的学生、准备等保2.0测评的运维,以及第一次接触华为USG防火墙、在ensp配置防火墙web登录这一步卡过壳的人。

2. 等保2.0访问控制要求与区域模型:配置前的两条底层逻辑

2.1 等级保护2.0到底在查什么

这份实验的开头没有直接讲怎么点配置,而是先引了等级保护2.0里的两条要求,这两条其实是整个实验的大纲。第一条要求在网络边界或区域之间按访问控制策略设置规则,默认情况下除允许通信外,受控接口拒绝所有通信。说白了就是白名单模型:没有明确允许,就不许过。第二条要求删除多余或无效的规则,优化访问控制列表,保证规则数量最小化。也就是说,规则不是越多越安全,越多越难维护,测评师看到一张几十条的策略表,第一反应不是“防护真好”,而是“这里面有多少条是失效的”。

实际测评时,检查方式很直接:拉出防火墙策略表,数规则条数,逐条问这条规则对应哪个业务、源和目的是什么、为什么动作是允许。然后检查最后一条兜底是不是deny,再挑几条规则做命中测试。很多单位整改时翻车,不是因为规则配错了,而是因为历史规则堆积,没人说得清每条规则是干什么用的。等保2.0把“规则数量最小化”写成条款,就是要逼着运维去收敛策略表。这份实验把这一过程完整走了一遍:六条需求,配完再优化,最后保留五条,每条都能说出用途。

2.2 防火墙区域模型与规则匹配顺序

华为防火墙配策略前,先得理解“区域”这个维度。接口必须划到某个安全区域里,跨区域的流量才走安全策略检查,同区域内的流量默认是放行的。本实验只有两个区域:内网接口放trust,外网接口放untrust。Trust的信任等级高,untrust的信任等级低,安全策略的作用就是控制高信任区域和低信任区域之间的数据流。如果接口没有加入区域,或者加错了区域,后面配的策略再正确也不会生效。

安全策略的匹配逻辑是自上而下逐条匹配,命中第一条就不再往下看。这带来一个容易被忽略的结论:规则顺序本身就是安全策略的一部分。允许规则放在前面,后面同源范围的禁止规则就会失效;禁止规则放在最前面,则只拦掉部分流量,剩下的继续往后匹配。所以“禁止在前、允许在后、兜底最后”不是口诀,而是匹配机制推导出来的必然结果。后面优化章节里b规则为什么必须排在a前面,就是这个机制的直接体现。

2.3 最小特权原则如何落到规则上

最小特权原则在防火墙上的翻译是:每条规则只放行业务必需的通信,不用的端口、不用的地址范围一律不给。本实验的六条需求就是典型例子:只允许10.1.1.1到10.1.1.100访问外网,意味着101到254虽然也在同一网段,但默认不能上网,除非另有规则放行。单独允许10.1.1.102访问FTP,说明这台主机在1到100的范围之外,必须单独给一条授权。换成黑白名单的说法,a和e是白名单,明确允许;f是黑名单兜底,其余全部拒绝。这套组合的边界非常干净,测评时解释起来也最简单。理解这一点后,再看后面的规则优化,就不会觉得它只是抠条数,而是在保证业务全覆盖的前提下,把规则集合缩到最小。

3. 环境准备与六条规则落地:从ENSP网卡绑定到安全策略逐条配置

3.1 实验拓扑与地址规划

这份实验文档的地址规划很典型:内网用私有地址10.1.1.0/24,外网用200.0.0.0/24,防火墙管理地址是10.1.1.1,通过8443端口提供Web管理界面。下面是完整的地址对照表:

角色地址/网段说明
防火墙管理接口10.1.1.1/24用于浏览器登录Web管理界面
内网PC网段10.1.1.0/24公司内部主机所在网段
允许上网地址范围10.1.1.1-10.1.1.100需求a明确允许访问外网的主机
单独FTP主机10.1.1.102/32需求e单独授权的FTP客户端
外网服务器网段200.0.0.0/24模拟公网资源

这里有两个值得注意的点。第一,10.1.1.102不在1到100的范围内,所以需求a覆盖不到它,需求e才有单独存在的必要,后面优化章节会用到这个逻辑。第二,200.0.0.0/24本身是公网地址段,实验里它被当作外网来用,真实复现时本机互联网出口可能会和它抢路由,这是第5章要展开的坑。

3.2 网卡绑定与Web登录:从“该网卡不存在”到https://10.1.1.1:8443

启动ENSP后加载fw.topo拓扑,如果弹出“该网卡不存在”的提示,直接点确定。这个提示只表示某个网卡没有被ENSP正确识别,不影响拓扑加载。真正要确认的是VirtualBox Host-Only Network #3这块网卡存在,并且它的IP地址在10.1.1.0/24网段内。打开网络与共享中心,进入更改适配器设置,找到VirtualBox Host-Only Network #3,查看详细信息里的IPv4地址。如果不在这个网段,手动改成10.1.1.X/24。这一步是ENSP里的常见操作,模拟器和本机之间就靠这块虚拟网卡通信。

设备全部启动后,打开CMD验证管理链路:

ping 10.1.1.1

能通说明ENSP内部链路正常。然后浏览器访问https://10.1.1.1:8443,输入默认用户名admin、密码abc123..。浏览器会提示证书不可信,继续访问即可。8443是华为USG防火墙Web管理默认端口,生产环境里强烈建议改掉或用管理网段做ACL限制,实验里保持默认就行。

3.3 规则a、b、c:地址对象、服务对象与禁止动作的配置

登录Web界面后,路径是“策略→安全策略→新建”。新建策略时先选源区域和目的区域,再选地址和服务,最后定动作。三条规则的参数如下表:

需求源区域源地址目的区域目的地址服务动作
a. 只允许1-100访问外网trust10.1.1.1-10.1.1.100untrust200.0.0.0/24any允许
b. 禁止内网访问外网telnettrust10.1.1.0/24untrustanytelnet禁止
c. 禁止外网私网地址访问内网untrust私网地址组trustanyany禁止

建地址对象时,10.1.1.1到10.1.1.100要用地址范围类型,不要用网段加掩码的写法。如果图省事写成10.1.1.0/24,101到254的主机也会被放行,需求a的边界就破了。c规则的源地址要建一个地址组,把RFC1918的三个私网段都放进去:10.0.0.0/8、172.16.0.0/12、192.168.0.0/16。实验文档里写的172.16.0.0~172.31.0.0/16,本质就是172.16.0.0/12,只是写法不同。

服务对象这一栏,telnet是华为内置对象,对应TCP 23端口。这里不要自己新建一个TCP 23的服务,内置对象在日志和后续排查里语义更清晰。动作选禁止,就是拒绝匹配的流量,同时可以勾选“启用”保证策略生效。

3.4 规则d、e、f与默认规则:ICMP、FTP与兜底deny的写法

剩下三条规则的参数:

需求源区域源地址目的区域目的地址服务动作
d. 允许所有ICMPanyanyanyanyicmp允许
e. 允许102访问FTPtrust10.1.1.102/32untrustanyftp允许
f. 禁止其他所有anyanyanyanyany禁止

d规则建议源区域和目的区域都选any。如果只配trust到untrust,那么外网主动ping内网时,流量从untrust进来,就匹配不到这条规则,会被后面的默认规则处理,达不到“所有ICMP”的效果。e规则源地址是10.1.1.102/32,服务选内置ftp对象。注意华为的ftp服务对象同时包含TCP 20和21两个端口,只开21会出现控制连接能建立、数据传输超时的问题,第6章的附加实验会再验证这一点。

f规则比较特殊,它对应的是“禁止其他所有访问”。华为USG在策略列表末尾有一条默认策略,默认动作在不同版本里可能是允许,实验文档特意强调要修改默认规则,把动作从允许改成禁止。如果没有默认规则,就新建一条源any目的any服务any动作为禁止的兜底规则,放在所有规则最后。这一步很容易漏,漏掉的结果就是外网能访问内网,等保测评一测就挂。配完这六条,再用命令行看一眼完整策略列表:

display security-policy rule all

能看到规则的序号、区域、地址、服务、动作和命中次数,后面优化和验证都要靠它。

4. 规则优化与顺序调整:为什么六条规则能收敛成五条

4.1 规则重叠判定:c为什么是冗余规则

先看c和f的命中关系。c的命中条件是:源区域为untrust、源地址为私网段、目的区域为trust;动作是禁止。f的命中条件是:任何区域、任何地址、任何服务;动作是禁止。c命中的每一种流量,f都能命中,而且动作一样。也就是说,从最终效果看,没有c,私网地址访问内网照样被f拦掉;有了c,只是多了一条被f覆盖的规则。这就是规则重叠,两条规则对同一批流量产生了完全相同的处理结果。

在这种前提下,c就是文档里说的“多余的规则”,可以直接剔除。剔除后规则数从六条变成五条,行为完全不变。实际运维里,有人会保留c,理由是它能单独统计私网地址的访问日志,方便追踪扫描行为。这个诉求合理,但和本实验“规则数量最小化”的目标冲突,测评场景下按实验要求删掉即可。如果确实要保留,至少要在策略说明里写清楚用途,否则测评师问起来答不上。

4.2 匹配顺序的语义:b为什么必须排在a前面

b的源地址是10.1.1.0/24,服务是telnet,动作禁止。a的源地址是10.1.1.1到10.1.1.100,服务是any,动作允许。注意a的源地址范围完全落在b的源地址范围内,而且a放行所有服务。如果a排在b前面,10.1.1.1到100的telnet流量会命中a,直接被允许,根本走不到b。这样一来,需求b对这部分主机完全失效。

把b排到a前面后,内网任何主机的telnet流量先被b拒绝,剩下的非telnet流量继续往下匹配,a只对1到100的主机生效,两条规则各司其职。这就是“范围更大的禁止规则要放在范围更小的允许规则之前”的典型例子。顺带说一个工程习惯:我一般会把所有禁止规则统一放在策略表最前面,允许规则按业务分组放后面,这样后期加策略时不容易误插到禁止规则前面,把禁令绕过。

4.3 优化后的五条规则:保留理由与测评应答

优化后的策略表如下:

顺序规则动作保留理由
1禁止10.1.1.0/24访问外网telnet禁止覆盖整个内网,必须优先于允许规则
2允许10.1.1.1-100访问外网200.0.0.0允许办公区上外网的唯一授权
3允许所有ICMP允许网络排障需要
4允许10.1.1.102访问FTP允许该主机不在1-100范围内,需单独授权
5禁止其他所有访问禁止兜底拒绝,对应默认规则

顺序上,b必须最前,f必须最后,a、d、e之间互不命中:a和e的源地址范围不重叠,d的服务和它们都不一样。所以a、d、e谁先谁后都不影响结果,这就是文档里“ade不分先后”的原因。如果测评师追问“能不能再少一条”,答案是不能再少:去掉a,1到100的主机全不能上网;去掉e,102的FTP业务断掉;去掉d,ping全断,排障链路没了;去掉b,telnet禁令失效;去掉f,未知流量全部放行。每条规则都有明确的业务边界,这就是“数量最小化”的完整解释。

提示:文档后面的优化章节里,e的源地址被写成了10.1.1.0/24,与原始需求10.1.1.102/32不一致。复现时以原始需求为准,否则a与e会产生重叠,上面的优化推理就不成立了。

5. 避坑指南:地址冲突、登录失败与FTP验证的四个实战记录

5.1 连不上防火墙、访问不了外网:地址冲突与路由的坑

第一个翻车现场是浏览器打不开https://10.1.1.1:8443。现象是ping 10.1.1.1不通,或者通了但Web页面一直转圈。原因多半是本机真实网卡上也有一个10.1.1.1地址。很多家用路由器、校园网的管理地址就是10.1.1.1,本机直连路由优先,数据包根本进不到ENSP里。解决方法是先断开互联网再访问;或者在更改适配器设置里确认VirtualBox Host-Only Network #3的地址确实是10.1.1.X/24,且没有其他网卡占用10.1.1.1。如果只是网卡地址不在这个段,手动改过去就行。

第二个坑是内网PC能ping通10.1.1.1,但ping 200.0.0.x不通。200.0.0.0/24是公网段,真实环境里去这个段的流量会被互联网路由抢走,没走防火墙。文档里给的后悔药是断开互联网测试,或者手动加一条静态路由:

route add 200.0.0.0 mask 255.255.255.0 10.1.1.1 metric 3

这条命令把去往200.0.0.0/24的流量下一跳指到防火墙10.1.1.1,metric 3让它的优先级低于直连路由,不影响本机正常上网。实验拓扑里如果已经把路由配好,就不用重复执行。这个坑在真实项目里也一样存在:测试公网站点时,网关上经常要加临时路由才能把测试流量导到防火墙后面。

5.2 FTP验证与默认规则:模拟器限制和配置遗漏

第三个坑出现在附加实验的FTP验证环节。现象是FlashFXP输对用户名密码后,能登录但目录列表显示不全,大文件传不上去。原因不是策略放通有问题,而是ENSP里的FTP服务实现比较精简,对FTP数据通道和被动模式的支持不完整。解决方法是把FlashFXP连接类型改成主动模式(PORT),验证目标降到“能列出目录、能传小文件”。实验文档也提示过这点,复现时不要在大文件上传上死磕,那不是防火墙的问题。

第四个坑是规则全配完,外网服务器还是能访问内网。现象是策略表里五条规则都在,默认规则也显示了,但一测就连上了。原因多半是默认规则的配置入口没找到,华为USG的Web界面里,默认策略的动作要单独修改,改完才真正生效。解决方法是到策略→安全策略,找到列表末尾那条默认规则,把动作从允许改成禁止;或者干脆新建一条源any目的any服务any的禁止规则放最后。改完再用内网PC从外网地址回连一次,确认被拒绝。

6. 附加实验:仅放行FTP时如何验证ICMP确实被阻断

6.1 从五条规则收缩到两条:操作与验证步骤

附加实验的目标是在原基础上收紧策略:只允许FTP报文通过,ICMP和所有其他报文全部拒绝。操作上,把第4章优化后的五条规则中b、a、d三条停用或删除,保留e和f,策略表变成两条:第一条是允许10.1.1.102访问外网FTP,第二条是默认deny。停用d规则是关键,因为只要d还在,ICMP就会继续放行,附加实验就验证不出“仅FTP”的效果。

验证分两步。先用FlashFXP连接外网FTP服务器,用实验文档给的账号huawei/huawei@123登录,能看到目录列表就算FTP放行成功。然后在PC的CMD里ping外网服务器地址,预期是不通。如果通了,检查两件事:第一,d规则是不是没停干净;第二,是不是有别的规则在放行ICMP。这里再强调一次服务对象的选择,FTP规则务必用华为内置的ftp服务对象,它同时包含TCP 20和TCP 21。只放行21的话,会出现认证成功但目录加载超时的诡异现象,控制通道和数据通道必须一起放。

命令行验证是更可靠的方式。策略调整后执行:

display security-policy rule all

确认生效的策略只有两条,FTP规则在前、deny兜底在后。再执行:

display firewall session table

看会话表里有没有建立起的ICMP会话。正常情况只能看到FTP相关会话,ICMP会话不存在。这条命令比图形界面截图更有说服力,测评现场也认这个证据。

我从第一次做这个实验起就养成了习惯:每次配完防火墙,强制走一遍最小化收敛和命中计数验证,先删重叠规则,再排匹配顺序,最后看会话表确认。这个流程帮我避开了不少策略堆叠的翻车现场。这份PDF实验文档把从规则配置到优化的每一步都印成了截图和命令,照着走一遍,比看十篇概念文章都管用。希望帮到你。

本文还有配套的精品资源,点击获取

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/5 1:03:09

数理统计四大分布:正态、卡方、t与F的构造关系与实战应用

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/5 1:02:35

工业存储为何选MRAM?PIC18LF4685与MR25H40CDF的SPI实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/5 1:01:06

MRAM与MCU工业存储方案:MR25H40CDF与R7KA8T2LFLCAC驱动开发实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/5 1:00:49

STM32F410RB与MR25H40CDF:工业嵌入式MRAM存储方案实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/5 1:00:48

GD32VF103VBT6 SPI驱动MRAM MR25H40CDF工业掉电保护方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华