作業環境
- 型番:FortiGate 60E
- ファームウェアバージョン:v6.2.4
FortiGate のポリシーの適用順序について
FortiGate のポリシーには適用順序があり、一番最初に条件に合致したポリシーに基づいて通信の許可/拒否が決定されます。
デフォルトではポリシーを作成した順にポリシーが適用されます。
拒否ポリシーを作成せずに許可ポリシーのみを作成する場合は特に気にする必要はありませんが、拒否ポリシーを作成する場合はポリシーの適用順序について意識する必要があります。
拒否ポリシーを作成する場合は以下画像の2パターンのどちらかの考え方になりますが、一部許可する、または一部拒否するポリシーを先に適用する順序にしないと、意図した結果になりません。
ポリシーの適用順序の確認方法
GUI で確認する場合
GUI で確認する場合は、[IPv4 ポリシー] 画面を表示し、画面右上の [シーケンス別] をクリックします。すると以下の画面になります。このリストで上側に記載されているポリシーから順に適用されます。
CLI で確認する場合
CLI で確認する場合は、config firewall policy
の内容から確認します。コンフィグに記載されている順にポリシーが適用されます。
FW01 # show firewall policy
config firewall policy
edit 1
set name "VLAN20 to VLAN30"
#(略)
next
edit 3
set name "VLAN10 to VLAN20"
#(略)
next
edit 4
set name "VLAN20 to VLAN10"
#(略)
next
#(略)
edit 13
set name "VLAN50 to VLAN10 (SNMP)"
#(略)
next
edit 14
set name "VLAN40 to VLAN10 (SNMP)"
#(略)
next
edit 15
set name "VLAN10_to_wan_via_wan1"
#(略)
next
edit 16
set name "deny_10.1.10.4"
#(略)
next
end
ポリシー ID について
GUI のポリシー画面で表示されている ID (= CLI のコンフィグで表示されている edit 番号) は、ポリシーの適用順序とは関係ありません。ただし、以下の仕様から、手動でポリシーの適用順序を変更しない限りは、<ID の昇順> と <適用順序> が一致します。
- 新規作成されたポリシーの ID(=edit 番号)は
<既存の最大ID + 1>
になる - 新規作成されたポリシーの適用順序は一番最後(暗黙の拒否の前)になる
CLI でポリシーを作成する場合は edit 番号(=ID)を自分で決める必要があるため、採用した edit 番号によっては <ID の昇順> と <適用順序> が一致しない状況になる可能性があります。
ポリシー適用順序の変更方法
GUI で変更する場合
GUI で変更する場合は、[IPv4ポリシー] 画面を開きます。ポリシーリストの [ID] 欄にマウスポインタを持っていくと、ポインタがあるポリシーの行をドラッグして移動させることができるため、移動させたい位置まで対象ポリシーをドラッグして移動させます。
CLI で変更する場合
CLI で変更する場合は、config firewall policy
階層の中で以下コマンドを実行します。
move <移動対象ポリシーの ID> <after | before> <基準ポリシーの ID>
ポリシーの ID
:コンフィグでの edit 番号のこと
after
:基準ポリシーの後に対象ポリシーを移動させますbefore
:基準ポリシーの前に対象ポリシーを移動させます
例えば、ポリシー ID が 15 のポリシーを、ポリシー ID が 16 のポリシーの後に移動させる場合は、以下のコマンドを実行します。
config firewall policy
move 15 after 16
end
―――――――――――――