
IIS 7以前のバージョンには、管理者が特定のIPアドレス(またはその範囲)のサーバーへのアクセスを許可または拒否できるビルトイン機能が含まれていました。 IPアドレスがブロックされると、そのIPを持つHTTPクライアントは、サーバーへの要求への応答として「403.6 Forbidden」HTTPエラーを受け取りました。 この機能により、管理者はサーバーログで分析できるアクティビティに基づいてサーバーへのアクセスを構成できました。 しかし、それは手動のプロセスでした。 MicrosoftのLogParserなどのユーティリティを使用してログを分析することにより、疑わしいユーザーを識別するスクリプトを介して機能管理を構成できますが、依然として多くの手作業が必要でした。
解決策
IIS 8では、組み込みの機能が拡張され、次の機能が提供されます。
- 動的IPアドレスフィルタリング。管理者は、サーバーへの要求が多すぎるIPアドレスをブロックするようにサーバーを構成できます。
- IPアドレスフィルタリングにより、管理者はIPブロッキング中のサーバーの動作を指定できるようになり、HTTP 403.6をクライアントに返す代わりに、侵入者からの要求がサーバーによって中断される可能性があります。
- IPフィルタリングがプロキシモード機能をサポートするようになりました。これにより、サーバーが受信するクライアントのIPアドレスだけでなく、HTTPヘッダーx -forwarded -forの受信値によってもアドレスをブロックできます。
順を追った説明
要件:
注:
IP および ドメインの 制限は、IISと共にインストールする必要があります。

HTTP要求に基づいてアクセスをブロックするためのIISの構成
IIS 8.0は、クライアントが行う単位時間あたりの一定数の要求に基づいて、Webサイトへのアクセスをブロックするように構成できます。 別のオプションは、同時クライアント接続の数に基づいてブロックすることです。
HTTP要求の数に基づいてアクセスをブロックするようにIISを構成するには、次の手順に従います。
管理者アカウントでログインします。
インターネットインフォメーションサービス(IIS)マネージャーを開き
ます 。 [
接続]ウィンドウでサーバー、サイト、またはフォルダーを選択し、機能バーで[
IPアドレスとドメインの制限]を起動し
ます 。

[
アクション ]パネルで
[動的制限設定の編集]をクリックします。

ユーザーからの同時接続が多すぎるのを防ぐ
には 、[動的IP制限設定]ウィンドウで、
同時要求の数に基づいて [
IPアドレスを拒否する ]を選択します。 ユーザーからの要求が多すぎないよう
にするには、一定期間の要求の数に基づいて [
IPアドレスを拒否する]を選択します。

OKをクリックします。
IIS IPブロック動作の構成
IIS 7以前では、IPアドレスがブロックされると、サーバーは「403.6 Forbidden」HTTPエラーを返しました。 IIS 8.0では、管理者はいくつかの追加オプションを使用して、IPアドレスからのアクセスを拒否するようにサーバーを構成できます。
IISがIPアドレスをブロックするときのIISの動作を指定するには、次の手順を実行します。
管理者アカウントでログインします。
インターネットインフォメーションサービス(IIS)マネージャーを開き
ます 。 [
接続]ウィンドウでサーバー、サイト、またはフォルダーを選択し、機能バーで[
IPアドレスとドメインの制限]を起動し
ます 。

[
アクション ]パネルで[
機能設定の編集]をクリックします。
[IPおよびドメイン制限設定の
編集]ウィンドウで、[
拒否アクションタイプ ]ドロップダウンメニューから優先サーバーの動作を選択します。
- 不正:IISはHTTP 401応答を返します。
- 禁止:IISはHTTP 403応答を返します。
- 見つかりません:IISはHTTP 404を返します。
- 中止:IISはHTTP接続を閉じます。

OKをクリックします。
プロキシモード用のIISの構成
IPフィルタリングの問題の1つは、多くの異なるクライアントが1つのIPアドレスからサーバーにアクセスする状況(ファイアウォール、ロードバランサー、プロキシ経由)の可能性です。 したがって、そのような各クライアントのIPアドレスは同じになります。 IIS 8.0では、管理者は、ブロックする要求をより正確に決定するために、クライアントIPアドレスに加えて、
x -forwarded -for HTTPヘッダーに基づいてサーバーを構成できます。 この動作は「プロキシモード」と呼ばれます。
以下の手順に従って、プロキシモード用にIISを構成します。
管理者アカウントでログインします。
インターネットインフォメーションサービス(IIS)マネージャーを開き
ます 。 [
接続]ウィンドウでサーバー、サイト、またはフォルダーを選択し、機能バーで[
IPアドレスとドメインの制限]を起動し
ます 。

[
アクション ]パネルで
[機能設定の編集]をクリックします。

[IPおよびドメインの制限設定の編集]ウィンドウで、[プロキシモードを有効にする]を選択します。

OKをクリックします。
おわりに
このガイドでは、クライアントからの要求の数に基づいてサーバーへのアクセスを動的にブロックするようにIISを構成する方法と、潜在的な攻撃者をブロックするときにサーバーが使用するIISの動作を構成する方法を学びました。
翻訳者から
このアドレスでは、IIS 8(ロシア語)の他の多くの革新に関するレビュー記事を読むことができ
ます 。
この図を完成させるために、IIS 8の多くの新機能をより完全に明らかにする
便利なリンクで記事を補足したいと思います。
もう1つの便利な点は、開発者向けの無料の軽量IIS 8 Expressサーバーのリリースです。これは既にダウンロードしてインストールできます。
リンクの詳細。
4月3日、サマラで無料会議
WebProfessionalsが開催され、IIS 8およびMicrosoft Webプラットフォームのその他の要素について説明されます。 登録はすでに
開いてい
ます 。