DDoS攻撃によりWebサイトの応答時間が長くなる場合は、レート制限機能を有効にすることができます。 レート制限により、Alibaba Cloud CDNポイントオブプレゼンス (POP) は、Webサイトにリクエストを頻繁に送信し、悪意のあるリクエストをブロックするIPアドレスを特定できます。 これにより、Webサイトのセキュリティが強化されます。
レート制限の有効化
- 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にさらにリクエストを送信して、ルールをトリガーできます。Action リクエストが指定されたルールに一致した後に実行するアクション。 [ブロック] または [ボット検出] を選択できます。 - ブロック
このアクションがトリガーされると、HTTP 403のステータスコードがリクエストに返されます。
- ボット検出
このアクションがトリガーされると、HTTP 200ステータスコードがリクエストに返され、リクエストは検証のためにリダイレクトされます。 要求は、検証に合格した場合にのみ、要求されたリソースにアクセスできます。
たとえば、IPアドレスが20秒以内に5つを超えるリクエストを開始した場合、ボットの検出がトリガーされます。 次の10分以内のIPアドレスからのすべての要求が検証されます。 このIPアドレスからのリクエストは、ヒューマンマシン識別に合格した場合にのみリソースにアクセスできます。
TTL IPアドレスがブロックされたままの期間。 時間は少なくとも60秒でなければなりません。 - [OK] をクリックします。
例
シナリオ | 監視対象オブジェクト | インターバル | 一致基準 | Action | TTL | 期待される結果 |
4xxまたは5xxエラー | IP | 10 秒 | "status_ratio | 404">60% && "count">50 | ブロック | 10 分 | IPアドレスに返されるすべてのHTTPステータスコードの少なくとも60% がHTTP 404ステータスコードであり、IPアドレスが少なくとも50回のリクエストを開始した場合、IPアドレスは10分間ブロックされます。 IPアドレスからのすべてのリクエストは、HTTP 403ステータスコードを受け取ります。 |
1秒あたりのクエリ (QPS) エラー | ドメイン名 | 10 秒 | 「カウント」> N 説明 ビジネス要件に基づいてNの値を指定します。 | ボット検出 | 10 分 | ドメイン名に送信されたリクエストの数がNに達すると、ボットの検出がトリガーされます。 次の10分以内にドメイン名に送信されたすべてのリクエストが検証されます。 リクエストは、ヒューマンマシン識別に合格した場合にのみドメイン名にアクセスできます。 |
関連する API 操作
DescribeDomainCcActivityLog: レート制限のログエントリを照会します。