0

Iptablesを使用してAPIへのレート制限アクセスを設定するにはどうすればよいですか。ポート80を使用して制限を設定しようとしましたが、Webアクセスに完全に制限を設定したくありません。ポートではなくサブドメインを指定する方法はありますか?例:レート制限をexample.comではなくapi.example.comに設定しますか?

サブドメインごとにレート制限を設定する方法がない場合、正当なWebユーザーをブロックするリスクを冒さずにポート80にアクセスするための推奨レート制限は何ですか?1秒あたり1つの接続で十分でしょうか?

4

1 に答える 1

1

名前が示すように、iptables は IP アドレスで動作します。そのapi.example.comため、別の IP アドレスに解決された場合www.example.comは、それらの IP アドレスに基づいてフィルタリングできます。両方が同じ IP アドレスに解決される場合、それらを個別にフィルタリングすることはできません。

正当なユーザーの 1 秒あたりの接続数は、まだかなり少ないです。ページをダウンロードするときは、すべての .js、.css、.jpg などのファイルもダウンロードする必要があり、それらはすべて同じドメインから取得されることを忘れないでください。これによりKeep-Alive、接続要求の数を減らすことができますが、同じユーザーからの同時要求は少なくとも 2 つ、場合によっては最大 6 つになります (ブラウザーと構成によって異なります)。

これが本当に重要な場合は、2 つの別個のサブドメインに固有の IP アドレスを設定し、それをフィルタリングする必要があります。個人的には、apache レベルでのフィルタリングの方が適切だと思います。

于 2010-05-04T00:55:37.823 に答える