FortiGate「ゾーン内トラフィックをブロック」を検証する

ファイアウォール(UTM)

作業環境

  • FortiGate-VM v7.0.5

「ゾーン内トラフィックをブロック」 とは

ゾーン設定において、「ゾーン内トラフィックをブロック」というオプションがあります。

デフォルトでは ON になっています。

CLI でいうと config system zone 内ゾーン設定の set intrazone に該当します。

config system zone
    edit "SampleZone"
        set intrazone deny
    next
end

このオプション設定の意味を検証します。

GUI と CLI で値の意味が逆になるため注意して下さい。

  • ゾーン内トラフィックをブロックONset intrazonedeny
  • ゾーン内トラフィックをブロックOFFset intrazoneallow

先に結論

ゾーン内トラフィックをブロックとは
  • ゾーン内の異なるセグメント間の通信をブロックするか、許可するかの設定
  • デフォルトでは ON(ゾーン内の異なるセグメント間の通信は拒否される)
  • ON にしているときに一部のゾーン内通信を許可したい場合はポリシーを設定する

「ゾーン内トラフィックをブロック」ON の場合

  • 以下画像の構成で「ゾーン内トラフィックをブロック」を ON にした状態します
  • ポリシー設定は暗黙の拒否ポリシーのみがある状態です

この状態で端末①と端末②間で Ping してみると疎通不可になります。

◆端末①→端末②

C:\Users\user01>ping 10.1.20.10

10.1.20.10 に ping を送信しています 32 バイトのデータ:
要求がタイムアウトしました。
要求がタイムアウトしました。
要求がタイムアウトしました。
要求がタイムアウトしました。

10.1.20.10 の ping 統計:
    パケット数: 送信 = 4、受信 = 0、損失 = 4 (100% の損失)、

◆端末②→端末①

C:\Users\user01>ping 10.1.10.10

10.1.10.10 に ping を送信しています 32 バイトのデータ:
要求がタイムアウトしました。
要求がタイムアウトしました。
要求がタイムアウトしました。
要求がタイムアウトしました。

10.1.10.10 の ping 統計:
    パケット数: 送信 = 4、受信 = 0、損失 = 4 (100% の損失)、

転送トラフィックログを見てみると、暗黙の拒否ポリシーで拒否されていることが分かります。

「ゾーン内トラフィックをブロック」OFF の場合

  • 以下画像の構成で「ゾーン内トラフィックをブロック」を OFF にした状態します
  • ポリシー設定は暗黙の拒否ポリシーのみがある状態です

この状態で端末①と端末②間で Ping してみると疎通成功します。

◆端末①→端末②

C:\Users\user01>ping 10.1.20.10

10.1.20.10 に ping を送信しています 32 バイトのデータ:
10.1.20.10 からの応答: バイト数 =32 時間 =1ms TTL=127
10.1.20.10 からの応答: バイト数 =32 時間 <1ms TTL=127
10.1.20.10 からの応答: バイト数 =32 時間 <1ms TTL=127
10.1.20.10 からの応答: バイト数 =32 時間 <1ms TTL=127

10.1.20.10 の ping 統計:
    パケット数: 送信 = 4、受信 = 4、損失 = 0 (0% の損失)、
ラウンド トリップの概算時間 (ミリ秒):
    最小 = 0ms、最大 = 1ms、平均 = 0ms

◆端末②→端末①

C:\Users\user01>ping 10.1.10.10

10.1.10.10 に ping を送信しています 32 バイトのデータ:
10.1.10.10 からの応答: バイト数 =32 時間 =1ms TTL=127
10.1.10.10 からの応答: バイト数 =32 時間 =1ms TTL=127
10.1.10.10 からの応答: バイト数 =32 時間 <1ms TTL=127
10.1.10.10 からの応答: バイト数 =32 時間 =1ms TTL=127

10.1.10.10 の ping 統計:
    パケット数: 送信 = 4、受信 = 4、損失 = 0 (0% の損失)、
ラウンド トリップの概算時間 (ミリ秒):
    最小 = 0ms、最大 = 1ms、平均 = 0ms

一部のゾーン内通信のみを許可したい場合

ゾーン内トラフィックをブロック」を ON にして原則ゾーン内通信を拒否しつつ、一部のゾーン内通信を許可したい場合は、ポリシーを設定します。

端末①から端末②への通信を許可したい場合は、例えば以下のようなポリシーを設定します。

着信インターフェース及び発信インターフェースには対象のゾーンを指定します。

このポリシー設定によって端末①から端末②への通信が可能となります。

◆端末①→端末②

C:\Users\user01>ping 10.1.20.10

10.1.20.10 に ping を送信しています 32 バイトのデータ:
10.1.20.10 からの応答: バイト数 =32 時間 =1ms TTL=127
10.1.20.10 からの応答: バイト数 =32 時間 <1ms TTL=127
10.1.20.10 からの応答: バイト数 =32 時間 <1ms TTL=127
10.1.20.10 からの応答: バイト数 =32 時間 <1ms TTL=127

10.1.20.10 の ping 統計:
    パケット数: 送信 = 4、受信 = 4、損失 = 0 (0% の損失)、
ラウンド トリップの概算時間 (ミリ秒):
    最小 = 0ms、最大 = 1ms、平均 = 0ms

転送トラフィックログを見てみると、ポリシーによって許可されていることが分かります。

参考資料

https://docs.fortinet.com/document/fortigate/7.0.5/administration-guide/116821/zone
https://docs.fortinet.com/document/fortigate/7.0.5/cli-reference/84620/config-system-zone

タイトルとURLをコピーしました