跳到内容
当前位置:首页>面试真题>面试真题(六):华为与华三防火墙安全策略配置比对

面试真题(六):华为与华三防火墙安全策略配置比对

  • 2026-09-16 11:53:52
面试真题(六):华为与华三防火墙安全策略配置比对

面试官原题:你运维过华为和华三厂商的防火墙吗?现在要做同一条访问控制需求——放通内网网段访问某业务服务器的 TCP 8080。简述两家配置和差异点。

两家在数据面逻辑上完全一致(都是"区域 + 五元组 + 会话化"),差异全部集中在配置模型、命令方言、默认行为这三件事上。


一、安全策略到底是什么

1.1 安全策略是什么

安全策略是防火墙对首包做访问控制判决的规则集。它回答一个问题:这个报文,放不放?

一条策略本质上就是"匹配条件 + 动作":

  • • 匹配条件:源/目的安全域、源/目的 IP、服务(协议+端口)、用户、应用、VPN 实例、时间段
  • • 动作:允许 / 拒绝(+ 是否做内容安全检测)

1.2 匹配流程

  1. 1. 查路由在策略匹配之前:源域由入接口决定,目的域由出接口决定,而出接口是路由选出来的。所以"策略条件全对却一条都不命中",第一反应不是改策略,而是查路由——报文很可能从另一个域的接口出去了。
  2. 2. 目的 NAT 在查路由和安全策略之前,源 NAT 在安全策略之后:NAT策略中目的NAT会在路由和安全策略之前处理,源NAT会在路由和安全策略之后处理。落到配置上:NAT Server 场景策略目的地址填转换后的私网地址;源 NAT 场景正相反,策略源地址填转换前地址。
  3. 3. 完整顺序: 查Server-map/目的NAT → 查路由(查转换后目的地址)→ 确定域 → 匹配安全策略 → 源NAT → 建会话
  4. 4. 改策略不影响已建立的老会话:只有首包查策略,后续包全走会话表。把 permit 改成 deny 后业务"还通着",不是策略没生效,是会话没老化——删会话或等老化时间到了再验证。
  5. 5. 丢包默认不记日志:两家缺省策略命中默认都不记录日志,想查"谁被拒了"必须显式开启日志功能(具体命令随版本而异),否则日志里什么都看不到。

二、配置逻辑路径对比

同一个需求:放通 192.168.10.0/24 访问 DMZ 服务器 10.10.10.100 的 TCP 8080

步骤
华为 USG
华三 Comware V7(新引擎)
① 创建安全域并加接口
firewall zone trust
add interface GE1/0/1
security-zone name Trust
import interface GE1/0/1
② 创建地址对象
ip address-set inside_net type objectobject-group ip address inside_net
③ 创建服务对象
ip service-set app_8080 type objectobject-group service app_8080
④ 进入策略视图
security-policysecurity-policy ip
⑤ 建规则
rule name trust_to_dmzrule 10 name trust_to_dmz
⑥ 配过滤条件
source-zone trust
destination-zone dmzsource-address address-set inside_netdestination-address 10.10.10.100 32service app_8080
source-zone Trust
destination-zone DMZsource-ip inside_netdestination-ip-host 10.10.10.100service app_8080
⑦ 配动作
action permitaction pass

新配置的规则落在什么位置(决定谁先被匹配)

维度
华为 USG
华三 Comware V7
新建规则的默认位置
策略列表最后(优先级最低,仅高于缺省策略)
策略列表最后(优先级最低,仅高于缺省策略)
不指定编号时
无编号概念,rule name后直接跟名称
自动分配当前最大已用 ID + 1(最大已到 65534 时,回绕取 0~65534 内最小未用编号)
匹配顺序依据
配置顺序
(列表位置)
配置顺序
(列表位置)

🚩 华三的 rule ID 只是标识符,不是优先级——先建 rule 50、后建 rule 1rule 1照样排在后面匹配,这与 ACL"编号小先匹配"的逻辑完全不同,是从 ACL 思维转过来最容易踩的坑。


三、配置对照(同一场景,两家各写一遍)

3.1 场景与组网

场景与组网|697

组网要点

  • • 终端位于 Trust 域(优先级 85),服务器位于 DMZ 域(优先级 50)。流量在两个不同的安全域之间流动,必须匹配安全策略,缺省策略不放过任何跨域流量。
  • • 防火墙的GE1/0/1 加入 Trust 域、GE1/0/2 加入 DMZ 域。接口与安全域的对应关系决定了报文入、出方向的源/目的域,配错接口域就等于把策略配到空气里。
  • • 报文路径:终端(内网) → ① 入接口(GE1/0/1)→ 安全策略引擎(首包判决(无NAT场景):查路由、定目的域、逐条匹配规则,命中即停)→ ③ 出接口(GE1/0/2)→ 服务器。

3.2 华为 USG 系列

# ---------- ① 安全域与接口 ----------[FW] firewall zone trust[FW-zone-trust] add interface GigabitEthernet 1/0/1[FW-zone-trust] quit[FW] firewall zone dmz[FW-zone-dmz] add interface GigabitEthernet 1/0/2[FW-zone-dmz] quit# ---------- ② 地址对象 ----------[FW] ip address-set inside_net type object[FW-object-address-set-inside_net] address 0 192.168.10.0 mask 24[FW-object-address-set-inside_net] quit# ---------- ③ 服务对象 ----------[FW] ip service-set app_8080 type object[FW-object-service-set-app_8080] service protocol tcp source-port 0 to 65535 destination-port 8080[FW-object-service-set-app_8080] quit# ---------- ④ 安全策略 ----------[FW] security-policy[FW-policy-security] rule name trust_to_dmz_8080[FW-policy-security-rule-trust_to_dmz_8080] source-zone trust[FW-policy-security-rule-trust_to_dmz_8080] destination-zone dmz[FW-policy-security-rule-trust_to_dmz_8080] source-address address-set inside_net[FW-policy-security-rule-trust_to_dmz_8080] destination-address 10.10.10.100 32[FW-policy-security-rule-trust_to_dmz_8080] service app_8080[FW-policy-security-rule-trust_to_dmz_8080] action permit[FW-policy-security-rule-trust_to_dmz_8080] quit

华为写法要点

  • • source-address:后面跟 address-set关键字就是引用地址对象,直接跟 IP + 掩码长度就是裸地址。
    • • 例:source-address address-set inside_net(引用对象) / source-address 192.168.10.5 32(裸地址)
  • • 掩码长度写法 destination-address 10.10.10.100 32,也可写成 mask 255.255.255.255
    • • 例:主机 destination-address 10.10.10.100 32≡ destination-address 10.10.10.100 mask 255.255.255.255;网段 destination-address 10.10.10.0 mask 255.255.255.0
  • • 服务对象里 source-port 0 to 65535表示任意源端口;若不写源端口,协议为 TCP/UDP 时通常按任意端口处理(与0 to 65535相同),但显式写出可与项目规范对齐
    • • 例:service protocol tcp destination-port 8080与 service protocol tcp source-port 0 to 65535 destination-port 8080效果相同,后者是项目规范的显式写法
  • • 预定义服务可直接引用,如 service httpservice https
    • • 例:service https直接可用,等价于自建服务集里配 TCP 443,无需手工定义
  • • 地址集还有 type group一层:type object只能放 IP/范围,type group可以把多个 object再聚合。做大规模策略治理时,用 group嵌套能显著降低维护量。
    • • 例:
      [FW] ip address-set all_inside type group[FW-object-address-set-all_inside] address 0 address-set inside_net[FW-object-address-set-all_inside] address 5 address-set oa_net
      security-policy 策略配置里只引用聚合组:source-address address-set all_inside,后续部门网段增删只改对象集、不动策略配置

3.3 华三 Comware(新引擎)

# ---------- ① 安全域与接口 ----------[FW] security-zone name Trust[FW-security-zone-Trust] import interface GigabitEthernet 1/0/1[FW-security-zone-Trust] quit[FW] security-zone name DMZ[FW-security-zone-DMZ] import interface GigabitEthernet 1/0/2[FW-security-zone-DMZ] quit# ---------- ② 地址对象组 ----------[FW] object-group ip address inside_net[FW-obj-grp-ip-inside_net] 0 network subnet 192.168.10.0 255.255.255.0[FW-obj-grp-ip-inside_net] quit# ---------- ③ 服务对象组 ----------[FW] object-group service app_8080[FW-obj-grp-service-app_8080] 0 service tcp source gt 0 destination eq 8080[FW-obj-grp-service-app_8080] quit# ---------- ④ 安全策略 ----------[FW] security-policy ip[FW-security-policy-ip] rule 10 name trust_to_dmz_8080[FW-security-policy-ip-10-trust_to_dmz_8080] action pass[FW-security-policy-ip-10-trust_to_dmz_8080] counting enable[FW-security-policy-ip-10-trust_to_dmz_8080] source-zone Trust[FW-security-policy-ip-10-trust_to_dmz_8080] destination-zone DMZ[FW-security-policy-ip-10-trust_to_dmz_8080] source-ip inside_net[FW-security-policy-ip-10-trust_to_dmz_8080] destination-ip-host 10.10.10.100[FW-security-policy-ip-10-trust_to_dmz_8080] service app_8080[FW-security-policy-ip-10-trust_to_dmz_8080] quit

华三写法要点

  • • 地址对象组三种成员形态:network host address(主机)、network subnet(网段)、network range(范围)—— 直接对应华为 address ... mask 32mask 24range
    • • 例:network host address 10.10.10.100network subnet 192.168.10.0 255.255.255.0network range 192.168.10.10 192.168.10.20
  • • 服务对象组用操作符表达端口:eqgtltrangesource gt 0即源端口 > 0,等价于任意源端口。
    • • 例:0 service tcp destination eq 8080(单端口)、0 service tcp destination range 8000 9000(端口段)
  • • action pass必须写,否则规则不激活。
    • • 例:缺 action时 display security-policy ip回显为 rule 10 name trust_to_dmz_8080 (Inactive),补配 action pass后变为 (Active)
  • • counting enable开启命中计数,排障时靠它判断有没有流量打进来——建议默认就开
    • • 例:display security-policy statistics ip rule trust_to_dmz_8080回显 action: pass (5 packets, 1000 bytes);重新统计用 reset security-policy statistics ip

3.4 华三老引擎:对象策略 + 域间实例

存量网络里大量存在这一套。

# ① 地址对象组(与安全策略共用)object-group ip address srcObjGroup44053 0 network subnet 192.168.224.0 255.255.255.128#object-group ip address destObjGroup44053 0 network host address 221.182.31.8# ② 服务对象组object-group service serverGroup44053 0 service tcp source gt 0 destination range 8080 8081# ③ IPv4 对象策略object-policy ip users200-EXTERNAL rule 601 pass source-ip srcObjGroup44053 destination-ip destObjGroup44053 service serverGroup44053 vrf users200_vpn# ④ 域间实例调用对象策略zone-pair security source users200 destination EXTERNAL object-policy apply ip users200-EXTERNAL

这套模型的结构差异:过滤条件(源/目的/服务)写在 object-policy里,但"域"不在这里——域间方向由 zone-pair security定义。也就是说,安全域是在"应用点"绑定的,不是在规则里绑定的。这与华为/华三新引擎"域作为规则的一个普通过滤条件"是完全不同的建模思路。

⚠️ 互斥关系(官方文档明确):安全策略功能启用后,首次进入安全策略视图时对象策略即失效。若要从安全策略回退到对象策略,必须先 security-policy disable。这条在割接时极易踩雷——不要以为两套并存会叠加生效。


四、默认动作与同域流量

场景
华为
华三
域间
(未命中任何规则)
默认 deny
默认 drop
域内
(同域互访)
默认放行
,不受缺省策略约束
默认拒绝
修改域间默认动作
security-policy
视图下 default action permit/deny
security-policy
视图下 default rule action { drop | pass }

五、排障命令对照

目的
华为
华三
查看全部策略
display security-policydisplay security-policy ip
查看规则命中计数
display security-policy rule alldisplay security-policy ip
查看会话
display firewall session tabledisplay session table
查看安全域
display zonedisplay security-zone
查看缺省动作
display security-policy
(看 default 规则)
display security-policy default action

六、总结对比

写配置、读配置、跨厂商"翻译"配置时回查这张表——同一个功能,两家命令:

抽象功能
华为
华三
安全策略视图
security-policysecurity-policy ip
规则标识
rule name <名称>
名称必填
rule <id> name <名称>
ID+名称
源 / 目的安全域
source-zone
destination-zone
source-zone
destination-zone
源地址(引用对象)
source-address address-set <名>source-ip <对象组名>
源地址(直接写)
source-address <IP> <掩码>source-ip-host
source-ip-subnetsource-ip-range
服务(引用对象)
service <服务集名>service <对象组名>
服务(直接写)
service protocol tcp destination-port 8080service-port tcp destination eq 8080
动作关键字
permit
deny
pass
drop
地址对象(组)
ip address-set <名> type object|groupobject-group ip address <名>
服务对象(组)
ip service-set <名> type object|groupobject-group service <名>
安全域
firewall zone <名>
add interface
security-zone name <名>
import interface

说明配置模型、命令方言、默认行为随软件版本演进会有差异,请以对应版本的产品配置指导为准。