
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の受信値によってもアドレスをブロックできます。
順を追った説明
要件:
- IIS 8が有効なプレインストールされたWindows 8 。

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の多くの新機能をより完全に明らかにする便利なリンクで記事を補足したいと思います。
- Windows Server 8にIIS 8をインストールする
- ASP.NET 3.5およびASP.NET 4.5を使用するIIS 8.0
- IIS 8.0 ASP.NET構成管理
- IIS 8.0アプリケーションの初期化
- IIS 8.0の動的IPアドレスの制限
- IIS 8.0 FTPログオン試行の制限
- IIS 8.0 CPUスロットル:サンドボックスサイトとアプリケーション
- IIS 8.0サーバー名表示(SNI):SSLのスケーラビリティ
- IIS 8.0の一元化されたSSL証明書のサポート:SSLのスケーラビリティと管理性
- NUMAハードウェア上のIIS 8.0マルチコアスケーリング
4月3日、サマラで無料会議WebProfessionalsが開催され、IIS 8およびMicrosoft Webプラットフォームのその他の要素について説明されます。 登録はすでに開いています 。