FortigateとAWS VPCとVPN(IPsec)で接続する

AWSとオンプレミス上のFortigateをVPN(IPsec)接続をする方法です。
接続は、静的ルーティングを使用し、サイト間VPN接続で行います。
Fortigateの設定は、CUIでやっている記事が多かったのでGUIでの設定方法を記載します。

接続イメージは以下の図のとおりです。
オンプレミス側のFortigateはシングル構成、VPNトンネルは2接続で設定を行います。

接続における前提条件

  • Fortigateの外部アドレスは固定IPが必要です。
  • AWS VPCは、サブネット、ルーティング(ルートテーブルがVPCにアタッチ)などが事前に設定されている必要があります。

Mainモードでの接続を想定しておりますので固定IPは必須にしております。
aggressiveモードで接続できるかは不明です。

Fortigateの機種/ファームウェアバージョン

今回接続設定を行った機種は「Fortigate60D」です。
ファームバージョンは「v6.0.6 build0272」です。

機種が違う場合は、インターフェイスの設定を読み替えてください。
ファームバージョンが違う場合は、原則v5からは設定差異は無いと思いますが、画面が異なる場合がありますので適意読み替えてください。

接続設定の概要

手順1
仮想プライベートゲートウェイの作成
接続を行うVPCとVPN接続を行うために作成します。ASNの番号は、静的の場合はデフォルトでかまいません。
手順2
カスタマーゲートウェイの作成
オンプレミス側のFortigate用ゲートウェイを作成します。FortigateのWAN IPを設定します。
手順3
VPN接続の作成
作成した仮想プライベートゲートウェイとカスタマーゲートウェイを選択し、VPNトンネルを作成します。
構成情報などは、この手順で作成されます。
手順4
Fortigateの設定
オンプレミスのFortigate側でVPN(IPsec)の設定を行います。
手順5
VPCのルーティング設定など
ルーティングテーブルの編集、セキュリティグループの追加などを行います。

AWS VPCとFortigateの接続設定方法

設定はFortinet Document Libraryを参考にしました。

仮想プライベートゲートウェイの作成

AWSのマネージメントコンソールから「VPC」を選びます。

「仮想プライベートゲートウェイ」を選択します。

「仮想プライベートゲートウェイの作成」を選択します。

名前を任意の名前を付け、ASNはデフォルトを選択したまま「仮想プライベートゲートウェイの作成」を選択します。

作成が完了すると以下の画面が表示されます。

次に、作成された仮想プライベートゲートウェイを選択して「Actions」→「VPCにアタッチ」を選択します。

VPCへのアタッチ選択画面になりますので、接続を行いたいVPCを選択します。

正常にアタッチ出来ましたら以下のように「attached」と表示されます。

以上でプライベートゲートウェイの作成が完了です。

カスタマーゲートウェイの作成

VPCメニューから「カスタマーゲートウェイ」→「カスタマーゲートウェイの作成」を選択します。

以下を参考に設定情報を記入して「カスタマーゲートウェイの作成」を選択してください。

名前:任意の名前
ルーティング:静的
IPアドレス:FortigateのWANインターフェイスに付与されているグローバルIP(ISPから提供の固定IPなど)
Cortificate ARN:未記入

正常に作成が完了すれば、以下の画面が表示されます。

作成したカスタマーゲートウェイの状態が「使用可能」になっていることをご確認ください。

VPN接続設定

VPCメニュー内の「サイト間のVPN接続」→「VPN接続の作成」を選択します。

以下を参考に設定情報を記入してください。

名前タグ:任意の名前
仮想プライベートゲートウェイ:作成済みの仮想プライベートゲートウェイを指定
カスタマーゲートウェイ;既存を選択

Customer Gateway ID:作成済みのカスタマーゲートウェイを指定

ルーティングオプション:静的を指定

静的IPプレフィックス:FortigateのLAN側(internal)セグメントを入力

トンネルオプションはすべてデフォルトのままで「VPN接続の作成」を選択してください。

以下の画面が表示されましたらVPN接続の作成が完了です。

作成されたVPN接続をチェックし、「設定のダウンロード」を選択して、ベンダーなどを画面を参考に選び、テキストファイルをダウンロードしてください。

ダウンロードしたテキストファイルから後ほど、AWS側のトンネルIP事前共有鍵の設定を取り出します。
IPsecの設定情報などはすべてダウンロードしたテキストファイルには記載されているので、一度目を通されることをおすすめします。

Fortigateの設定

Fortigateにログインして、「VPN」→「IPsecウィザード」を選択してください。
VPNセットアップ画面から、任意の名前を入力し、テンプレートタイプを「カスタム」を選択して次へを選択してください。

IPsecの設定画面が表示されますので、以下の画像を参考に設定を入力してください。
名前は任意の名前でOKです。
IPアドレスには、ダウンロードしたテキストファイルに記載のTunnel IPを入力してください。

事前共有鍵は、テキストファイルに記載の値を入力します。

暗号化設定などは下記画像の値を参考に変更をしてください。

フェーズ2の項目では、「高度な設定」を展開して下記画像の値を参考に設定を行ってください。

すべて入力、変更が完了すれば「OK」を選択してください。

次にルーティングを追加します。
「ネットワーク」→「スタティックルート」→「新規作成」を選択します

宛先にVPCのCIDR(ネットワークアドレス)を入れ、インターフェイスは、前工程で作成したVPN(IPsec)のインターフェイスを指定します。
ディスタンスなどは初期のままで「OK」を選択します。

次にAWS間との通信許可を行います。「ポリシー&オブジェクト」→「IPv4ポリシー」→「新規作成」を選択します。

ポリシー作成画面では以下の値を参考に設定を行ってください。

名前:任意の名前

入力インターフェイス:FortigateのLAN側インターフェイス(internal)

出力インターフェイス:先ほど作成したVPN(IPsec)インターフェイス

送信元:任意の値(LAN側ネットワークアドレスのみなど)

宛先:任意の値(VPCのCIDRのみなど)

スケジュール:任意の値

サービス:任意の値

※環境に応じて送信元、宛先などはご変更ください。

アクション:ACCEPT

NAT:オフ

IPSなどのセキュリティ項目も要件に合わせて設定をしてください。

逆側も同じように設定します。

ポリシーに両方向設定できればポリシー設定は完了です。

警告マークは、IPsecが接続されれば、無くなります。

Fortigateの設定は以上です。

VPCルーティング設定

次にVPCからFortigateへのルーティング設定を行います。
「VPC」→「ルートテーブル」を選択します。
仮想プライベートゲートウェイをアタッチしたVPCを選択して、「アクション」から「ルートの編集」を選択します。

「ルートの追加」を選択して、FortigateのLAN(internal)側のネットワークアドレスを入力し、ターゲットを作成した仮想プライベートゲートウェイを指定して「ルートの保存」を選択します。

「VPC」→「サイト間のVPN接続」を選択し、「Tunnel Details」タブを開いて、Tunnel1のステータスが「アップ」になっていれば接続完了です。

アップにならない場合は、Fortigate側で「モニタ」→「IPsecモニタ」を選択し、作成したVPN接続を選択して「アップ」を選択してください。

また、本手順はトンネル1のみ接続ですが、同様の手順でトンネル2のIPを設定してVPN接続設定を行えば、経路の冗長化をできます。
その場合、ルーティング設定でプライオプティの設定をトンネル1または2どちらか下げてください。

以上でFortigateとAWS VPCのVPN接続設定は完了です。

誰かの参考になれば幸いです。

フォーティネット FortiGate-60D バンドル ※初年度保守付き FG-60D-BDL-US
フォーティネット
売り上げランキング: 467,998

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です