IISをインストールした場合、デフォルト状態でいくつかのかの、
仮想ディレクトリが作成されています。
仮想ディレクトリとは、まったく別の場所にある物理ディレクトリを、
Webサイトのホームディレクトリのサブディレクトリとして割り当て、
あたかもそこに存在するように見せるものです。
これら仮想ディレクトリには、それぞれのアクセス権を指定できるので、
非常に便利な機能といえます。
インストール時に自動作成された仮想ディレクトリには、
「実行アクセス権」として「スクリプトおよび実行可能ファイル」の権限が、
与えられているものもあります。
(実行アクセス権の詳細については後述を参照してください。)
この仮想ディレクトリに不正なアクセスが行われた場合、
「スクリプトおよび実行可能ファイル」権限を悪用されることは十分考えられます。
特に、"実行可能ファイル"の実行アクセス権によって、
予想をはるかに越えるトラブルを起こすかもしれません。
そこで、特にデフォルトとして作成されているディレクトリで不要なものは、
削除することを強く勧めます。
以下に、不要とと思われるデフォルト時の仮想ディレクトリを、掲載します。
| 仮想ディレクトリ名 |
|---|
| IISHelp |
| IISSamples |
| MSADC |
| Printers |
なお、上記以外に「IISAdmin」という仮想ディレクトリが作成されている場合があります。
Internet Explorerでこのディレクトリにアクセスすると、
IISをブラウザ上で管理することができます。
デフォルトでは、この機能はサーバ自身からアクセスした場合のみに使用可能ですが、
設定の変更により、インターネット上どこからでもIISを管理できるようになります。
この機能が必須な環境でければ、
この仮想ディレクトリも削除してください。
| 不要と思われる項目(拡張子) |
| .htw |
| .ida |
| .idq |
| .cer |
| .cdx |
| .htr |
| .idc |
| .shtml |
| .stm |
各Webディレクトリごとに、アクセス権を指定できます。
設定画面は、以下の手順で表示します。
次に、アクセス権を指定します。
以下に、アクセス権に関する項目とその内容を解説します。
| 項目名 | 内容 | 推奨の設定 | |
| スクリプトソースアクセス | ASP等のスクリプトソースを、ブラウザー上から参照できるようにします。 | チェックを外します。ソースが公開されることは大変危険です。 | |
| ログアクセス | ディレクトリへのアクセスを、ログファイルに記録します。 | チェックを付けます。 | |
| 読み取り | ディレクトリへのアクセスとして、読み取りを可能にします。 | チェックを付けます | |
| このリソースに索引を付ける | Microsoft Indexing Serviceを使用しているときの、Webサイトのフルテキストインデックスボックスに入れます。 | チェックを外します。Indexing Serviceを使用している場合も、予期せぬ情報漏洩を防ぐために、外すことをおすすめします。 | |
| 書き込み | サーバへの書き込み機能をサポートするブラウザにおいて、ファイルなどの書き込みができるようにします。 | チェックを外します。データの改竄の原因になります。 | |
| ディレクトリの参照 | ディレクトリ内の、ファイル一覧をブラウザ上で表示できるようにします。 | チェックを外します。通常は表示されないはずのページにアクセスされる可能性があり、情報漏洩の危険があります。 | |
| 実行アクセス権 | なし | HTMLや画像ファイルなど、静的なファイルのみにアクセスを許可します。 | 必要に応じて設定を行います。Webアプリケーションを使用しない場合は、「なし」を選択します。 「スクリプトおよび実行可能ファイル」を選択しておけば、サービス性は高くなりますがセキュリティ・レベルは低くなります。 |
| スクリプトのみ | ASP等のスクリプトのみの実行を許可します。 | ||
| スクリプト および 実行可能ファイル |
全てのファイルアクセスと、アプリケーションの実行を許可します。 | ||
| アプリケーション保護 | 低 (IIS プロセス) |
Webサーバサービスと同じプロセスで実行させます。 | 必要に応じて設定を行います。「高(分離プロセス)」を選択すれば、1つアプリケーションがクラッシュなどの問題を起こしても、Webサービスや他のアプリケーションに影響を避けることができ、DoS攻撃対策になります。 |
| 中 (プール) |
既に実行されている、他のWebアプリケーションと同じプロセスで実行させます。 | ||
| 高 (分離プロセス) |
他のプロセスから分離された、独立プロセスで実行させます。 | ||
普段のブラウザによるWebサーバへのアクセスは、
匿名アクセスとして扱われます。
匿名アクセスでは、これに割り当てられたWindowsユーザアカウントを使用し、
サーバ内のフォルダにアクセスが行われます。
よって、全ての人にWebコンテンツを参照してもらうには、
それを公開するフォルダに匿名アクセス用ユーザ アカウントに読み取り許可のアクセス権が必要です。
なお、ここでいうアクセス権限とは、NTFSアクセス制御のことであり、
エクスプローラなどでファイルやフォルダを選択し、
これらのプロパティ画面から設定するセキュリティのことです。

対して、匿名アクセス用の読み取り許可が与えられていないフォルダにWebブラウザからアクセスすると、
ブラウザー上には、ユーザ名とパスワードの入力を要求するダイアログが表示されます。
この場合、フォルダへのアクセス許可があるWindows ユーザ アカウントの名とパスワードを入力することで、アクセスが可能になるのですが、デフォルトの設定では Internet Explorer からのみ可能となります。
これを、ブラウザに関係なく行うためのの手順を、以下に説明します。
以上で、ほとんどのブラウザでの認証済みアクセスが可能になります。
ただし、ユーザ名とパスワードが暗号化されずに通信されるため、
セキュリティレベルが低くなります。
この問題を解決し、ブラウザの種類に関係なく、
ユーザ名とパスワードを暗号化によって通信するためには、
SSLを使用してください。
既定のディレクトリを、そのままコンテンツ公開用とするのではなく、
別ドライブにフォルダを作成し、それを公開用として割り当てます。
これは、システムディレクトリから切り離すことにより、
攻撃によるダメージを少しでも軽減することを目的とします。
これから解説する例では、「D:」ドライブにコンテンツ公開用フォルダ「WebFolder」
を作成し、「インターネット サービス マネージャ」にて、
このフォルダをWebサーバのルートディレクトリとして割り当てるものです。
| 名前 | アクセス許可 (チェックされた許可項目) |
備考 |
| Administrators |
|
公開用フォルダの管理と、コンテンツそのものの更新を行います。コンテンツの変更者とフォルダの管理者が異なる場合など、必要に応じてユーザを追加し、それぞれ設定してください。 |
| SYSTEM |
|
Windowsがアクセスするために必要です。 |
| Authenticated Users |
|
「Authenticated Users」は、「Everyone」グループとほぼ同等です。よって、匿名アクセス用のWindows ユーザ アカウント以外も含まれます。より厳しいセキュリティ設定としては、匿名アクセス用のアカウントのみを設定します。 |
以上で、公開用のフォルダの準備は完了しました。
次に、「インターネット サービス マネージャ」にて、公開用のフォルダを、
Webサービスのホームディレクトリとして割り当てます。
以上で、コンテンツ公開用のフォルダのの変更が完了しました。
Copyright(C) 2001 Information-technology Promotion Agency, Japan. All rights reserved.