FortigateVM 7.0.5 でファイアウォール設定および動作を確認する

FortigateVMでファイアウォール設定および動作の確認を行ってみます。

インストールおよび初期設定は ↓ にまとめました。

https://qiita.com/Higemal/items/44f3c419872a171ecc9b

https://qiita.com/Higemal/items/c653ef2a12cb3216ad84


# 1.検証ネットワーク構成
通常は上図のような検証構成をとる形かと思いますが、簡略版として下図のネットワーク構成をとります。

・通常の検証構成
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/9cfd0c3a-0acd-d465-0c4c-68a7a19934b2.png)

・今回の検証構成
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/e0f4ef65-380b-8938-ccc3-09c95683073b.png)


>なお物理環境的にはvmware Workstation + ESXi のNested構成となっているため、このような特殊構成となっています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/58e3dd27-a54c-e11b-5da2-153225ab1448.png)



# 2.FortigateVMからInternetへの通信
以下の設定を行います。
・FortigateVM port1へのインターフェース設定
・FortigateVM へのスタティックルート設定
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/607fe915-84de-b857-c550-6e2781e012fd.png)

## 2-1.インターフェース設定
左ペインから[ネットワーク] - [インターフェース]を開きます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/4891ca10-f50d-3ed9-cd5b-f0ecc4e20d2e.png)

port1をダブルクリックで編集し、以下を設定します。
ロール：`WAN`
推定帯域幅：`1024000 kbps` ※100Mbps
アドレス - アドレッシングモード：`マニュアル`
アドレス - IP/ネットマスク：`192.168.142.101/255.255.255.0`
管理者アクセス - IPv4：`HTTPS,HTTP,PING,SSH`
※MNGと用途共有のため。用途共有しなければPINGのみ or 設定なし
その他 - ステータス：`有効化済み`
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/4ff5d401-d401-971a-98cd-d12387448e64.png)


## 2-2.スタティックルート設定
左ペインから[ネットワーク] - [スタティックルート]を開きます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/43fec413-b381-b252-9b56-00f7538114e5.png)

[新規作成] を押下し、以下を設定します。
宛先：`サブネット` `0.0.0.0/0.0.0.0`
ゲートウェイ：`192.168.142.2`
インターフェース：`port1`
ステータス：`有効化済み`
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/28924a3f-2ef4-567b-b215-8d4bc64ddca5.png)

## 2-3.接続性確認
FortigeteVMのCUIから`www.google.com`への接続性確認を行います。
※DNSについてはデフォルトでFortiGuardサーバ向けの設定が入っているため、特に設定していません。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/6c3638ba-373c-f47e-7c25-3ffc0933477c.png)





# 3.DMZからFortigateVMへの通信
以下の設定を行います。
・FortigateVM port2へのインターフェース設定
・DMZ Clientのスタティックルート設定
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/e4dea709-2cb1-c970-6543-de25c5baf50d.png)

## 3-1.インターフェース設定
左ペインから[ネットワーク] - [インターフェース]を開きます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/4891ca10-f50d-3ed9-cd5b-f0ecc4e20d2e.png)

port1をダブルクリックで編集し、以下を設定します。
ロール：`DMZ`
アドレス - アドレッシングモード：`マニュアル`
アドレス - IP/ネットマスク：`10.0.1.101/255.255.255.0`
管理者アクセス - IPv4：`PING`
その他 - ステータス：`有効化済み`
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/663297ee-dcfc-f1a2-7088-8533c82ee234.png)

## 3-2.DMZ Clientのスタティックルート設定
こちらは使うものによって異なりますが、今回はWindowsなので以下を行っています。
```shell:route
route -p add 0.0.0.0 mask 255.255.255.0 10.0.1.101
route -p add 192.168.142.51 mask 255.255.255.0 192.168.142.2
route print
```
※事前にデフォルトルートが入っている場合は、`route delete 0.0.0.0`なども適宜必要

## 3-3.接続性確認
DMZ-ClientのWebブラウザ(IE)から`www.google.com`への接続性確認を行います。
この時点ではファイアウォールポリシー等の設定がされていないため、通信できません。
（暗黙のdenyにてブロックされている状態）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/603b1c7b-5deb-8808-2342-ee864cded5ed.png)


# 4.ファイアウォールポリシーの設定
FortigateVMにて、DMZ(port2)→WAN(port1)についてのファイアウォールポリシーを設定します。

## 4-1.デフォルトポリシー設定(暗黙の拒否)
左ペインから[ポリシー&オブジェクト] - [ファイアウォールポリシー]を開きます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/c148d377-1b89-107b-a02d-cefbd240094e.png)

デフォルトでは [暗黙の拒否] がログに出力されない設定となっているため、変更します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/775667ee-a59b-3b77-22d3-2386ca299445.png)

ダブルクリックで編集に入り、以下設定を変更します。
IPv4違反トラフィックをログ：`On`
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/a1bf7ffc-f1fd-ddc0-f66c-65d5eb9cc952.png)

ログに出力される設定となりました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/60347e50-1450-8ee0-239f-cb3d783d42c0.png)

## 4-2.DMZ→WANポリシー設定

:::note warn
検証用設定のため、全く検査されないポリシーを作成しています。
商用本番機にはこのような設定をしないでください。
:::

左ペインから[ポリシー&オブジェクト] - [ファイアウォールポリシー]を開きます。
[新規作成] から新規のポリシーを作成し、以下の設定を投入します。

名前：`all_allow`
着信インターフェース：`port2`　※DMZ
発信インターフェース：`port1`　※WAN
送信元：`all`
宛先：`all`
サービス：`ALL`
アクション：`許可`
インスペクションモード：`プロキシベース`
許可トラフィックをログ：`On` `すべてのセッション`
セッション開始時にログを生成：`On`
このポリシーを有効化：`On`
※上記以外はデフォルト
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/d437665e-0489-7c7a-938a-381d013c6a20.png)

## 4-3.接続性確認
この設定後、DMZ-Client側からのInternet向け通信が出来るようになります。
DMZ-ClientのWebブラウザ(IE)から`www.google.com`へ通信が確認できました。
（Ping,DNS,HTTP/s）

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/1b6cd5b4-1d43-1677-3680-53f092df5c92.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/2a36ad19-7dbb-6ae2-ae15-29bb47e87255.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/351edc7c-f1f8-44f0-bc2b-f9938a8b7747.png)

また、ログからも設定したポリシーを利用して通信が発生していることが確認できました。
（[ログ&レポート] - [転送トラフィック]）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/ec5f502b-b5c9-467d-f176-0be503b4de82.png)




# 参考
https://www.fgshop.jp/support/manual/fortigate-interface/

https://www.fgshop.jp/support/manual/fortigate-firewall/

https://www.viva-fortigate.com/archives/17507729.html

https://www.viva-fortigate.com/archives/16376867.html

https://www.viva-fortigate.com/archives/57586442.html