子命令
子命令
子命令只在对应的配置层级中可用。进入 config 或 edit 后,提示符会显示当前配置对象或条目,退出该层级后,可用命令也会随之变化。
例如,进入管理员表后,提示符显示 admin。
FortiGate # config system admin
FortiGate (admin) #表与条目
配置表包含多个条目。例如,接口以名称区分,防火墙策略以策略 ID 区分。edit 用于进入某个条目,next 保存该条目并返回表层级。
config system interface
edit "port1"
set status up
next
end相关信息
不同配置表支持的子命令不同,使用 ? 确认可用命令。move 只适用于顺序有意义的表,rename 只适用于允许重命名的表,clone 也并非所有表都支持。
表子命令
edit <table_row>:创建或编辑指定条目,进入条目配置层级。delete <table_row>:删除指定条目。purge:清空当前表中的全部条目。move <table_row> {before | after} <target_row>:将条目移到目标条目之前或之后,条目 ID 不变。clone <source> to <target>:将已有条目复制为新条目。rename <old_name> to <new_name>:重命名允许改名的条目。get:列出当前表中的条目。show:查看配置,通常省略默认值。end:保存并退出当前config。
创建与编辑
在防火墙策略等使用数字 ID 的表中,
edit 0用于新建条目,避免误改已有 ID。保存时,设备分配可用的实际 ID。config firewall policy edit 0 ... next endedit 101用于编辑 ID 为101的策略,进入后提示符显示(101) #。config firewall policy edit 101 ... next end
删除与清空
删除指定策略。
config firewall policy delete 101 end清空当前表使用
purge。例如,在防火墙策略表中执行后,设备会要求确认。输入y删除当前 VDOM 中的全部防火墙策略。config firewall policy purge This operation will clear all table! Do you want to continue? (y/n)y end
重要
delete和purge会删除配置,执行前应备份并确认影响。如需恢复,需要重新创建配置或从备份恢复。- 对
system interface或system admin执行清空,不会自动恢复出厂默认条目,可能导致无法连接或登录,严重时需要格式化并恢复设备。
调整顺序
move 使用 before 或 after 指定相对位置。移动只改变策略匹配顺序,不改变策略 ID。
将策略
101移到策略105之前。config firewall policy move 101 before 105 end将策略
101移到策略105之后。config firewall policy move 101 after 105 end
重要
策略顺序影响匹配结果。移动前确认目标策略及其前后规则,移动后检查实际顺序和业务命中情况。
复制与重命名
将策略
101复制为新策略106。新策略会追加到策略列表最下方。config firewall policy clone 101 to 106 end重要
示例中的目标 ID 应未被占用。复制后应检查策略的接口、地址、服务、动作和启用状态,避免直接引入不符合业务需求的规则。
将本地用户
user2重命名为user3。config user local rename "user2" to "user3" end
查看配置
进入接口
lan的条目配置,使用get查看字段值,包括默认值。下面节选查询输出。FortiGate # config system interface FortiGate (interface) # edit "lan" FortiGate (lan) # get name : lan vdom : root vrf : 0 cli-conn-status : 0 fortilink : disable mode : static dhcp-relay-vrf-select: -1 dhcp-relay-service : disable ip : 192.168.100.99 255.255.255.0 allowaccess : ping https ssh http fgfm fabric ftm ... status : up netbios-forward : disable wins-ip : 0.0.0.0 type : hard-switch ...使用
show查看防火墙策略 ID1 的配置。FortiGate # config firewall policy FortiGate (policy) # edit 1 FortiGate (1) # show config firewall policy edit 1 set name "to_Internet" set uuid abd1a44a-818d-51f1-eca7-41fed1a313dd set srcintf "virtual-wan-link" "lan" set dstintf "virtual-wan-link" "lan" set action accept set srcaddr "all" set dstaddr "all" set schedule "always" set service "ALL" set logtraffic all set auto-asic-offload disable set nat enable next end也可以不进入
config firewall policy,直接查看。FortiGate # show firewall policy 1 config firewall policy edit 1 set name "to_Internet" set uuid abd1a44a-818d-51f1-eca7-41fed1a313dd set srcintf "virtual-wan-link" "lan" set dstintf "virtual-wan-link" "lan" set action accept set srcaddr "all" set dstaddr "all" set schedule "always" set service "ALL" set logtraffic all set auto-asic-offload disable set nat enable next end
字段子命令
进入 edit 后,字段子命令用于修改当前条目。
set <field> <value>:设置字段值,列表字段会替换原有列表。unset <field>:将字段恢复为默认值。select <field> <values>:仅保留列表中指定的值。unselect <field> <values>:从列表中移除指定的值。append <field> <values>:向列表追加值。clear <field>:清空支持该操作的多选字段。get:查看当前条目的配置,包含默认值和自定义值。show:查看当前条目的配置,通常只显示非默认值。next:保存当前条目,退出edit,返回所属表。abort:放弃当前未保存的修改并退出当前配置命令。end:保存配置并退出当前config。
重要
unset是恢复默认值,不等同于把字段设为空。abort不会撤销此前已经通过next或end保存的配置。
相关信息
列表字段的操作示例参见系统管理 → 管理方式 → CLI 管理 → CLI 基础,嵌套配置的退出层级参见系统管理 → 管理方式 → CLI 管理 → 命令语法。