This script was directly inspired by the legacy Fortinet tech doc: TCL Decisions.
Below is a quick script utilizing our fairly new grep capabilities in FortiOS.
When launched this script will:
1. Find all policies that match our regex.
2. Store their "edit #" value in a variable named $policyid.
3. Run commands in a foreach loop against those policies.
puts [exec "$cmd\n" "# "]
}
foreach line [split [exec "show firewall policy | grep -f deep-inspection\n" "# "] \n] {
if {[regexp {edit[ ]+([0-9]+)} $line match policyid]} {
continue
} elseif {[regexp {set[ ]+(\w+)[ ]+(.*)\r} $line match key value]} {
lappend fw_policy($policyid) "$key $value"
}
}
do_cmd "config firewall policy"
foreach policyid [array names fw_policy] {
do_cmd "edit $policyid"
do_cmd "unset deep-inspection-options"
do_cmd "next"
}
do_cmd "end"
Enjoy and feel free to post and questions or comments below.
No comments:
Post a Comment