Web Application Firewall (WAF) 3.0 を有効にすることで、パブリックに公開されている Classic Load Balancer (CLB) インスタンスを Web 攻撃から保護します。このメソッドは、指定されたポートからのトラフィックを検査のために WAF に透過的にリダイレクトするため、DNS やネットワークアーキテクチャを変更する必要はありません。
仕組み
仕組み: WAF は、透過的なプロキシメソッドを介して CLB インスタンスと統合されます。CLB インスタンスで保護対象ポートを設定するだけで、システムは基盤となるネットワークルーティングポリシーを自動的に調整し、そのポート上のすべての HTTP/HTTPS トラフィックをセキュリティ検査のために WAF にルーティングします。WAF がトラフィックを検査し、悪意のあるリクエストをブロックした後、正当なリクエストをオリジンの CLB インスタンスに転送します。
保護範囲: 指定された保護対象ポートに関連付けられているすべてのドメイン名をカバーします。また、(ドメイン名が設定されていない) パブリック IP アドレスのみでアクセスされるサービスもサポートします。
サポートされているリスナープロトコル: WAF は、HTTP、HTTPS、または TCP リスナーを持つ CLB インスタンスと統合されます。TCP リスナーの場合、WAF はそのポート上の HTTP/HTTPS トラフィックのみを保護できます。FTP、SMTP、データベーストラフィックなどの非 HTTP/HTTPS プロトコルトラフィックの転送や保護はサポートしていません。
使用上の注意
CLB インスタンスが次の要件を満たしていない場合は、「CNAME ベースのオンボーディング」をご参照ください。
インスタンスの要件:
インスタンスは、パブリックに公開されているインスタンス、または EIP がアタッチされたプライベートインスタンスである必要があります。
オンボーディングの前に、CLB インスタンスにリスナーを追加する必要があり、リスナープロトコルは HTTP、HTTPS、または TCP である必要があります。
IP バージョンは IPv4 である必要があります。
共有 CLB インスタンスはサポートされていません。
インスタンスのリージョン要件:
中国本土の WAF インスタンス: 中国 (成都)、中国 (北京)、中国 (張家口)、中国 (杭州)、中国 (上海)、中国 (深圳)、および中国 (青島)。
中国本土以外の WAF インスタンス: 中国 (香港)、マレーシア (クアラルンプール)、インドネシア (ジャカルタ)、およびシンガポール。
インスタンスを WAF に追加すると、Web サービスで数秒間の短い接続中断が発生する場合があります。この操作はオフピーク時間に実行し、その後サービスのステータスを監視することをお勧めします。クライアントまたはサービスに再接続メカニズムがある場合、この中断は自動的に解決され、ビジネス運用に影響を与えません。
手順
WAF コンソールに移動します。
Web Application Firewall 3.0 コンソールにログインします。トップメニューバーで、WAF インスタンスのリソースグループとリージョン (中国本土 または 中国本土以外) を選択します。左側のナビゲーションウィンドウで、アクセス管理 をクリックします。クラウドプロダクトアクセス タブをクリックします。左側のクラウドサービスタイプのリストから、Classic Load Balancer (CLB) を選択します。
クラウドプロダクトの権限付与 (初期構成)。
画面の指示に従い、今すぐ許可する をクリックして必要な権限を付与します。作成されたサービスリンクロール AliyunServiceRoleForWAF は、RAM コンソールの [ロール] ページで表示できます。
CLB インスタンスをオンボードします。
右側のリストで、ターゲットの CLB インスタンスを見つけ、その WAF 保護ステータスを表示します。
アイコンをクリックして詳細を展開します。保護するポートを選択し、[アクション] 列の 今すぐアクセスする をクリックします。オンボーディングするポートのプロトコルに基づいて、次の手順を実行します。
HTTP/HTTPS
Configure Instance ページで、[WAF の前に Anti-DDoS Proxy や CDN などのレイヤー 7 プロキシがデプロイされていますか] や [トラフィックタグ] などの設定をカスタマイズするには、「クライアントの実際の IP アドレスの取得」をご参照ください。[オリジンタイムアウト] や [オリジンキープアライブ] をカスタマイズするには、「back-to-origin 接続の最適化」をご参照ください。カスタム設定が不要な場合は、[OK] をクリックしてデフォルト設定を適用します。
説明プロトコルが HTTPS の場合、CLB 側で証明書関連の設定を行う必要があります。WAF コンソールで証明書を設定する必要はありません。
TCP
Configure Instance ページで、ポート上のトラフィックの プロトコルタイプ を選択します。
HTTP
[WAF の前に Anti-DDoS Proxy や CDN などのレイヤー 7 プロキシがデプロイされていますか] をカスタマイズするには、「クライアントの実際の IP アドレスの取得」をご参照ください。[オリジンタイムアウト] や [オリジンキープアライブ] をカスタマイズするには、「back-to-origin 接続の最適化」をご参照ください。それ以外の場合は、[OK] をクリックしてデフォルト設定を適用します。
HTTPS
[HTTP/2]、[TLS バージョン]、[暗号スイート]、[追加の証明書] などの設定をカスタマイズできます。詳細については、「セキュリティの強化 (HTTPS)」をご参照ください。それ以外の場合は、他のフィールドのデフォルト設定を維持します。
デフォルト証明書 エリアで、証明書のアップロード方法を選択します。
[手動アップロード]: 証明書が Alibaba Cloud Certificate Management Service (Original SSL Certificate) にない場合にこのオプションを選択します。
[既存の証明書を選択]: Alibaba Cloud Certificate Management Service (Original SSL Certificate) で発行またはアップロードされた証明書を選択します。
[手動アップロード]
証明書名: 証明書の一意の名前を入力します。
証明書ファイル: テキストエディターで証明書ファイルを開き、証明書の全内容を貼り付けます。証明書は PEM、CER、または CRT 形式である必要があります。
フォーマット例:
-----BEGIN CERTIFICATE-----......-----END CERTIFICATE-----フォーマット変換: 証明書が PFX や P7B などの形式である場合は、「証明書ツール」を使用して PEM 形式に変換してください。
証明書チェーン: 中間証明書が含まれている場合は、サーバー証明書と中間証明書を順番に連結し、結合した内容を貼り付けます。
秘密鍵ファイル: テキストエディターで秘密鍵ファイルを開き、内容を PEM 形式で貼り付けます。
フォーマット例:
-----BEGIN RSA PRIVATE KEY-----......-----END RSA PRIVATE KEY-----
[既存の証明書を選択]
証明書のドロップダウンリストから、WAF にアップロードする証明書を選択します。
説明WAF コンソールに「証明書チェーンの整合性の検証に失敗しました。この証明書を使用すると、サービスへのアクセスに影響が出る可能性があります」というメッセージが表示された場合、証明書チェーンに問題があることを示します。証明書が正しく完全であることを確認し、Certificate Management Service コンソールで再度アップロードしてください。詳細については、「SSL 証明書のアップロード、同期、共有」をご参照ください。
[WAF の前に Anti-DDoS Proxy や CDN などのレイヤー 7 プロキシがデプロイされていますか] や [トラフィックタグ] などの設定をカスタマイズするには、「クライアントの実際の IP アドレスの取得」をご参照ください。[オリジンタイムアウト] や [オリジンキープアライブ] をカスタマイズするには、「back-to-origin 接続の最適化」をご参照ください。それ以外の場合は、[OK] をクリックしてデフォルト設定を適用します。
保護を検証します。
オンボーディングが完了したら、ブラウザで CLB インスタンスでホストされている Web サイトにアクセスし、その URL に Web 攻撃テストペイロード (例:
http://yourdomain/alert(xss)) を追加して、WAF 保護がアクティブであることを確認します。WAF が 405 ブロックページを返した場合、攻撃は正常に遮断されました。保護ルールを表示および設定します。
オンボーディング後、WAF は自動的に
instance-id-port-asset-typeという名前の保護対象オブジェクトを作成し、デフォルトでそのオブジェクトに対して Web コア保護ルールなどの保護ルールモジュールを有効にします。これらは ページで表示できます。デフォルトのルールがニーズを満たさない場合 (たとえば、特定の IP アドレスをホワイトリストに追加してすべてのリクエストを許可する必要がある場合)、保護ルールを作成または編集できます。詳細については、「保護設定の概要」をご参照ください。
証明書とインスタンスのステータス要件: インスタンスを追加した後、証明書が有効であり、インスタンスのステータスが正常であることを確認してください。証明書の有効期限が切れたり、インスタンスの EIP が変更されたりすると、WAF 保護は無効になります。詳細については、「トラフィックルーティングポートの証明書を更新する」および「変更後に CLB インスタンスを WAF に再度追加する」をご参照ください。
単一の CLB インスタンスに複数のドメイン名があるシナリオ: 複数のドメイン名が同じ CLB インスタンスに解決され、それらに異なる緩和ルールを設定する必要がある場合は、各ドメイン名を手動で保護対象オブジェクトとして追加する必要があります。詳細については、「保護対象オブジェクトを手動で追加する」をご参照ください。
セキュリティの強化 (HTTPS)
HTTPS 関連のオプションは、ポートのプロトコルが TCP で、それが処理するトラフィックが HTTPS の場合にのみ設定できます。
パラメーター | 説明 |
HTTP/2 プロトコルを使用して、ページの読み込み速度を向上させ、遅延を減らし、ユーザーエクスペリエンスを向上させます。Web サイトが HTTP/2 をサポートしている場合は、この機能を有効にしてください。有効にすると、HTTP/2 と HTTPS は同じポートを使用します。 | |
クライアントと WAF 間で許可される TLS バージョンを定義します。バージョンが高いほどセキュリティは強力になりますが、古いクライアントとの互換性は低くなる可能性があります。高セキュリティのシナリオでは、TLS 1.2 以降を選択することをお勧めします。 | |
クライアントと WAF 間で許可される暗号化アルゴリズムを定義します。強力な暗号スイートは高いセキュリティを提供しますが、古いクライアントとの互換性は低い場合があります。高セキュリティのシナリオでは、強力な暗号スイートを選択することをお勧めします。 | |
CLB インスタンスが複数のドメイン名の HTTPS Web サイトをホストしており、単一の証明書ですべてをカバーできない場合は、各ドメイン名に対応する証明書をアップロードする必要があります。 |
HTTP/2
Configure Instance ページで、[HTTP/2] を有効にします。
TLS バージョン
Configure Instance ページで、TLS バージョン セクションからオプションを選択します。
TLS 1.0 以上をサポートします。互換性が一番高いが、安全性が低いです。: すべての旧バージョンのクライアントからのアクセスを許可します。
TLS 1.1 以上をサポートします。互換性と安全性を兼ね備えております: TLS 1.0 を使用するクライアントがウェブサイトにアクセスするのを防止します。
TLS 1.2 以上をサポートします。互換性と安全性が優れています。: 最新のセキュリティコンプライアンス要件を満たしますが、TLS 1.0 または 1.1 を使用するクライアントが Web サイトにアクセスするのを防ぎます。
TLS 1.3 のサポートを有効化します。: Web サイトが TLS 1.3 プロトコルをサポートしている場合にこのオプションを選択します。デフォルトでは、WAF は TLS 1.3 を使用するクライアントリクエストをリッスンしません。
暗号スイート
Configure Instance ページで、暗号スイート セクションからオプションを選択します。
すべての暗号スイート (高い互換性、低い安全性)
カスタム暗号スイート (プロトコルバージョンに応じて慎重に選択してください): Web サイトが特定の暗号スイートのみをサポートしている場合は、このオプションを選択し、リストからサポートされているスイートを選択します。
強力な暗号スイート
脆弱な暗号スイート
ECDHE-ECDSA-AES128-GCM-SHA256
ECDHE-ECDSA-AES256-GCM-SHA384
ECDHE-ECDSA-AES128-SHA256
ECDHE-ECDSA-AES256-SHA384
ECDHE-RSA-AES128-GCM-SHA256
ECDHE-RSA-AES256-GCM-SHA384
ECDHE-RSA-AES128-SHA256
ECDHE-RSA-AES256-SHA384
ECDHE-ECDSA-AES128-SHA
ECDHE-ECDSA-AES256-SHA
AES128-GCM-SHA256
AES256-GCM-SHA384
AES128-SHA256
AES256-SHA256
ECDHE-RSA-AES128-SHA
ECDHE-RSA-AES256-SHA
AES128-SHA
AES256-SHA
DES-CBC3-SHA
説明暗号スイートのセキュリティに関する推奨事項: 暗号スイート
ECDHE-RSA-AES128-SHA256およびECDHE-RSA-AES256-SHA384は、キー交換に ECDHE を、認証に RSA を、暗号化モードに AES-CBC を使用します。AES-GCM などの認証付き暗号化モードを使用するスイートと比較して、セキュリティとパフォーマンスが低くなります。一部のセキュリティスキャンツールは、これらを脆弱な暗号スイートとしてフラグを立てる場合があります。これが発生した場合は、カスタム暗号スイートポリシーを選択し、これら 2 つのスイートを手動で除外します。
暗号スイートの命名基準: 暗号スイートには異なる命名基準があります。WAF は OpenSSL 形式で暗号スイートを表示しますが、一部のスキャンツールは Internet Assigned Numbers Authority (IANA) 標準を使用する場合があります。たとえば、OpenSSL の
ECDHE-ECDSA-AES256-GCM-SHA384は、IANA 標準のTLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384に対応します。対応する名前をすばやく検索するには、ciphersuite.info にアクセスするか、他の TLS 検索ツールを使用してください。
追加の証明書
Configure Instance ページで、拡張証明書 セクションで証明書をアップロードできます。アップロード方法は、デフォルト証明書と同じです。詳細については、「デフォルト証明書」をご参照ください。
説明複数の追加証明書を追加する場合、すべての証明書が有効である必要があります。いずれかの証明書の有効期限が切れている場合、操作は失敗します。
クライアントの実際の IP アドレスの取得
パラメーター | 説明 |
WAF の前に CDN などのレイヤー 7 プロキシをデプロイする場合、WAF がセキュリティ分析のために実際のクライアント IP アドレスを取得できるように、クライアント IP の取得方法 を設定する必要があります。たとえば、セキュリティレポート で攻撃の Attacker IP Address を特定するなどです。 | |
オリジンサーバーが WAF を通過したリクエストを区別し、クライアントの送信元 IP アドレスまたはポートを取得するのに役立ちます。 | |
デフォルトでは、WAF は処理する HTTP リクエストに |
[WAF の前に Anti-DDoS Proxy や CDN などのレイヤー 7 プロキシがデプロイされていますか]
Configure Instance ページで、[WAF の前に Anti-DDoS Proxy や CDN などのレイヤー 7 プロキシがデプロイされていますか] セクションの設定を構成します。オプションは次のとおりです。
[いいえ、他のプロキシはありません]
WAF が受信するビジネスリクエストがクライアントから直接開始されることを示します。
[はい、別のプロキシがあります]
この設定は、WAF が別のレイヤー 7 プロキシサービスからビジネスリクエストを受信することを示します。また、クライアント IP の取得方法 も設定する必要があります。
X-Forwarded-For フィールドのファースト IP アドレスをクライアントのソースアドレスにする
このオプションを選択すると、WAF は次の順序でクライアント IP を取得します。
リクエストヘッダーから X-Real-IP を読み取り、クライアント IP として使用します。
X-Real-IP が存在しない場合、WAF は X-Forwarded-For (XFF) の最初の IP アドレスをクライアント IP として使用します。
【推奨】偽装 XFF を回避するために、指定したヘッダの最初の IP アドレスをクライアント送信元 IP アドレスとする
説明他のプロキシサービスを設定して、クライアントのソース IP アドレスを指定されたヘッダーフィールド (X-Real-IP や X-Client-IP など) に書き込み、この設定を選択して、攻撃者が XFF フィールドを偽装して WAF をバイパスするのを防ぐことができます。
ヘッダフィールド ボックスに、1 つ以上のヘッダーフィールドを入力し、各フィールドの後に Enter キーを押します。WAF は、次の順序でこれらのフィールドからクライアント IP を取得します。
設定された ヘッダフィールド を順番に照合します。
指定されたヘッダーのいずれも存在しない場合、WAF は X-Real-IP フィールドを読み取ろうとします。
それでも結果がない場合、WAF は XFF の最初の IP アドレスをクライアント IP として使用します。
トラフィックマークの有効化
Configure Instance ページで、詳細設定 を展開し、トラフィックマークの有効化 を選択し、次のマーキングフィールドを設定します。
カスタムヘッダ: ヘッダ名 と ヘッダ値 を指定して、WAF が back-to-origin リクエストにカスタムヘッダーを追加するように設定できます。これにより、サーバーは WAF によって転送されたリクエストを識別できます。たとえば、ヘッダーを
WAF-TAG: Yesに設定できます。ここで、WAF-TAGはヘッダー名、Yesはヘッダー値です。サーバーはこのフィールドを使用して、検証またはアクセスの制御ポリシーを実装し、セキュリティとリクエストの識別を強化できます。重要User-Agent などの標準の HTTP ヘッダーフィールドを入力しないでください。入力すると、標準のヘッダーフィールドの内容がカスタムフィールドの値で上書きされます。
リアル送信元 IP アドレス: クライアントのソース IP アドレスを含むヘッダーフィールドを指定します。WAF はこのヘッダーフィールドを記録し、オリジンサーバーに転送します。WAF がクライアントの送信元 IP アドレスを決定する方法の詳細については、「[WAF の前にレイヤー 7 プロキシ (Anti-DDoS や CDN など) がデプロイされていますか?]」パラメーターの説明をご参照ください。
ソースポート: クライアントのソースポートを含むヘッダーフィールドの名前を指定します。WAF はこのヘッダーフィールドを記録し、オリジンサーバーに渡します。
X-Forwarded-Proto ヘッダーフィールドを使用して WAF のリスニングプロトコルを取得する
Configure Instance ページで、詳細設定 を展開します。必要に応じて、X-Forwarded-Proto ヘッダーフィールドを使用して WAF のリスニングプロトコルを取得する を選択します。
back-to-origin 接続の最適化
パラメーター | 説明 |
オリジンサーバーがリクエストの処理に時間がかかり、タイムアウトが発生する可能性がある場合は、WAF の読み取りおよび書き込みタイムアウトを設定できます。 | |
WAF とオリジンサーバー間の長期接続を維持する機能を設定します。サービスを追加した後に時折 502 エラーが発生する場合は、オリジンサーバーの関連パラメーターを確認してください。WAF の持続的接続パラメーターの値を、オリジンサーバーの対応するパラメーター値以下に設定することをお勧めします。 |
読み取りおよび書き込み接続タイムアウトを設定する
Configure Instance ページで、詳細設定 セクションを展開し、次のパラメーターを設定します。
読み取り接続タイムアウト期間: オリジンサーバーからの応答を受信するまでのタイムアウトを指定します。レポートのエクスポートやバッチデータ処理など、長い応答時間が必要な操作では、この値を増やす必要がある場合があります。デフォルト値は 120 秒で、値の範囲は 1 秒から 3,600 秒です。
書き込み接続タイムアウト期間: このパラメーターは、WAF がオリジンサーバーに送信するリクエストのタイムアウト期間を指定します。ほとんどの場合、このパラメーターを調整する必要はありません。ただし、オリジンサーバーの負荷が非常に高く、リクエスト処理が遅くなる場合は、値を増やすことができます。デフォルト値は 120 秒で、設定可能な範囲は 1 秒から 3,600 秒です。
Back-to-origin の持続的接続
重要この機能を無効にすると、オリジンキープは WebSocket プロトコルをサポートしません。
Configure Instance ページで、詳細設定 を展開します。Back-to-origin の持続的接続 セクションで、機能を有効にし、次の設定を構成します。
持続的接続の復元リクエスト数: 値は 60 から 1,000 までの整数です。デフォルト値は 1,000 です。たとえば、オリジンサーバーが Nginx を使用している場合、このパラメーターは Nginx の
keepalive_requestsパラメーターに対応します。詳細については、「Nginx ドキュメント」をご参照ください。アイドル時の長時間の接続タイムアウト: デフォルト値は 3,600 秒です。値は 10 秒から 3,600 秒の範囲で設定できます。たとえば、オリジンサーバーが Nginx を使用している場合、このパラメーターは Nginx パラメーター
keepalive_timeoutに対応します。
リソース管理効率の向上
リソースグループ
説明: リソース管理と権限設定を簡素化し、管理効率を向上させます。リソースグループが指定されていない場合、インスタンスは [デフォルトリソースグループ] に追加されます。詳細については、「リソースグループ」をご参照ください。
手順: Configure Instance ページで、リソースグループ セクションで、ドロップダウンリストからインスタンスのリソースグループを選択します。
日常の O&M
トラフィックルーティングポートの証明書を更新する
証明書の有効期限が近づいている場合や、失効などの理由で変更された場合は、トラフィックルーティングポートにバインドされている証明書を更新する必要があります。
ステップ 1: 新しい証明書を準備する
Alibaba Cloud から新しい証明書を購入する
Certificate Management Service (Original SSL Certificate) コンソールで SSL 証明書を更新します。詳細については、「SSL 証明書を更新する」をご参照ください。
別のプラットフォームから購入した新しい証明書を Alibaba Cloud にアップロードする
購入したプラットフォームから証明書ファイルをダウンロードします。
[証明書のアップロード] ページに移動します。[証明書のアップロード] をクリックして、PEM 形式で証明書をアップロードします。詳細については、「ローカル証明書をアップロードする」をご参照ください。
ステップ 2: 古い証明書を置き換える
元の CLB プロトコルは HTTP/HTTPS
CLB コンソールで、証明書を作成し、証明書ソースとして [Alibaba Cloud 証明書] を選択します。Alibaba Cloud によって発行されていない証明書は選択しないでください。詳細については、「証明書を作成する」をご参照ください。
CLB コンソールで、リスナー設定を変更して、サーバー証明書を新しくアップロードした証明書に置き換えます。詳細については、「ステップ 2: SSL 証明書を設定する」をご参照ください。
元の CLB プロトコルは TCP
クラウドプロダクトアクセス タブで、[Classic Load Balancer (CLB)] タブを選択します。ターゲットインスタンスを見つけ、
アイコンをクリックし、ターゲットポートの 操作 列で 証明書の編集 をクリックします。
デフォルト証明書 セクションで、既存ファイルを選択 を選択し、置き換える証明書を選択します。
証明書の有効期間が 30 暦日未満になると、WAF はレコードリストに
アイコンを表示して、証明書の有効期限が近づいていることを示します。通常のビジネス運用に影響を与えないように、速やかに更新する必要があります。SSL 証明書のメッセージリマインダーを設定して、証明書の有効期限が切れる前に電子メールやショートメッセージなどの方法で通知を受け取ることができます。詳細については、「SSL 証明書のメッセージ通知を設定する」をご参照ください。
証明書の有効期限切れによるビジネスの中断を避けるために、Alibaba Cloud Certificate Management Service (Original SSL Certificate) の証明書のホスティングサービスを有効にします。このサービスは、証明書の有効期限が切れる前に自動的に証明書をします。詳細については、「証明書ホスティングサービスとは?」をご参照ください。
インスタンスを一時的に無効化/削除する
WAF 保護を一時的に無効にする: オンボーディング後に誤検知が多いなどの問題が発生した場合は、WAF コンソールの [保護対象オブジェクト] ページで WAF 保護ステータス スイッチをオフにすることができます。詳細については、「ワンクリックで WAF 保護を無効にする」をご参照ください。
インスタンスの削除: WAF を使用して CLB インスタンスを保護する必要がなくなった場合は、次の手順に従って削除します。
クラウドプロダクトアクセス タブで、[Classic Load Balancer (CLB)] タブをクリックします。ターゲットインスタンスを見つけ、
アイコンをクリックし、接続解除 をクリックします。接続解除 ダイアログボックスで、OK をクリックします。
ビジネスへの影響: インスタンスを WAF から削除すると、数秒間続く接続中断が発生する可能性があります。この操作はオフピーク時間に実行し、その後サービスを監視することをお勧めします。クライアントまたはサービスに効果的な再接続メカニズムがある場合、接続は自動的に復元され、ビジネス運用に影響を与えません。
再オンボーディング: アセットが削除されると、そのトラフィックは WAF によって保護されなくなります。[今すぐ追加] をクリックして、トラフィックリダイレクトポートを再設定します。
課金: 従量課金 WAF インスタンスの場合、インスタンスと保護ルールを含むリクエスト処理と機能に対して課金されます。WAF の使用を停止し、関連するすべての課金を停止したい場合は、「WAF を無効にする」をご参照ください。
変更後に CLB インスタンスを WAF に再度追加する
WAF は、CLB インスタンスのトラフィックリダイレクトポートを介してサービストラフィックを保護します。次のいずれかの操作により CLB インスタンスが変更された場合、元のトラフィックリダイレクトポート設定は無効になります。これにより、サービストラフィックが WAF をバイパスし、パブリックネットワークの脅威にさらされます。
CLB インスタンスのリリース。
WAF に追加されたリスナーポートの削除。
CLB インスタンスにアタッチされた EIP の置き換え。
セキュリティ保護を復元するには、変更された CLB インスタンスを WAF コンソールに再度追加する必要があります。
本番環境での適用
本番環境でのセキュリティと安定性を確保するために、本番 CLB インスタンスを追加する際には、次のベストプラクティスに従うことをお勧めします。
HTTPS 設定: [HTTPS] トラフィックリダイレクトポートを設定し、効率的な証明書管理のために次の設定を使用します。
証明書ファイルを Certificate Management Service (Original SSL Certificate) にアップロードします。
TLS バージョンを TLS 1.2 以降に設定します。
「SSL 証明書の通知を設定する」ことで、有効期限が近づいたときに速やかに更新します。
カナリアリリース戦略: まず、オフピーク時間に非本番 CLB インスタンスを追加します。一定期間実行してサービスが正常であることを確認した後、本番 CLB インスタンスを追加できます。
サービスの確認: オンボーディングが完了したら、次の方法でサービスが正常であることを確認します。
ログの確認: ログ内の 200 状態コードの割合に大きな変動がないか確認し、QPS の急激なスパイクやドロップを探します。WAF ログサービスを有効にしている場合は、「WAF ログ」をご参照ください。
アプリケーションの監視: ユーザーアクセスやトランザクションなどのコアアプリケーション機能が正常に動作しているか確認します。
メンテナンス: 本番環境でのオンボーディング後、攻撃や誤検知イベントを監視するために継続的なメンテナンスが必要です。
イベント処理: 「セキュリティレポート」を確認し、「CloudMonitor 通知を設定する」ことで、攻撃やセキュリティイベントに関する情報を常に把握します。
ルールの調整: 攻撃ログを継続的に監視して、正当なユーザーリクエストが誤ってブロックされていないか分析し、それに応じて保護ルールを最適化します。
制限事項
ポート数: 設定されたトラフィック転送ポートの総数は、WAF インスタンスのサブスクリプションの制限を超えることはできません。
WAF サブスクリプションインスタンス: Basic Edition (300)。Pro (600)。Enterprise (2,500)。Ultimate (10,000)。
WAF 従量課金インスタンス: 10,000。
HTTPS リスナーを持つ CLB インスタンスの要件:
証明書の有効期限が切れていないこと。
CLB の組み込み TLS セキュリティポリシーのみがサポートされます。
CLB コンソールに手動でアップロードされた証明書はサポートされていません。
相互認証を有効にすることはできません。
証明書の要件: SM 証明書はサポートされていません。
よくある質問
「今すぐ追加」ボタンがグレー表示される、またはステータスが「保護異常」の場合はどうすればよいですか?
プロトコルは TCP
対象の CLB インスタンスを見つけ、今すぐアクセスする をクリックする前に、
アイコンをクリックしてインスタンス詳細を展開する必要があります。
プロトコルは HTTPS
考えられる原因
証明書の有効期限が切れています。
相互認証が有効になっています。
証明書が CLB コンソールに手動でアップロードされました。
解決策
証明書の有効期限が切れている場合は、「トラフィックルーティングポートの証明書を更新する」を参照して更新してください。
相互認証が有効になっている場合は、インスタンスを追加する前に無効にしてください。詳細については、「相互認証を設定する」をご参照ください。
証明書が CLB コンソールに手動でアップロードされた場合は、次の操作を実行します。
証明書を Certificate Management Service (Original SSL Certificate) にアップロードします。詳細については、「SSL 証明書をアップロードする」をご参照ください。
CLB コンソールで、証明書を作成し、証明書ソースを [Alibaba Cloud 証明書] に設定できます。詳細については、「証明書を作成する」をご参照ください。
CLB コンソールで、リスナーを設定してサーバー証明書を新しくアップロードした証明書に置き換えます。詳細については、「ステップ 2: SSL 証明書を設定する」をご参照ください。
説明証明書が CLB コンソールに手動でアップロードされた場合、証明書情報は Certificate Management Service に自動的に同期されません。この問題は、WAF が Certificate Management Service からのみ証明書情報を取得するために発生します。
追加したい CLB インスタンスが見つからないのはなぜですか?
まず、[オンボーディング] ページで、右上隅の [アセットを同期] をクリックします。
それでもインスタンスが見つからない場合は、インスタンスが「要件」を満たしていません。たとえば、中国本土以外のリージョンの CLB インスタンスは、クラウドネイティブモードを使用して中国本土以外のリージョン用に購入した WAF インスタンスに追加する必要があります。または、「CNAME レコードモード」を使用する必要があります。

複数の CLB インスタンスに解決されるドメイン名を追加するにはどうすればよいですか?
クラウドネイティブモードを使用する: WAF がすべてのターゲットインスタンスにトラフィックを確実に誘導するように、これらの各 CLB インスタンスを 1 つずつ追加する必要があります。
CNAME レコードモードを使用する: CNAME ベースのプロビジョニングを使用してこのドメイン名を追加し、複数の CLB インスタンスのパブリック IP アドレスをオリジンサーバーのアドレスとして設定します。
同じ CLB インスタンスに解決される複数のドメインを追加するにはどうすればよいですか?
クラウドネイティブモードを使用する: この CLB インスタンスを追加すると、インスタンス上のすべてのドメイン名が WAF のデフォルトの保護ポリシーによって保護されます。ただし、これらのドメイン名に異なる保護ルールを設定するには、各ドメイン名を手動で保護対象オブジェクトとして追加する必要があります。詳細については、「保護対象オブジェクトを手動で追加する」をご参照ください。
CNAME レコードモードを使用する: 複数のドメイン名を 1 つずつ追加します。