次の方法で共有


Azure Front Door のレート制限とは何ですか?

レート制限を使用すると、ソケット IP アドレスから異常に高いレベルのトラフィックを検出してブロックできます。 Azure Front Door で Azure Web Application Firewall を使用すると、一部の種類のサービス拒否攻撃を軽減できます。 また、レート制限は、誤って誤って構成されたクライアントが短時間に大量の要求を送信するのを防ぐこともできます。

ソケット IP アドレスは、Azure Front Door への TCP 接続を開始したクライアントのアドレスです。 通常、ソケット IP アドレスはユーザーの IP アドレスですが、ユーザーと Azure Front Door の間にあるプロキシ サーバーまたは別のデバイスの IP アドレスである場合もあります。 異なるソケット IP アドレスから Azure Front Door にアクセスするクライアントが複数ある場合は、それぞれに独自のレート制限が適用されます。

レート制限ポリシーを構成する

レート制限は、 カスタム WAF ルールを使用して構成されます。

レート制限ルールを設定するときは、 しきい値を指定します。 しきい値は、1 分または 5 分以内に各ソケット IP アドレスから許可される Web 要求の数です。

また、少なくとも 1 つの 一致条件を指定して、レート制限をアクティブ化するタイミングを Azure Front Door に指示する必要があります。 アプリケーション内の異なるパスに適用される複数のレート制限を構成できます。

すべてのリクエストにレート制限ルールを適用する必要がある場合は、次の例のような一致条件の使用を検討してください。

すべての要求に適用される一致条件を示す Azure portal を示すスクリーンショット。一致条件は、Host ヘッダー・サイズが 0 以上の要求を検索します。

上記の一致条件は、Host より大きい長さの 0 ヘッダーを持つすべての要求を識別します。 Azure Front Door のすべての有効な HTTP 要求には Host ヘッダーが含まれているため、この一致条件はすべての HTTP 要求を一致させる効果があります。

レート制限と Azure Front Door サーバー

同じクライアントからの要求は、多くの場合、同じ Azure Front Door サーバーに到着します。 その場合、各クライアント IP アドレスのレート制限に達するとすぐに要求がブロックされます。

同じクライアントからの要求が、レート制限カウンターをまだ更新していない別の Azure Front Door サーバーに到着している可能性があります。 たとえば、クライアントは要求ごとに新しい TCP 接続を開き、各 TCP 接続を異なる Azure Front Door サーバーにルーティングできます。

しきい値が十分に低い場合、新しい Azure Front Door サーバーへの最初の要求はレート制限チェックに合格する可能性があります。 そのため、しきい値が低い場合 (たとえば、1 分あたり約 200 リクエスト未満) では、しきい値を超える一部のリクエストが通過する可能性があります。

レート制限のしきい値と時間枠を決定する際に留意すべきいくつかの考慮事項があります。

  • 許容可能な要求数のしきい値が最小のウィンドウ サイズが大きいことは、DDoS 攻撃を防ぐための最も効果的な構成です。 この構成は、攻撃者がしきい値に達すると、レート制限ウィンドウの残りの期間ブロックされるため、より効果的です。 したがって、攻撃者が 1 分間のウィンドウの最初の 30 秒間にブロックされた場合、残りの 30 秒間のみレートが制限されます。 攻撃者が 5 分間のウィンドウの最初の 1 分間でブロックされた場合、残りの 4 分間はレートが制限されます。
  • より大きな時間枠サイズ (たとえば、1 分で 5 分) と大きなしきい値 (たとえば、100 で 200) を設定すると、短い時間枠サイズと低いしきい値を使用するよりも、レート制限のしきい値に近い値を適用する方が正確です。
  • Azure Front Door WAF のレート制限は、固定された期間で動作します。 レート制限のしきい値を超えると、そのレート制限ルールに一致するすべてのトラフィックが、固定ウィンドウの残りの期間ブロックされます。

次のステップ