FortigateVM ～ VyOSを使ったネットワーク検証

前回に引き続きFortigateVMを利用した検証記事です。今回はVyOSとFortigateVMをつなげて簡単な検証をしてみたいと思います。


## 1. 環境
- VyOS: vyos-1.3.0-epa1-amd64.iso

## 2. ネットワーク周りの設定
ESXi上で仮想スイッチ、およびポートグループを作成しておきます。

LAN用のポートグループ：HONSHA（vSwitch3）※新規追加
WAN用のポートグループ：WAN（vSwitch2）※前回作成済み


## 3. 仮想マシン作成

vCenter管理画面より対象ESXiホストを右クリックして「新規仮想マシン」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/70a9458a-389c-aafc-9eea-c3eed8cb4601.png)

作成タイプの選択から「新規仮想マシンの作成」を選択して「NEXT」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/410a62fb-1a7f-4157-d5ba-de171687ce99.png)

仮想マシン名に任意の値を入れて、「NEXT」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/7b84a03b-f6de-384c-e9c1-4eb4aeef091b.png)

「NEXT」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/8b86335b-babb-192d-ee22-b4d9b301a040.png)

対象ストレージを選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/198cb461-313c-ceb9-bb4b-e3b447995d31.png)

「NEXT」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/ee617890-28ca-d582-c653-a670e049ca24.png)

ゲストOSファミリにLinux、ゲストOSバージョンはDebian GNU/Linux9(64ビット)を選択して「NEXT」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/f14d8f8b-054f-facf-720a-185716682822.png) 

ネットワークを二つ追加して、下記画面のように割り当てます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/fe169d41-ce4d-b848-996e-f9bd48fec740.png)


「FINISH」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/c13cb97e-8784-5abe-6c60-25b606885270.png) 


## 4. VyOSインストール/設定

仮想マシンをpoweronしWebコンソールを開くと下記画面に遷移しますので、Enterを押します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/b6af95ce-934c-9615-ae34-b9c080cabaff.png)

しばらくするとログインプロンプトが表示されますので、vyos/vyosでログインします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/b53e790a-b0dc-8e98-d308-25854307fefb.png)

install imageコマンドでインストールを実施します。以下選択が求められる所のみ記載します。

```bash
Would you like to continue?(Yes/No) [Yes]:       #Enterを押します。

Partition (Auto/Parted/Skip) [Auto]:             #Enterを押します。

Install the image on? [sda]:                     #Enterを押します。

This will destroy all data on /dev/sda.
Continue? (Yes/No) [No]:                         #Yesと入力してEnterを押します。

How big of a root partition should I create?     #Enterを押します。

Which one should I copy to sda?                  #Enterを押します。

Enter password for administrator accaount
Enter password for user 'vyos':                  #vyos と入力してEnterを押します。
Retype password for user 'vyos':                 #vyos と入力してEnterを押します。

Which drive should GRUB modify the root 
partision on ? [sda]:                            #Enterを押します。
```

これで初期設定は完了です。SSH接続できるようインタフェースにIPを振っていきます。
この設定以降はTeraTermなどのターミナルソフトでSSH接続可能となります。

```bash
conf
set interfaces ethernet eth0 address 10.2.0.30/24
set interfaces ethernet eth1 address 172.16.0.1/25
set interfaces ethernet eth2 address 192.168.0.254/24
set service ssh
commit
save
```

## 5. FortigateVM インタフェース設定
次はFortigateVMのインタフェース設定を実施します。管理画面にログイン後、ネットワークからインタフェースを選択します。まずPort2から変更します。画面上にある編集ボタンをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/234ee0b7-2acd-5de7-b868-d28f2266dbf3.png)

IP/ネットマスクの欄にアドレスを入れ、管理アクセスの項目からPINGチェックを入れて「OK」ボタンをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/6bbf5004-b084-64b0-4f16-299bf6d374de.png)

同様にPort3も設定します。設定後は下記画面のようになります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/05f68dbf-cdde-df47-25ad-46862fd451c9.png)

ここで、VyOSとFortgateVMがどのような構成になっているのかを簡単に図示すると

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/05cc5edd-b014-c903-7a9c-8debb8750f26.png)

といった具合になっています。ここで、FortgateVMのPort3側のセグメントとVyOSのeth2側のセグメント間で疎通できるようスタティックルートを設定してみたいと思います。まずはVyOSから設定していきます。

```bash
set protocols static route 10.10.0.0/24 next-hop 172.16.0.126
commit
save
```

次にFortgiate管理画面よりネットワーク～スタティックルートをクリックして画面を遷移させて、「新規作成」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/d7b98317-3202-9a9c-a6d4-d0aacf99e088.png)

宛先アドレス(192.168.0.0/24)とゲートウェイアドレス(172.16.0.1)を入力してインタフェースをport2を選択し「OK」ボタンをクリックします。
<img width="600" alt="image.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/1949f63e-d187-d565-8796-8ceb825bbf4d.png">

ファイアウォールポリシーを下記の通り開けています。（この辺りは後日別の記事で。。。。）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2335933/c75f0f89-bf63-e0c5-f95a-b145aafcece3.png)


では、早速VyOSから疎通確認をしてみます。

```bash
vyos@vyos:~$ ping 10.10.0.254 source-address 192.168.0.254
PING 10.10.0.254 (10.10.0.254) from 192.168.0.254 : 56(84) bytes of data.
64 bytes from 10.10.0.254: icmp_seq=1 ttl=255 time=0.146 ms
64 bytes from 10.10.0.254: icmp_seq=2 ttl=255 time=0.170 ms
64 bytes from 10.10.0.254: icmp_seq=3 ttl=255 time=0.175 ms
64 bytes from 10.10.0.254: icmp_seq=4 ttl=255 time=0.147 ms
64 bytes from 10.10.0.254: icmp_seq=5 ttl=255 time=0.104 ms
^C
--- 10.10.0.254 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 113ms
rtt min/avg/max/mdev = 0.104/0.148/0.175/0.027 ms
vyos@vyos:~$
```

無事疎通できました！

## 6. その他
今回はVyOSとFortigateVM間でスタティックルーティングの設定および疎通確認を実施しました。次回は少し台数を増やしてダイナミックルーティングを動かしてみたいと思います。