AWS事例001:AWS Network Firewall設定してみた01

KK
2023-06-28
2023-06-28

年三日坊主のKKです。

先日、当社のAWS導入支援サービスをご利用頂いているお客様から「SESでメールが届かないことがある」とご相談頂いたのですが、拙僧のブログ記事を参照してサプレッションリストを確認してからお問い合わせ下さったということでお役に立てて良かったです。


さて、AWSには所謂ファイアウォールに相当するサービスや機能がいくつもあります。

参考:ファイアウォールの仕組み - 総務省:国民のためのサイバーセキュリティサイト

ここではファイアウォール自体についての解説はしませんが、AWSで最も一般的なファイアウォール機能としてはセキュリティグループがあります。

参考:セキュリティグループ - Amazon Virtual Private Cloud

セキュリティグループはトラフィックの送信元または送信先とポート、プロトコルの組み合わせでトラフィックの流れを制御する古典的なファイアウォールの一種です。
ただし、トラフィックの内容はチェックされませんので許可された経路で不正なアクセスや攻撃を受けた場合は全く無防備になります。

そこで今回は既存のAWS VPC環境にAWS Network Firewallを追加してVPCとインターネットの間を流れるすべてのトラフィックをチェックできるように設定してみたいと思います。

参考:What is AWS Network Firewall?

追加前のVPCは以下のような設定です。

目指す姿は以下の図のようにInternet GatewayとPublic Subnetの間にAWS Network Firewallをデプロイし、VPCとインターネットの間のトラフィックをチェックできるようにすることです。
さて、ここでAWS Network Firewallの設定を始める前にこのVPC内のトラフィックの流れ(ルーティング)について確認しておきます。
このVPCには3つのAZにそれぞれALB用とEC2用のPublic Subnetがありますが、すべて同じルートテーブルで送信先0.0.0.0/0のターゲットがInternet Gatewayとなっています。
ただし、ALBを経由したトラフィックはALBを介して戻っていきます。
このALB、普段は意識することはありませんが内部的にはネットワークマッピングされているサブネットにENIを持っており、実際のトラフィックはこのENIを通っています。

では、早速AWS Network Firewallの設定を始めましょう。

まず、最初に各AZにAWS Network Firewall専用のサブネットを作成します。
サブネットサイズは/28以上あれば大丈夫なようですが、ここでは念のため/24で作成します。
次にAWS Network Firewall用のファイアウォールポリシーを作成します。
AWS Network Firewallをデプロイする際にファイアウォールポリシーを指定する必要があるため先に作っておきます。


今回はファイアウォールポリシーの中身には触れませんので、AWSマネージドルールグループを割り当てて使います。

参考:[アップデート] AWS Network Firewall でAWSが提供するマネージドのSuricata互換のIPSルール「AWS Managed Threat Signatures」が使えるようになりました

キャパシティー制限の範囲内で必要なルールグループを選択していきます。

ここまで準備ができたら、ここまでに準備してきたサブネットとファイアウォールポリシーを指定して、いよいよAWS Network Firewallをデプロイします。

デプロイには5分以上かかる印象です。
(AWSの状況によるので毎回所要時間は変わりますが数分では終わらない印象です)

デプロイ完了したら、「ファイアウォールの詳細」から各AZのファイアウォールエンドポイントIDを控えます。

ファイアウォールエンドポイントIDはこの後のルーティング設定に必要になります。

今回はAWS Network Firewallのデプロイが完了したところまでご紹介しました。
次回はAWS Network Firewall設定の要と言って良いルーティング設定についてご紹介する予定です。

なお、本記事で取り上げたご相談への対応時、および本記事の執筆にあたっては本文中に記載したサイトの他、以下のサイトを参考にさせて頂きました。

AWS Network Firewallのデプロイモデル - Amazon Web Services ブログ
今⽇から始められる︕AWS Network Firewall Managed Threat Signature のご紹介
AWS Network Firewallを分かりやすく解説してみる - サーバーワークスエンジニアブログ

なお、表示される内容は利用状況やAWSの仕様変更ににより変化しますのでご注意ください。