AWS Network Firewall と AWS Transit Gateway を使用してファイアウォールをデプロイする - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS Network Firewall と AWS Transit Gateway を使用してファイアウォールをデプロイする

作成者: Shrikant Patil (AWS)

概要

このパターンは、AWSNetwork Firewall と AWS Transit Gateway を使用してファイアウォールをデプロイする方法を示しています。Network Firewall リソースは、 AWS CloudFormation テンプレートを使用してデプロイされます。ネットワークファイアウォールは、ネットワークトラフィックに合わせて自動的にスケーリングし、数十万の接続をサポートできるため、独自のネットワークセキュリティインフラストラクチャの構築と維持について心配する必要はありません。トランジットゲートウェイは、仮想プライベートクラウド (VPCs) とオンプレミスネットワークを相互接続するために使用できるネットワークトランジットハブです。

このパターンでは、ネットワークアーキテクチャVPCに検査を含める方法についても学習します。最後に、このパターンでは、Amazon CloudWatch を使用してファイアウォールのリアルタイムのアクティビティモニタリングを提供する方法について説明します。

ヒント

Network Firewall サブネットを使用して他のAWSサービスをデプロイすることは避けるのがベストプラクティスです。これは、Network Firewall がファイアウォールサブネット内の送信元または発信先からのトラフィックを検査できないためです。

前提条件と制限

前提条件

  • アクティブなAWSアカウント

  • AWS Identity and Access Management (IAM) ロールとポリシーのアクセス許可

  • CloudFormation テンプレートのアクセス許可

制約事項

ドメインのフィルタリングに問題があり、別の種類の設定が必要になる可能性があります。詳細については、AWSNetwork Firewall ドキュメントの「Network Firewall のステートフルドメインリストルールグループ」を参照してください。

アーキテクチャ

テクノロジースタック

  • Amazon CloudWatch ログ

  • Amazon VPC

  • AWS Network Firewall

  • AWS Transit Gateway

ターゲット アーキテクチャ

次のダイアグラムは、ネットワークファイアウォールと Transit Gateway を使用してトラフィックを検査する方法を示しています。

AWS 検査 VPC、出力 VPC、および 2 つのスポーク を接続する Transit GatewayVPCs。

アーキテクチャには、以下のコンポーネントが含まれます。

  • アプリケーションは 2 つのスポーク でホストされますVPCs。VPCs は Network Firewall によってモニタリングされます。

  • Egress VPCはインターネットゲートウェイに直接アクセスできますが、Network Firewall では保護されません。

  • 検査VPCでは、Network Firewall がデプロイされます。

自動化とスケール

CloudFormation Infrastructure as Code を使用して、このパターンを作成できます。

ツール

AWS サービス

  • Amazon CloudWatch Logs は、すべてのシステム、アプリケーション、AWSサービスからのログを一元化するのに役立つため、ログをモニタリングして安全にアーカイブできます。

  • Amazon Virtual Private Cloud (Amazon VPC) は、定義した仮想ネットワークでAWSリソースを起動するのに役立ちます。この仮想ネットワークは、ユーザー自身のデータセンターで運用されていた従来のネットワークと似ていますが、AWS のスケーラブルなインフラストラクチャを使用できるという利点があります。

  • AWS Network Firewall は、 AWS クラウドVPCs内の のステートフルでマネージド型のネットワークファイアウォールおよび侵入検知および防止サービスです。

  • AWS Transit Gateway は、 VPCsとオンプレミスネットワークを接続する中央ハブです。

コード

このパターンのコードは、 GitHub AWSTransit Gateway リポジトリを使用した Network Firewall デプロイで使用できます。このリポジトリの CloudFormation テンプレートを使用して、Network Firewall を使用する単一の検査VPCをデプロイできます。

エピック

タスク説明必要なスキル

CloudFormation テンプレートを準備してデプロイします。

  1. GitHub リポジトリからcloudformation/aws_nw_fw.ymlテンプレートをダウンロードします。

  2. 指定した値を使用してテンプレートを更新します。

  3. テンプレートをデプロイします。

AWS DevOps
タスク説明必要なスキル

transit gateway を作成します。

  1. AWS マネジメントコンソールにサインインし、Amazon VPCコンソールを開きます。

  2. ナビゲーションペインでTransit Gatewaysを選択します。

  3. [Transit Gateway の作成] を選択します。

  4. 名前タグに対して、Transit Gateway の名前を入力します。

  5. 説明に対して、Transit Gateway の説明を入力します。

  6. Amazon 側の自律システム番号 (ASN) の場合は、ASNデフォルト値のままにします。

  7. DNS サポートオプションを選択します。

  8. VPN ECMP サポートオプションを選択します。

  9. デフォルトルートテーブルの関連付けオプションを選択します。このオプションは、Transit Gateway アタッチメントを Transit Gateway のデフォルトルートテーブルに自動的に関連付けます。

  10. デフォルトルートテーブルの伝播オプションを選択します。このオプションは、Transit Gateway アタッチメントを Transit Gateway のデフォルトルートテーブルに自動的に伝播します。

  11. [Transit Gateway の作成] を選択します。

AWS DevOps

Transit Gateway アタッチメントを作成します。

以下については、「Transit Gateway アタッチメントを作成」します。

  • インスペクションVPCおよび Transit Gateway サブネット内のインスペクションアタッチメント

  • スポークVPCAサブネットVPCAとプライベートサブネットのスポークアタッチメント

  • スポークVPCBサブネットVPCBとプライベートサブネットのスポークアタッチメント

  • EgressVPC VPCおよびプライベートサブネット内の Egress アタッチメント

AWS DevOps

Transit Gateway ルートテーブルを作成します。

  1. スポーク の Transit Gateway ルートテーブルを作成しますVPC。このルートテーブルは、検査 VPCs以外のすべての に関連付ける必要がありますVPC。

  2. ファイアウォールに対して、「トランジットゲートウェイのルートテーブルを作成」します。このルートテーブルは検査VPCにのみ関連付ける必要があります。

  3. ファイアウォールに対して、Transit Gateway のルートテーブルにルートを追加します。

    • には0.0.0/0Egress VPCアタッチメントを使用します。

    • スポークVPCACIDRブロックには、スポークVPC1アタッチメントを使用します。

    • スポークVPCBCIDRブロックには、スポークVPC2アタッチメントを使用します。

  4. スポーク の Transit Gateway ルートテーブルにルートを追加しますVPC。には0.0.0/0、インスペクションVPCアタッチメントを使用します。

AWS DevOps
タスク説明必要なスキル

検査 でファイアウォールを作成しますVPC。

  1. AWS マネジメントコンソールにサインインし、Amazon VPCコンソールを開きます。

  2. ナビゲーションペインで、ネットワークファイアウォールの下にあるファイアウォールを選択します。

  3. [ファイアウォールを作成] を選択します。

  4. 名前に対して、このファイアウォールの識別に使用する名前を入力します。ファイアウォールの作成後は、ファイアウォールの名前を変更することはできません。

  5. VPC、検査 を選択しますVPC。

  6. アベイラビリティーゾーンサブネットでは、特定したゾーンとファイアウォールサブネットを選択します。

  7. [関連する関連付けられたファイアウォールポリシー] セクションで、[既存のファイアウォールポリシーを関連付ける] を選択し、先ほど作成したファイアウォールポリシーを選択します。

  8. [ファイアウォールを作成] を選択します。

AWS DevOps

ファイアウォールポリシーを作成します。

  1. AWS マネジメントコンソールにサインインし、Amazon VPCコンソールを開きます。

  2. ナビゲーションペインの [Network Firewall] (ネットワークファイアウォール) で [Firewall policies] (ファイアウォールポリシー) を選択します。

  3. ファイアウォールポリシーの説明」ページで、[ファイアウォールポリシーの作成] を選択します。

  4. [名前] に、ファイアウォールポリシーに使用する名前を入力します。このパターンの後半でポリシーをファイアウォールに関連付けるときに、この名前を使用してポリシーを識別します。一度作成したトラフィックポリシーの名前は変更できません。

  5. [Next (次へ)] を選択します。

  6. ルールグループを追加ページのステートレスルールグループセクションで、ステートレスルールグループを追加するを選択します。

  7. 既存のルールグループから追加ダイアログボックスで、先ほど作成したステートレスルールグループのチェックボックスを選択します。ルールグループを追加 を選択します。注:ページの下部にあるファイアウォールポリシーの容量カウンターには、ファイアウォールポリシーで許可されている最大キャパシティの横に、このルールグループを追加して消費された容量が表示されます。

  8. ステートレスのデフォルトアクションをステートフルルールに転送するに設定します。

  9. ステートフルルールグループセクションでステートフルルールグループを追加を選択し、先ほど作成したステートフルルールグループのチェックボックスを選択します。ルールグループを追加 を選択します。

  10. 次へを選択してセットアップウィザードの残りの手順を実行し、ファイアウォールポリシーを作成を選択します。

AWS DevOps

VPC ルートテーブルを更新します。

検査VPCルートテーブル

  1. ANF サブネットルートテーブル (Inspection-ANFRT) で、Transit Gateway ID 0.0.0/0 に追加します。

  2. Transit Gateway サブネットルートテーブル (Inspection-TGWRT) で、 0.0.0/0Egress VPCに追加します。

スポークVPCAルートテーブル

プライベートルートテーブルで、 0.0.0.0/0 をトランジットゲートウェイ ID に追加します。

スポークVPCBルートテーブル

プライベートルートテーブルで、 0.0.0.0/0 をトランジットゲートウェイ ID に追加します。

Egress VPCルートテーブル

出力パブリックルートテーブルで、スポークVPCAブロックとスポークVPCBCIDRブロックを Transit Gateway ID に追加します。プライベートサブネットについても同じ手順を繰り返します。

AWS DevOps
タスク説明必要なスキル

ファイアウォールのロギング設定を更新します。

  1. AWS マネジメントコンソールにサインインし、Amazon VPCコンソールを開きます。

  2. ナビゲーションペインで、ネットワークファイアウォールの下にあるファイアウォールを選択します。

  3. ファイアウォールページで、編集するファイアウォールの名前を選択します。

  4. ファイアウォールの詳細タブを選択します。ログ記録セクションで、編集を選択します。

  5. 必要に応じてログタイプの選択を調整します。アラートログとフローログのロギングを設定できます。

    • アラート — アクションが Alert または Drop に設定されているステートフルルールに一致するトラフィックのログを送信します。ステートフルルールとルールグループの詳細については、AWS「Network Firewall のルールグループ」を参照してください。

    • Flow — ステートレスエンジンがステートフルルールエンジンに転送するすべてのネットワークトラフィックのログを送信します。

  6. 選択した各ログタイプについて、送信先タイプを選択し、ロギング先の情報を入力します。詳細については、AWSNetwork Firewall ドキュメントの「Network Firewall のログ記録先」を参照してください。

  7. [Save] を選択します。

AWS DevOps
タスク説明必要なスキル

EC2 インスタンスを起動してセットアップをテストします。

スポーク で 2 つの Amazon Elastic Compute Cloud (Amazon EC2) インスタンスを起動しますVPC。1 つは Jumpbox 用、もう 1 つはテスト接続用です。

AWS DevOps

メトリクスを確認します。

メトリクスはまずサービスの名前空間ごとにグループ化され、次に各名前空間内のさまざまなディメンションの組み合わせごとにグループ化されます。Network Firewall CloudWatch の名前空間は ですAWS/NetworkFirewall

  1. AWS マネジメントコンソールにサインインし、CloudWatch コンソールを開きます。

  2. ナビゲーションペインで Metrics (メトリクス) を選択します。

  3. すべてのメトリクスタブで、リージョンを選択し、AWS/NetworkFirewall を選択します。

AWS DevOps

関連リソース