☁️くもをもくもくまなぶ

クラウドコンピューティングサービスの学んだことを中心につらつらと書いています

AWSとWatchGuard製FireBoxのVPN接続

実験してみたので、まとめてみる。
ただUTM装置が障害のAWSとの接続の単一障害点となることを懸念する場合は、
CiscoやYAMAHAといったRouter製品で行うのがベスト。
また、WatchGuardから提供される無償の可視化ツール Dimention は別途まとめる。

概要

AWSについては、既に色々な方が触れているので説明は省略。
WatchGuardのFireBoxを初めて見る方に向けた説明を前半に、
実際にAWSとVPN接続を行う部分は後半に記載。

WatchGuardとは

Fortinet社やPalo Alto社と同様にネットワークセキュリティ装置のベンダー。
また、最近ではエンドポイントセキュリティから、他要素認証まで幅広くサービスを提供。
製品のFireBoxという名前は「Firewall in Box」から。

■日本法人の公式サイト
https://www.watchguard.co.jp/

UTMとは

統合脅威管理(Unified Threat Management)の略称。

一般的に下記の機能を搭載。

  • ファイアウォール(Fire Wall)
  • IDS(Intrusion Detection System):不正侵入検知
  • IPS(Intrusion Prevention System):不正侵入防止
  • アンチウィルス
  • アンチスパム
  • Webフィルタリング

その他、各ベンダー(とのライセンス契約)によって、提供されるサービスが異なる。
WatchGuardの場合、通常トータルセキュリティを1年、あるいは3年という契約期間を提供。

検証に利用したFireBoxは下記の利用状況。

Image in a image block
利用するソフトウェア
  • Fireware OS v12.4.B589964
  • WatchGuard System Manager release 12.4.0(B591532)

WSMは、Windowsのみなので、macOS対応版も欲しいところ...
必要な場合は下記から無償・登録不要でダウンロード可能。

Software for Firebox T15

VPN接続実験環境

利用製品

FireBoxシリーズの中で最小モデル、無線LAN機能がある FireBox T-15-Wを利用。

Image in a image block
全体構成

とりあえず作ったVPCにFireBoxからAWSにVPN接続。

Image in a image block
AWS側準備
VPC作成

とりあえず、10.200.0.0/16と適当なCIDRで作成。

<img width="932" alt="VPC001.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/182636/06da2085-3480-7798-ef5d-2bf14e05e6e7.png">

Customer Gateway作成

自身のグローバルIP(=FireBoxのExternalに付与しているIP)を入力。

<img width="1305" alt="CGW001.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/182636/e62d9358-2a07-ac78-a1c2-c0f4a0692a70.png">

Private Gateway作成

BGPなどで経路情報を識別するためのASN(Autonomous System Number)も設定上不要なため、適当。

Image in a image block

作ったばかりでは、いずれのVPCに紐付かないので設定。

Image in a image block
Site-to-Site(VPN)接続作成

参考ページでは、ルーティングオプションを静的にしていたので倣って設定。

Image in a image block

(参考) How to configure a VPN between a Firebox and an Amazon Web Service network

In the VPN Connection settings, you must select Static Routing. You must specify static routes, which are the only subnets from which Amazon will accept traffic.
作成したVPN接続の設定ファイルをダウンロード

色々なネットワークベンダー用のテンプレートがあるので、 WatchGuard, Inc. を選択し、ダウンロード。

Image in a image block
FireBox側準備
ネットワーク構成

各インターフェイスの設定は下記の通り

Image in a image block
BOVPN仮想インターフェイスの作成

BO(Branch Office:支店、支部)間のVPN接続を行うインターフェイスの作成。

Image in a image block
BOVPN仮想インターフェイスの作成 - ゲートウェイ設定

自身のIP、リモートゲートウェイのIPを入力。

Image in a image block
BOVPN仮想インターフェイスの作成 - フェーズ1の設定

ここの設定内容は前述のダウンロードした設定ファイルに記載されている内容。

Image in a image block
フェーズ2のプロポーザル

フェーズ2の設定は個別に実施。

Image in a image block

ここの設定内容は前述のダウンロードした設定ファイルに記載されている内容。

Image in a image block
BOVPN仮想インターフェイスの作成 - フェーズ2の設定

ここの設定内容は前述のダウンロードした設定ファイルに記載されている内容。

Image in a image block
BOVPN仮想インターフェイスの作成 - VPNルートの設定

仮想インターフェイスで利用するリンクローカルアドレスはここに設定。

Image in a image block
BOVPN仮想インターフェイスの作成 - 設定後

AWSは、 Design for Failure の考え方に基づくのでVPNの経路は必ず2つ設定。

Image in a image block
FireBoxに反映後

VPN接続のステータスが ダウン から アップ に変化(=VPN接続:OK)

Image in a image block
まとめ

FireBoxから無事にAWSへVPN接続ができました。
今回は接続することが主な目的でしたので、インスタンスまでは経路を確認出来ていません。
というのも、FireBoxの設定で、2つのBOVPN仮想インターフェイスに同じ経路が設定できなかったので、
ここは WatchGuardの ユーザフォーラムでトピックに上げてみようかと思います。

BOVPNに同じ経路が設定できてしまうと、ルーティングとしてどちらのインターフェイスを利用するか分からなくなる、
一方で、AWSは必ずVPN接続は2つ必要になるので、インターフェイスも2つ設定することになり、inboundのネットワークは同じにしないと運用上困るのではないかと思います。

BOVPN仮想インターフェイスのVPNルートの設定エラー

下記の2つインターフェイスに対して設定

Image in a image block

1つ目の仮想インターフェイスにVPNルートを設定(実施済)

Image in a image block

1つ目の仮想インターフェイスにVPNルートを設定

Image in a image block

既に設定している内容と重複している

Image in a image block