DDoS 攻撃によって Web サイトの応答時間が長くなった場合は、レート制限機能を有効にすることができます。レート制限を使用すると、Alibaba Cloud CDN の拠点(POP)は Web サイトに頻繁にリクエストを送信する IP アドレスを識別し、悪意のあるリクエストをブロックできます。これにより、Web サイトのセキュリティが強化されます。
この機能は現在利用できません。ESA WAF を使用することをお勧めします。
このトピックは、以下のセクションで構成されています。
レート制限を有効にする
Alibaba Cloud CDN コンソールにログインします。
左側のナビゲーションウィンドウで、ドメイン名 をクリックします。
ドメイン名 ページで、管理するドメイン名を見つけ、アクション 列の 管理 をクリックします。
ドメイン名の左側のナビゲーションウィンドウで、セキュリティ設定 をクリックします。
レート制限 タブをクリックします。
[レート制限] をオンにします。
レート制限 ダイアログボックスで、[パラメータチェック] をオンにし、[制限モード] パラメータを設定します。

パラメータ
説明
パラメータチェック
パラメータチェックを有効にすると、すべてのパラメータを含む URI がレート制限ルールと照合されます。この機能は URI のみをチェックします。カスタムレート制限ルールで設定された照合基準は、この機能には適用されません。
説明パラメータチェック は、制限モードパラメータをカスタムに設定した場合にのみ有効になります。
制限モード
次のいずれかのモードを選択できます。
標準
デフォルトのレート制限モードです。Web サイトのネットワークトラフィックが想定範囲内にある場合は、このモードを選択して誤検知を防ぎます。
緊急
Web サイトの応答が遅く、ネットワークトラフィック、CPU 使用率、メモリ使用量、またはその他のパフォーマンスメトリックで例外が検出された場合は、このモードを選択してください。
カスタム
ビジネス要件に基づいてカスタムレート制限ルールを作成する場合は、このモードを選択してください。このモードは、IP アドレスから頻繁に送信されるリクエストを検出し、POP での HTTP フラッド攻撃を軽減します。カスタムレート制限ルールの作成方法の詳細については、「カスタムレート制限ルールを追加する」をご参照ください。
[OK] をクリックします。
カスタムレート制限ルールを追加する
制限モード を カスタム に設定した場合は、カスタムレート制限ルールを追加する必要があります。その他の 制限モード では、カスタムレート制限ルールは必要ありません。
最大 5 つのカスタムレート制限ルールを追加できます。
[カスタムルール] の右側にある [ルールの追加] をクリックします。
画面の指示に従って、カスタムレート制限ルールを追加します。次の表にパラメータを示します。

パラメータ
説明
ルール名
名前は 4 ~ 30 文字で、文字と数字を含めることができます。
同じドメイン名に設定されているルールの名前は一意である必要があります。
URI
保護する URI。例:
/register。URI にパラメータが含まれている場合(例:/user?action=login)、パラメータチェック機能を有効にする必要があります。照合モード
レート制限ルールは、完全一致、プレフィックス一致、あいまい一致の順に照合ルールを適用します。レート制限ルールでは、照合ルールの優先順位を調整できます。照合ルールは、優先順位に基づいてリストされ、実行されます。
完全一致
このモードでは、リクエスト URI が指定された URI と完全に一致する場合にのみ、リクエストがカウントされます。
プレフィックス一致
このモードでは、リクエスト URI が指定された URI で始まる場合にのみ、リクエストがカウントされます。たとえば、指定された URI が
/registerに設定されている場合、/register.htmlで始まるリクエストがカウントされます。あいまい一致
このモードでは、リクエスト URI が指定された正規表現と一致する場合にのみ、リクエストがカウントされます。ピリオド(.)とアスタリスク(*)をワイルドカード文字として使用できます。
ピリオド(.)は、レート制限ルールが個々の文字を比較することを指定します。
アスタリスク(*)は、指定された正規表現と一致する文字がある場合、レート制限ルールがリクエストを一致とみなすことを指定します。
監視対象
有効値:
送信元 IP
ヘッダー
ドメイン
URL パラメータ
間隔
リクエストがカウントされる期間。このパラメータは、監視対象を指定した場合にのみ有効になります。有効値:10 ~ 600。単位:秒。
照合基準
[基準の追加] をクリックし、[タイプ]、[パラメータ]、[論理演算子]、[値] パラメータを設定します。
説明各 POP で指定された基準に一致するリクエストの数がカウントされます。レート制限ルールのトリガーには長い時間がかかる場合があります。ルールをトリガーするために、POP にさらにリクエストを送信できます。
アクション
リクエストが指定されたルールと一致した後に実行するアクション。[ブロック] または [ボット検出] を選択できます。
ブロック
このアクションがトリガーされると、HTTP 403 ステータスコードがリクエストに返されます。
ボット検出
このアクションがトリガーされると、HTTP 200 ステータスコードがリクエストに返され、リクエストは検証のためにリダイレクトされます。リクエストは、検証に合格した場合にのみ、リクエストされたリソースにアクセスできます。
たとえば、IP アドレスが 20 秒以内に 5 つ以上のリクエストを開始した場合、ボット検出がトリガーされます。次の 10 分以内にその IP アドレスから送信されたすべてのリクエストが検証されます。この IP アドレスからのリクエストは、人間と機械の識別に合格した場合にのみリソースにアクセスできます。
TTL
IP アドレスがブロックされたままになる期間。期間は 60 秒以上である必要があります。
[OK] をクリックします。
例
次の表に、いくつかの設定例を示します。
シナリオ | 監視対象 | 間隔 | 照合基準 | アクション | TTL | 予期される結果 |
4xx または 5xx エラー | IP | 10 秒 |
| ブロック | 10 分 | IP アドレスに返されるすべての HTTP ステータスコードのうち、少なくとも 60% が HTTP 404 ステータスコードであり、IP アドレスが少なくとも 50 件のリクエストを開始した場合、IP アドレスは 10 分間ブロックされます。IP アドレスからのすべてのリクエストは、HTTP 403 ステータスコードを受け取ります。 |
1 秒あたりのクエリ数(QPS)エラー | ドメイン名 | 10 秒 |
説明 ビジネス要件に基づいて N の値を指定します。 | ボット検出 | 10 分 | ドメイン名に送信されるリクエストの数が N の値に達すると、ボット検出がトリガーされます。次の 10 分以内にドメイン名に送信されるすべてのリクエストが検証されます。リクエストは、人間と機械の識別に合格した場合にのみドメイン名にアクセスできます。 |
関連 API 操作
DescribeDomainCcActivityLog: レート制限のログエントリをクエリします。