概要
AWS での一元的なネットワーク検査は、ネットワークトラフィックのフィルタリングに必要な AWS リソースを設定します。このソリューションでは、Amazon Virtual Private Cloud (Amazon VPC) 間のトラフィックを検査するための一元的な AWS Network Firewall のプロビジョニングのプロセスを自動化することによって時間を節約できます。
利点
このソリューションでは、Amazon S3 バケット内の設定パッケージのルールグループとファイアウォールポリシーを変更できます。これは AWS CodePipeline を自動的に呼び出し、検証とデプロイを実行します。
このソリューションを使用すると、大量の Amazon VPC およびアカウントを 1 つの場所で検査できます。AWS Network Firewall、ファイアウォールポリシー、およびルールグループを一元的に設定することもできます。
このソリューションは、GitOps ワークフローを使用することによって AWS Network Firewall 設定に対する変更を同期および管理するために役立ちます。
技術的な詳細情報
このアーキテクチャは、実装ガイドと関連する AWS CloudFormation テンプレートを使用して自動的にデプロイできます。
ステップ 1
AWS CloudFormation テンプレートは、ソリューションがデプロイされているリージョン内でランダムに選択されたアベイラビリティーゾーンの 4 つのサブネットを含む検査仮想プライベートクラウド (VPC) をデプロイします。
ステップ 1a
既存のトランジットゲートウェイ ID を指定した場合、ソリューションは 2 つのサブネットを使用して、VPC のために AWS Transit Gateway アタッチメントを作成します。
ステップ 1b
ソリューションは、他の 2 つのサブネットを使用して、ソリューションがデプロイされているリージョン内のランダムに選択された 2 つのアベイラビリティーゾーンに AWS Network Firewall エンドポイントを作成します。
ステップ 2
CloudFormation テンプレートは、すべてのトラフィックを許可するデフォルトのネットワークファイアウォール設定を持つ Amazon Simple Storage Service (Amazon S3) バケットを作成します。これにより、AWS CodePipeline が開始され、次のステージが実行されます。
ステップ 2a
検証ステージ: ソリューションは、Network Firewall (ドライランモードが有効になっている API) を使用して、Network Firewall 設定を検証します。これにより、実際の変更を試みる前に予期しない問題を見つけることができます。また、このステージでは、設定内の参照されているすべてのファイルが JSON ファイル構造内に存在するかどうかも確認します。
ステップ 2b
デプロイステージ: ソリューションは、新しいファイアウォール、ファイアウォールポリシー、およびルールグループを作成します。いずれかのリソースが既に存在する場合、ソリューションはそのリソースを更新します。また、このステージは、S3 バケットから最新の設定を適用することで、変更を検出し、是正するのにも役立ちます。
ルールグループの変更のいずれかが失敗すると、ルールグループの変更は元の状態にロールバックされます。アプライアンスモードは、非対称トラフィックを回避するために、Transit Gateway から Amazon Virtual Private Cloud (Amazon VPC) に対するアタッチメントのためにアクティブ化します。詳細については、「共有サービス VPC 内のアプライアンス」をご覧ください。
ステップ 3
このソリューションは、各アベイラビリティーゾーンのために Amazon VPC ルートテーブルを作成します。それぞれのデフォルトのルートの宛先ターゲットは、Network Firewall の Amazon VPC エンドポイントです。
ステップ 4
このソリューションは、ファイアウォールサブネットを含む共有ルートテーブルを作成します。デフォルトのルートの宛先ターゲットは、トランジットゲートウェイ ID です。このルートは、トランジットゲートウェイ ID が CloudFormation 入力パラメータで指定されている場合にのみ作成されます。