AWS Network Firewall

VPC のトラフィックをステートフルに検査し、侵入防止やドメインフィルタリングを行うマネージドネットワークファイアウォールサービス

概要

AWS Network Firewall は、VPC 内のネットワークトラフィックをきめ細かく制御するマネージドファイアウォールサービスです。セキュリティグループや NACL では対応できない高度なトラフィック検査 (ステートフルインスペクション、侵入検知・防止、ドメインベースのフィルタリング、TLS インスペクション) を提供します。Suricata 互換のルールエンジンを採用しており、既存の IDS/IPS ルールセットを移行できます。Transit Gateway や Gateway Load Balancer と組み合わせて、マルチ VPC 環境の集中型ファイアウォールとして運用できます。

ステートレスルールとステートフルルールの 2 段構成

Network Firewall のルールは、ステートレスルールグループとステートフルルールグループの 2 種類で構成されます。ステートレスルールは IP アドレス、ポート、プロトコルに基づく単純なフィルタリングで、NACL に近い動作をします。ステートフルルールはコネクションの状態を追跡し、Suricata 互換の 5-tuple ルール、ドメインリストルール、Suricata IPS ルールの 3 形式で記述できます。Suricata ベースのルールエンジンを採用しているため、Emerging Threats や Snort コミュニティが公開するオープンソースの IDS/IPS ルールセットをそのまま利用できます。Azure Firewall は独自のルールエンジンを採用しており、こうしたオープンソースルールの直接インポートには対応していません。実務では、ステートレスルールで明らかに不要なトラフィック (既知の悪意ある IP レンジ) を先にドロップし、残りのトラフィックをステートフルルールで詳細に検査する 2 段構成が推奨されます。

ドメインフィルタリングと TLS インスペクション

Network Firewall のドメインリストルールは、特定のドメインへの HTTP/HTTPS 通信のみを許可する用途で強力です。外部 API への通信を制限する場合や、マルウェアの C2 (Command and Control) 通信をブロックする場合に有効です。HTTP 通信では Host ヘッダー、HTTPS 通信では TLS の SNI (Server Name Indication) フィールドを検査してドメインを判定します。TLS インスペクション機能を有効にすると、暗号化されたトラフィックの中身まで検査できますが、ACM (AWS Certificate Manager) で管理する CA 証明書を使って通信を復号・再暗号化するため、クライアント側に CA 証明書を信頼させる設定が必要です。ネットワークセキュリティの書籍 (Amazon) で体系的に学べます。

集中型インスペクション VPC と Firewall Manager による組織展開

Network Firewall の最も一般的なデプロイパターンは、集中型インスペクション VPC です。Transit Gateway のルーティングで全 VPC のインターネット向けトラフィックをインスペクション VPC 経由に集約し、Network Firewall で一元的に検査します。この構成により、各 VPC に個別のファイアウォールを配置する必要がなくなり、ルール管理が集約されます。Firewall Manager と組み合わせると、Organizations 内の全アカウントに統一的なファイアウォールポリシーを適用でき、新規 VPC が作成された際にも自動的にファイアウォールが配置されます。コスト面の注意点として、ファイアウォールエンドポイントは AZ ごとに作成する必要があり、3 AZ 構成では 3 つのエンドポイント分の固定料金が発生します。加えてトラフィック処理量の従量課金もあるため、大量のトラフィックを処理する環境ではコストが無視できません。セキュリティグループと NACL で十分な要件であれば、Network Firewall を導入せずに済むケースもあります。

共有するXB!