ご利用の Application Load Balancer (ALB) インスタンスで Web Application Firewall (WAF) 保護を有効にすることで、一般的な Web の脆弱性を悪用した攻撃からインスタンスを保護します。WAF を有効化した ALB インスタンスは WAF 3.0 の SDK 統合モデルを使用しており、セキュリティ検査とトラフィック転送を分離します。この設計により、従来のインライン WAF デプロイメントで一般的だった、高いネットワーク遅延、複雑な構成、潜在的な単一障害点 (SPOF) などの問題を回避できます。
仕組み
WAF を有効化した ALB インスタンスは WAF 3.0 の SDK 統合モデルを使用します。このモデルでは、WAF は転送パス上のインラインネットワークノード (ゲートウェイ) として機能しません。代わりに、WAF はトラフィックの抽出、検査、保護のみを担当します。このアプローチにより、従来の WAF デプロイメントの透過型プロキシモードで発生していた、高いネットワーク遅延、複雑な構成 (証明書の同期設定など)、潜在的な SPOF を回避できます。
詳細については、「WAF 3.0 と WAF 2.0 の比較」をご参照ください。
リクエストの受信:ALB インスタンスがクライアントリクエストを受信します。
バイパス検査:リクエストをバックエンドサーバーに転送する前に、ALB は埋め込みの Software Development Kit (SDK) を使用して、トラフィックデータを同期的に抽出し、WAF 3.0 のセキュリティ検査クラスターに送信します。
セキュリティ分析:WAF 3.0 は、コア Web 保護や悪意のある IP のブロックなど、設定された保護ルールに基づいてリクエストの内容をリアルタイムで分析します。その後、検査結果 (許可またはブロック) を ALB に返します。
決定の実行:ALB は WAF からの検査結果に基づいて動作します。
許可:ALB は元のリクエストをバックエンドサーバーに転送します。
ブロック:ALB はリクエストを即座にブロックし、インターセプトページ (通常は 405 ステータスコード) をクライアントに返します。リクエストはバックエンドサーバーに到達しません。
注意事項
WAF を有効化した ALB インスタンスの場合:
サポート対象リージョン:
エリア
リージョン
中国
中国 (成都)、中国 (青島)、中国 (北京)、中国 (広州)、中国 (杭州)、中国 (ウランチャブ)、中国 (上海)、中国 (深セン)、中国 (張家口)、中国 (香港)
アジア太平洋
フィリピン (マニラ)、インドネシア (ジャカルタ)、日本 (東京)、マレーシア (クアラルンプール)、シンガポール、タイ (バンコク)、韓国 (ソウル)
ヨーロッパおよび米州
ドイツ (フランクフルト)、米国 (バージニア)、米国 (シリコンバレー)、メキシコ
中東
サウジアラビア (リヤド - パートナー運営)
WAF バージョン:WAF 3.0 を使用する必要があります。アカウントに WAF 2.0 インスタンスがある場合は、まず WAF 2.0 インスタンスをリリースするか、WAF 3.0 に移行する必要があります。
デフォルトでは、ALB はバックエンドサーバーグループに転送されるリクエストの
X-Forwarded-Protoヘッダーを有効にしません。WAF 2.0 インスタンスを終了した後、ALB に直接アクセスすると、バックエンドサービスがプロトコル (HTTP/HTTPS) を正しく識別できないため、無限ループリダイレクトなどのサービス例外が発生する可能性があります。この問題を回避するには、ALB リスナーの設定でX-Forwarded-Protoリクエストヘッダーを手動で有効にする必要があります。機能の可用性:ALB インスタンス向けの WAF は、データ漏洩防止モジュール、およびボット管理モジュール内の Web サイト向け Web クローラー対策ルールのための Web SDK 自動統合機能をサポートしていません。
ALB インスタンスの WAF 保護の有効化
WAF 保護を有効にすると、ご利用の ALB インスタンスは既存の WAF インスタンスと自動的に統合されます。WAF インスタンスがない場合は、従量課金の WAF インスタンスが自動的に作成されます。
WAF インスタンスのエリアには [中国本土] と [中国本土以外] が含まれます。 ALB インスタンスは、そのリージョンが中国本土にあるかどうかに応じて、対応するエリアの WAF インスタンスに接続されます。
WAF を有効化した ALB インスタンスの作成
コンソール
ALB 購入ページに移動します。[エディション] を [WAF 有効] に設定し、ALB インスタンスの作成と管理を参照してその他のパラメーターを設定します。
API
WAF を有効化した ALB インスタンスを作成するには、CreateLoadBalancer 操作を呼び出し、LoadBalancerEdition パラメーターを StandardWithWaf に設定します。
既存の ALB インスタンスでの WAF 保護の有効化
Basic および Standard の ALB インスタンスで WAF 保護を有効にできます。つまり、WAF 有効化エディションにスペックアップできます。
開始する前に、対象のインスタンスが [実行中] 状態であることを確認してください。
ALB インスタンスの単価はインスタンスのエディションによって異なります。購入ページに表示される価格をご参照ください。
コンソール
ALB インスタンスページに移動します。
対象のインスタンスの ID の横にある
アイコンにカーソルを合わせます。[WAF 保護] セクションで、[WAF を有効化] をクリックします。
API
ALB インスタンスを WAF 有効化エディションにスペックアップするには、UpdateLoadBalancerEdition 操作を呼び出し、LoadBalancerEdition パラメーターを StandardWithWaf に設定します。
保護ログの表示
ALB インスタンスで WAF 保護を有効にすると、WAF は自動的に名前が -alb で終わる保護対象オブジェクトを作成し、デフォルトでそのオブジェクトに対してコア Web 保護ルールを有効にします。このルールは、デフォルトで保護対象オブジェクトのセキュリティレポートを有効にし、保護ログを表示します。
他のセキュリティ要件を満たすには、「保護ルールの設定」をご参照ください。
複数のドメイン名が同じ ALB インスタンスに解決され、ドメインごとに異なる保護ルールを設定する必要がある場合は、「ドメイン名を保護対象オブジェクトとして追加する」必要があります。
コンソール
ALB インスタンスページに移動します。
ターゲットインスタンスの ID の横にある
アイコンにカーソルを合わせます。[WAF 保護] セクションで、[WAF セキュリティレポートの表示] をクリックします。
WAF 保護の無効化
WAF 保護を無効にすると、ALB インスタンスへのトラフィックは WAF によって保護されなくなります。セキュリティレポートにはこのトラフィックの保護データが含まれなくなり、WAF によるリクエスト処理に対して課金されることもありません。
ただし、WAF インスタンスとその保護ルールはまだ存在するため、WAF サービスに対しては引き続き課金されます。すべての課金を完全に停止するには、「WAF サービスを終了する」必要があります。
コンソール
保護の一時的な無効化
サービストラフィックで多数の誤検知が発生し、トラフィックが大幅にブロックされる場合は、WAF 保護を一時的に無効にして、サービスを迅速に復旧させます。この場合、ALB インスタンスは WAF 有効化エディションのままです。トラフィックは引き続き ALB に埋め込まれた WAF SDK を通過しますが、検査のために WAF クラスターに転送されることはありません。代わりに、バックエンドサーバーグループに直接転送されます。
WAF コンソール - 保護対象オブジェクトページに移動します。
ページの右上隅で、[WAF 保護ステータス] をオフにします。
WAF 保護の恒久的な無効化
WAF 保護を無効にすると、ALB インスタンスは WAF 有効化エディションから Standard エディションにスペックダウンされます。この変更によってサービスが中断されることはありません。
ALB インスタンスページに移動します。
対象のインスタンスの ID の横にある
アイコンにポインターを合わせます。[WAF 保護] セクションで、[WAF を無効化] をクリックします。
API
WAF を有効化した ALB インスタンスを Standard エディションにスペックダウンするには、UpdateLoadBalancerEdition 操作を呼び出し、LoadBalancerEdition パラメーターを Standard に設定します。
本番環境への適用
カナリアテスト:まず、本番環境を模した環境で、できればオフピーク時に ALB インスタンスの WAF 保護を有効にします。サービスが期待どおりに動作することを確認した後、本番環境の ALB インスタンスで保護を有効にします。
継続的なモニタリング:攻撃やその他のセキュリティイベントに関するアラートを受信するには、定期的にセキュリティレポートを確認し、「CloudMonitor 通知の設定」を行ってください。
ルールのチューニング:誤検知を分析し、保護ルールの精度を向上させるために微調整するには、定期的に WAF のインターセプトログを確認してください。
課金
インスタンス料金:
インスタンス料金 = インスタンス単価 (USD/時間) × 課金期間 (時間)ロードバランサーキャパシティーユニット (LCU) 料金:
時間単位の LCU 料金 = max{新規接続の LCU、同時接続の LCU、処理データの LCU、ルール評価の LCU} × LCU 単価インターネットデータ転送料金:
インターネット向けの ALB インスタンスのみがインターネットデータ転送料金の対象となります。
インターネット向けの ALB インスタンスは、Elastic IP Address (EIP) または Anycast EIP を使用してインターネット経由でサービスを提供します。ALB インスタンスに関連付けられた EIP または Anycast EIP に対して課金されます。
WAF 3.0 の課金:WAF 3.0 はサブスクリプションと従量課金の両方をサポートしています。
WAF インスタンスがない場合、WAF を有効化した ALB インスタンスを作成すると、従量課金の WAF インスタンスが自動的に作成され、その使用量に対して課金されます。
すでにサブスクリプションの WAF 3.0 インスタンスをお持ちの場合、WAF を有効化した ALB インスタンスを作成しても、追加の WAF 料金は発生しません。
よくある質問
ALB インスタンスで WAF 2.0 保護を有効にできますか?
既存の WAF 2.0 インスタンスがある場合、Basic および Standard のインターネット向け ALB インスタンスを WAF 2.0 インスタンスと統合できます。この機能は、中国 (杭州)、中国 (上海)、中国 (深セン)、中国 (成都)、中国 (北京)、中国 (張家口) の各リージョンでサポートされています。内部 ALB インスタンスは WAF 2.0 インスタンスと統合できません。
WAF 2.0 インスタンスがない場合、または WAF を有効化していない場合、すべての ALB インスタンスは WAF 3.0 (WAF 有効化エディションにスペックアップ) によってのみ保護できます。