当社の ASP.NET Web サイトは、Windows サーバー 2008 および IIS7 でホストされています。
最近、特定の IP からの「攻撃」に問題があり、無効なパラメーターを含むさまざまなフォームを送信することで多くのエラーが発生します。
asp.net コードから生成されたリストに基づいて、IP アドレスのリストを 24 時間ブロックできるようにしたいと考えています。Web.config - ipSecurity Tag を使用してこれを実現できることはわかっています。次の例を見つけました。
http://www.dantor.com/support/misc/web-config-ip-address-restriction.aspx
問題は、web.config を変更/更新すると、Web サイトが再起動/リサイクルされることです。
プールをリサイクルせずに、ブロックされた IP リストを更新することはできますか?
編集:
おそらく、HttpModule を使用してこれを実装することをお勧めします。Scott Hanselman は、この件に関する投稿をブログに書いてい ます。
これはパフォーマンスに影響を与えると思いますか? httpmodule を介してすべての Web サイト要求をルーティングすると、ページの読み込み時間に影響を与える可能性があります。これを行う方法について他に何か考えはありますか?
編集2:
Web サイトは Fortigate 200a ファイアウォールで保護されていますが、私の知る限り、ファイアウォールはエラーを生成したり SQL インジェクションを実行しようとしたりする IP を自動的にブロックできません。