ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

天融信防火墙命令速查:接口、区域、NAT策略与DHCP配置指南

天融信防火墙命令速查:接口、区域、NAT策略与DHCP配置指南 简介这份PDF面向网络运维与安全从业者聚焦天融信防火墙的命令行配置与日常运维操作适合刚接触该品牌设备、需要快速上手或查阅命令的工程师。资源为单文件PDF压缩包约8KB内容以命令语法与配置示例为主便于随身查阅和打印。已有1596人学习下载说明其在同类资料中具备一定参考价值。文档覆盖区域权限设置、网口IP配置与启停、交换与路由模式切换、自定义服务与主机对象定义、VLAN接口配置、ADSL拨号、DHCP服务部署、地址转换策略以及访问控制策略等典型场景并给出web服务器外网访问、源地址转换等完整配置片段。读者可借此梳理天融信防火墙的命令体系对照实际设备完成策略下发与排错适合作为配置手册或实验参考使用。1. 天融信防火墙命令速查从 Helpmode 到 NAT 策略的一条龙拆解手里拿到一台天融信防火墙Web 界面点得进去但策略死活不生效或者串口 console 连上了却不知道从哪条命令下手——这种场景我遇到过太多次。这份《天融信防火墙命令.pdf》就是冲着这个痛点来的它把 TopOS 体系下最常用的命令行操作按功能模块整理成了一份速查手册覆盖接口配置、区域定义、地址对象、服务对象、NAT 策略、DHCP 服务、ADSL 拨号、访问控制这些日常运维绕不开的环节。适合谁一是刚接手天融信设备、需要快速上手命令行的网络运维二是习惯用脚本批量下发策略、不想每次开 Web 界面点半天的老手三是做等保整改时需要核对防火墙配置项、想有个命令对照表的工程师。它不教你防火墙原理但能让你在 console 或 SSH 里把该配的东西配出来。2. 接口、区域与对象定义命令行的地基怎么打2.1 接口配置IP、开关与交换/路由模式切换天融信防火墙的接口操作集中在network interface这个命令族下。给物理口配 IP 是最基础的一步格式是network interface 接口名 ip add 地址 mask 掩码 label 标签。这里的 label 参数很多人第一次见会愣一下它其实是给接口打一个逻辑标签后续在策略里引用时可以用标签代替具体接口名方便批量管理。# 给 eth16 口配置 IP 地址label 0 表示默认标签 network interface eth16 ip add 192.168.4.12 mask 255.255.255.0 label 0 # 禁用 eth16 口相当于 shutdown network interface eth16 shutdown # 重新启用 eth16 口 network interface eth16 no shutdown # 将 eth16 切换为交换模式 network interface eth16 switchport # 切回路由模式 network interface eth16 no switchport逻辑说明shutdown和no shutdown是一对开关前者断口后者恢复和 Cisco 系的习惯一致。switchport和no switchport控制接口工作在二层交换还是三层路由模式——这个选择直接影响你后面能不能在接口上配 IP、能不能做 NAT。参数方面mask 用点分十进制写法label 是整数一般从 0 开始编。VLAN 接口的配置稍微不同需要先创建 VLAN 子接口再配 IP# 创建 VLAN 1 接口并配置 IP network interface vlan.0001 ip add 192.168.1.1 mask 255.255.255.0 label 0注意 VLAN 接口编号用四位数字vlan.0001对应 VLAN 1。这个命名规则在批量脚本里要特别注意别写成vlan.1设备不认。2.2 区域定义access on/off 的权限逻辑区域area是天融信防火墙策略模型的核心概念。每个接口必须绑定到一个区域策略的匹配也是基于区域来的。定义区域的命令是define area add name 区域名 attribute 接口名 access on|off。# 定义区域 E1绑定 eth1 接口允许访问 define area add name E1 attribute eth1 access on # 定义区域 area_eth0绑定 eth0 接口禁止访问 define area add name area_eth0 attribute eth0 access off这里的access on和access off容易搞混。on 表示该区域允许被访问权限开放off 表示禁止。实际配策略时如果区域 access 是 off后面写再多 firewall policy 也不会生效——这是新手最常翻车的地方之一。我一般建议先把所有业务区域的 access 设为 on确认策略生效后再按需收紧。2.3 地址对象与服务对象host、subnet、range、service天融信把地址对象分得很细单个主机用define host子网用define host subnet或define subnet地址范围用define range。服务对象则用define service定义需要指定协议号和端口号。# 定义单个主机对象 define host add name WEB_server ipaddr 192.168.4.100 # 定义子网对象 define subnet add name subnet_100 ipaddr 100.1.1.0 mask 255.255.255.0 # 定义地址范围NAT 地址池用 define range add name nat-pool ip1 100.1.1.1 ip2 100.1.1.2 # 定义自定义服务TCP 协议协议码 6端口 8080 define service add name Web_port protocol 6 port 8080协议码这里要记一下TCP 是 6UDP 是 17ICMP 是 1。写 service 的时候 protocol 后面跟的是数字不是字符串写成protocol tcp设备会报错。端口号可以写单个端口也可以写范围具体语法看版本常见做法是用port 8080-8090这种格式。对象定义完之后策略里就可以直接用名字引用了不用每次写 IP。这个习惯在管理几十条策略的时候能省大量时间也减少写错 IP 的概率。3. NAT 策略与访问控制源 NAT、目的 NAT 怎么配不出错3.1 源地址转换SNAT内网出外网的标准写法源 NAT 解决的是内网主机访问外网时源地址转换的问题。天融信的 NAT 策略命令是nat policy add通过srcarea、dstarea、orig_src、trans_src这几个参数组合来控制转换行为。# 定义内网区域和外网区域 define area add name area_eth1 access on attribute eth1 define area add name area_eth0 access off attribute eth0 # 定义内网子网对象 define subnet add name subnet_100 ipaddr 100.1.1.0 mask 255.255.255.0 # 定义 NAT 转换后的固定 IP define host add name nat-ip ipaddr 200.1.1.1 mask 255.255.255.255 # 定义 NAT 地址池 define range add name nat-pool ip1 200.1.1.1 ip2 200.1.1.2 # 源 NAT 规则内网子网转换为固定 IP nat policy add dstarea area_eth0 orig_src subnet_100 trans_src nat-ip enable yes # 源 NAT 规则内网子网从地址池动态选择转换 IP nat policy add dstarea area_eth0 orig_src subnet_100 trans_src nat-pool enable yes逻辑说明dstarea指定目的区域通常是外网口所在区域orig_src是转换前的源地址对象trans_src是转换后的地址。enable yes表示策略立即生效。固定 IP 和地址池的区别在于固定 IP 适合需要对外呈现单一地址的场景比如某些需要 IP 白名单的对端地址池适合多用户共享少量公网 IP 的场景设备会自动分配。参数上要注意mask在 host 定义里写255.255.255.255表示单个主机别写成255.255.255.0否则会被当成一个子网处理。3.2 目的地址转换DNAT外网访问内部服务器的映射目的 NAT 是把外网访问某个公网 IP 的流量转发到内部真实服务器上。天融信的做法是通过orig_dst和trans_dst来指定转换前后的目的地址。# 定义外网区域 define area add name E1 access on attribute eth1 # 定义 WEB 服务器真实地址 define host add name WEB_server ipaddr 192.168.4.100 # 定义对外映射地址 define host add name MAP_IP ipaddr 200.1.1.100 # 定义服务端口 define service add name Web_port protocol 6 port 8080 # 目的 NAT 规则外网访问 MAP_IP:8080 转发到 WEB_server:8080 nat policy add srcarea E1 orig_dst MAP_IP orig_service Web_port trans_dst WEB_server trans_service Web_port逻辑说明srcarea是发起访问的区域外网orig_dst是对外呈现的地址trans_dst是内部真实服务器地址。orig_service和trans_service可以不同比如外部访问 80 端口映射到内部 8080这种端口重定向在 NAT 规则里直接改 trans_service 就行。一个常见坑如果orig_service写了具体端口但trans_service没写设备可能不会自动继承导致转换后端口丢失。我一般习惯两边都显式写上哪怕端口一样。3.3 访问控制策略firewall policy 的匹配顺序NAT 配完了不代表能通还得有访问控制策略放行。天融信的访问控制命令是firewall policy add核心参数是action、srcarea、dstarea还可以细化到源地址和目的地址。# 允许 area_eth12 访问 area_eth11 firewall policy add action accept srcarea area_eth12 dstarea area_eth11 # 允许任意源地址访问 area_eth11 firewall policy add action accept src any dstarea area_eth11匹配顺序是从上往下匹配到第一条就执行动作不再继续往下查。所以策略的顺序很关键具体的放行规则要写在宽泛规则前面否则宽泛规则先匹配上了后面的细粒度规则就形同虚设。这个逻辑和 iptables 的链式匹配是一样的。action除了 accept 还有 deny默认策略一般是 deny all所以最后最好补一条firewall policy add action deny src any dst any兜底。不过有些版本默认就有隐式拒绝具体看设备行为配之前用show firewall policy确认一下当前策略列表比较稳妥。4. DHCP 服务与 ADSL 拨号两个高频场景的完整配置链4.1 DHCP 服务器地址池、MAC 绑定与启动防火墙兼做 DHCP 服务器是很常见的需求尤其是中小网络没有独立 DHCP 设备的场景。天融信的 DHCP 配置分三步配接口 IP、定义区域并开放 DHCP 服务、配地址池并启动。# 第一步给 eth1 口配 IP network interface eth1 ip add 10.10.10.1 mask 255.255.255.0 # 第二步定义区域绑定 eth1允许访问 define area add name area_eth1 access on attribute eth1 # 第三步在区域上开放 DHCP 服务 pf service add name dhcp area area_eth1 addressname any # 第四步配置 DHCP 地址池 network dhcp server add_subnet subnet 10.10.10.0 submask 255.255.255.0 gateway 10.10.10.1 # 第五步可选给指定 MAC 绑定固定 IP network dhcp server add_host name bind macaddr 00:50:04:c3:b0:31 ipaddr 10.10.10.100 # 第六步在 eth1 口启动 DHCP 服务 network dhcp server start on eth1 # 查看已分配的 IP network dhcp show binded逻辑说明pf service add这一步容易被漏掉。它控制的是哪些服务可以在哪个区域上被访问DHCP 作为一种服务也需要显式开放。add_subnet定义地址池范围gateway参数指定下发给客户端的网关地址一般就是接口本身的 IP。add_host做 MAC-IP 绑定适合打印机、服务器这类需要固定 IP 的设备。参数上注意submask和接口的mask要一致不一致会导致地址池范围计算错误。start on eth1指定在哪个物理口上监听 DHCP 请求如果设备有多个内网口每个口都要单独启动。4.2 ADSL 拨号从参数设置到状态查看ADSL 拨号场景在分支节点很常见天融信的命令行配置链路比较清晰# 设置 ADSL 拨号参数 network adsl set dev eth0 username adsl1234 passwd 123456 attribute adsl # 定义外网区域绑定 ADSL 属性 define area add name adsl-a attribute adsl access on # 配置源 NAT内网区域出 ADSL 时转换源地址 nat policy add srcarea area_eth1 dstarea adsl-a trans_src adsl # 启动拨号 network adsl start # 查看拨号状态 network adsl show statusnetwork adsl show status的输出包含 STATE、RX_BYTES、TX_BYTES、RX_PKTS、TX_PKTS、ELAPS 这些字段。STATE 显示PHASE_RUNNING表示拨号成功如果显示其他状态比如PHASE_DISCONNECT优先检查用户名密码和物理链路。RX/TX 字节数和包数可以用来判断链路是否有实际流量ELAPS 是连接持续时长。这里有个细节attribute adsl在定义区域时引用的是 ADSL 的属性名不是接口名。这个属性名是在network adsl set里通过attribute参数指定的两边要对应上否则区域绑定会失败。5. 避坑与排查命令配完了不通先查这五个地方5.1 区域 access off 导致策略不生效现象firewall policy 写了 acceptNAT 规则也配了但流量就是不通。原因区域定义时 access 设成了 off该区域的所有流量在入口就被丢弃了后面的策略根本没机会匹配。解决用show area或类似命令确认目标区域的 access 状态改成 on 再测。这个坑我踩过不止一次后来养成习惯——配完区域先确认 access 状态再往下走。5.2 服务对象协议码写错现象define service add name xxx protocol tcp port 8080报错或策略不匹配。原因protocol 参数要求的是数字协议码不是协议名字符串。TCP 要写 6UDP 要写 17。解决把protocol tcp改成protocol 6。如果记不住协议码配之前在文档里查一下或者先用show service看看已有服务对象的格式。5.3 NAT 策略的 srcarea/dstarea 方向搞反现象内网出外网的 SNAT 配了但没生效或者外网访问内部服务器的 DNAT 不通。原因srcarea 和 dstarea 的方向搞反了。SNAT 的场景srcarea 应该是内网区域dstarea 是外网区域DNAT 的场景srcarea 是外网区域dstarea 通常不写或写 any。解决画一个简单的流量方向图确认发起方在哪个区域、目的方在哪个区域再对应填参数。5.4 DHCP 服务未在区域上开放现象DHCP 地址池配了、服务也 start 了但客户端拿不到 IP。原因pf service add name dhcp area xxx addressname any这一步漏了区域没有开放 DHCP 服务权限。解决补上这条命令然后确认network dhcp show binded有没有分配记录。如果还是没有检查客户端和防火墙之间的二层链路是否通。5.5 策略顺序导致宽泛规则覆盖细粒度规则现象明明写了一条精确的 deny 规则但流量还是被放行了。原因在这条 deny 规则之前有一条更宽泛的 accept 规则先匹配上了。天融信的 firewall policy 是从上往下匹配匹配到就停。解决用show firewall policy查看当前策略顺序把精确规则移到宽泛规则前面。如果设备支持策略插入位置参数直接在指定位置插入不支持的话就得删了重建。6. 批量下发与配置备份把命令手册用出脚本化的效率单台设备手敲命令还能接受但如果你管着十几台天融信防火墙每台都要配类似的策略一条条敲就是跟自己过不去。我的做法是把这份命令手册里的常用操作抽成模板脚本通过 SSH 批量下发。#!/bin/bash # 批量下发区域和 NAT 策略的模板脚本 # 用法将设备 IP 列表写入 devices.txt每行一个 while read -r ip; do echo 正在配置 $ip ssh admin$ip EOF define area add name LAN access on attribute eth1 define area add name WAN access on attribute eth0 define subnet add name lan_subnet ipaddr 192.168.1.0 mask 255.255.255.0 define host add name nat_ip ipaddr 200.1.1.1 mask 255.255.255.255 nat policy add dstarea WAN orig_src lan_subnet trans_src nat_ip enable yes firewall policy add action accept srcarea LAN dstarea WAN EOF echo $ip 配置完成 done devices.txt这个脚本的核心思路是把命令手册里的固定模式提取出来用 here-document 一次性喂给设备。参数说明devices.txt里每行一个设备管理 IPadmin替换成实际的管理账号。注意不同版本的 TopOS 对命令的响应可能有差异建议先在测试设备上跑一遍确认没有报错再推到生产环境。配置备份同样可以脚本化。天融信一般支持show running-config或类似命令导出当前配置我习惯在每次变更前先备份一份# 备份单台设备配置 ssh admin192.168.4.12 show running-config backup_192.168.4.12_$(date %Y%m%d).conf这个习惯救过我一次——有回批量下发策略时把一条区域定义写错了导致整个内网区域 access 变成 off所有流量中断。幸好变更前备份了配置回滚只花了三分钟。从那以后我每次批量操作前都强制走一遍备份流程不管变更多小。验证配置是否生效除了看show系列命令的输出最直接的办法还是从客户端实际测。内网机器 ping 外网地址、外网机器 telnet 映射端口这两步过了基本就没问题。如果 ping 通但端口不通回头查 firewall policy 和服务对象定义如果 ping 都不通先查 NAT 和区域 access 状态。这个排查顺序能帮你快速缩小范围不用在几十条命令里瞎找。希望帮到你。本文还有配套的精品资源点击获取
返回列表