IIS安全対策ガイド・インターネット編インターネット・サービス向けIIS設定ガイド(8/9 ページ)

» 2002年06月29日 00時00分 公開
[井上孝司,]

 続いて、正規のコンテンツ管理者以外のユーザーがWebコンテンツを書き換えられないように、アクセス制限を実施する。制限の方法としては、ユーザー・アカウントによる制限と、ホスト(IPアドレス)による制限を併用する。

■ユーザー単位のアクセス制限
 IISのFTPサービスは、初期設定では匿名アクセスを受け付ける、いわゆる「anonymous FTP(アノニマスFTP)」が可能な状態になっている。実際には、IISのインストール時に作成される「IUSR_<コンピュータ名>」のアカウントが使われるのは、Webサーバの場合と同様だ。

 これを無効にするには、[インターネット サービス マネージャ]で[既定のFTPサイト]のプロパティ画面を表示し、[セキュリティ アカウント]タブに移動する。

 ここで[匿名接続を許可する]チェック・ボックスをオフにすると、FTPでは匿名アクセスができなくなり、必ず正しいユーザー名とパスワードが要求されるようになる。

FTPの[セキュリティ アカウント]設定
このダイアログでは、匿名アクセスの使用/不使用と、FTPサイトのオペレータとなるユーザーあるいはグループを指定する。
 (1)このチェック・ボックスをオフにすると、anonymous FTPが不可能になり、接続時にユーザー認証が行われる。
 (2)FTPサイト管理者を指定する。デフォルトではAdministratorsグループが指定されていて、これは削除できない。別のユーザーやグループを追加指定することもできる。

 なお、設定確定時に「選択した認証オプションでは、パスワードをモニタツールで傍受される危険がある」という警告が表示される。これは、FTPプロトコルがユーザー認証を行う際に、パスワードを平文で送信することを警告するものだ。これはFTPプロトコルを使う限り避けることができないので、無視してもよい。それに今回の設定では、以下のように、FTPアクセスをローカルのLANのみに限定するので、インターネット側へパスワードが漏えいすることはない。

 これにより、FTPを使用してこのコンピュータに接続するには、IISが動作するコンピュータ上に存在するローカル・アカウントの資格が必要になる。試しに、別のクライアントPCでIEを起動し、アドレス・バーに「ftp://<コンピュータ名>/」と入力して接続してみよう。以下のようなユーザー認証ダイアログが表示されるはずである。

FTPの匿名アクセスを禁止したときのユーザー認証画面
anonymous FTPサイトに接続した場合と異なり、ユーザー認証を行うFTPサイトに接続した場合には、ユーザー名とパスワードを送信して認証を受ける必要がある。このとき使用するユーザー名とパスワードは、接続先のコンピュータに存在するローカル・アカウントでなければならない。
 (1)接続先のホスト名が表示される。
 (2)接続に使用するユーザーアカウント名を入力する。
 (3)入力したユーザー名に対応するパスワードを入力する
 (4)このチェック・ボックスをオンにすると、anonymous FTP接続を試みる。
 (5)このチェック・ボックスをオンにすると、入力したユーザー名とパスワードの情報が保存される。しかしセキュリティの観点からは、パスワードを保存しない方が好ましい。

 ここで、Webサーバ上にあるローカル・アカウント名と、そのアカウントに設定されたパスワードを入力すると、接続が許可される仕組みだ。例えば「Administrator」を使って接続することができる。

 なお、ドメイン・コントローラになっていないWindows 2000 Serverにおけるアカウントやグループの作成・管理は、コントロール・パネルの[管理ツール]−[コンピュータの管理]を使用する。このツールを起動し、左側のツリー画面を[コンピュータの管理(ローカル)]−[システムツール]−[ローカル ユーザーとグループ]と展開すると、ユーザーアカウントとグループの管理が可能になる。

ユーザー管理ツールでFTPアクセス用アカウントを作成する
Windows 2000 Serverの場合、Professional版と違い、コントロール・パネルに[ユーザーとパスワード]ツールがない。ドメイン環境ではドメイン用のユーザー管理ツールを使用するが、Webサーバのようにドメインに参加しない場合には、[コンピュータの管理]ツールを使用する必要がある。
 (1)ツリー画面で[ユーザー]を選択するとユーザー・アカウントの、[グループ]を選択するとグループの管理が可能になる。
 (2)右側にユーザー・アカウントやグループの一覧が表示される。セキュリティ向上の観点から、Administratorアカウントを使用するのではなく、コンテンツ管理専用のアカウントを作っておくとよいだろう。

 FTPで接続する際にAdministratorアカウントを使用する場合は、アカウントの追加作成は不要になる。しかしあらゆる操作にAdministratorを使用するのは、不慮のシステム破壊トラブルやセキュリティなどのことを考えると好ましくないので、コンテンツ管理者専用のローカル・アカウントを作成しておくことが望ましい。

■ホスト単位のアクセス制限を行う
 IISのFTPサーバでは、IPアドレスかネットワーク・アドレスを使用したアクセス制限も設定可能である。特定のIPアドレスを持つホスト、あるいは特定のネットワーク・アドレスに属するホスト以外は接続を許可しないように設定すれば(コンテンツの転送を許可するマシンやローカルのネットワークを指定しておく)、インターネット側から不正にFTPを使用して接続され、Web改ざんを仕掛けられる危険性を回避することができる。

 ただしIPパケット内に書き込まれる送信元IPアドレスを詐称する、いわゆる「IPスプーフィング」によって、アクセス制限を突破される危険性もある。IPスプーフィングされたパケットは、受信した側から見ると、ローカルのネットワークから発信されたパケットと同様に見えるので、正常なパケットであるとみなされ、サーバが受け付けてしまう可能性がある。そのため、このような(ローカルIPアドレスを発信元とする)不正なIPパケットは、インターネット接続のために使っているルータやファイアウォール(のインターネットからの入り口側)でブロックしておく必要がある。

 IPアドレスを使用したアクセス制限を行うには、[インターネットサービスマネージャ]で[既定のFTPサイト]のプロパティ画面を表示し、[ディレクトリ セキュリティ]タブに移動する。

 ここで、[既定では、すべてのコンピュータからのアクセスを]を[許可する]となっているので、これを[拒否する]に変更する。その上で、[追加]をクリックし、接続を許可するホストのIPアドレスやネットワーク・アドレスを指定する。

FTPアクセスに対するIPアドレス制限
第三者が勝手にFTPで接続してコンテンツを書き換えないように、特定のホスト(コンテンツの更新を許可されたローカルのマシン)からしか接続できないように設定する。まず、すべてのコンピュータからのアクセスを拒否するように指定した上で、例外として接続を許可するコンピュータのホスト、あるいはネットワーク・アドレスだけを追加指定する。
 (1)初期値では[許可する]が選択されており、どのコンピュータからでも接続できる。
 (2)これを[拒否する]に設定し、アクセスを許可するコンピュータだけを明示的にリストに追加する。
 (3)[追加]をクリックすると、IPアドレス、あるいはネットワーク・アドレスを使用して、接続を許可、あるいは拒否するホストを一覧に追加できる。
 (4)一覧に登録されているホストを削除する。
 (5)一覧に登録されているホストの情報を変更する。
 (6)アクセスを許可(拒否)するホストの一覧。

 アクセスを許可するホストを追加するには、[追加]ボタンをクリックする。

特定の1台からのアクセスを許可(拒否)する
これは、単一のホストにアクセスを許可する際のもの。IPアドレスを指定するが、DNSに登録されているホストであれば、DNSを参照して登録することもできる。この画面例では、「192.168.0.4」というIPアドレスを持つホストからの接続だけを受け入れる設定になっている。
 (1)[1台のコンピュータ]を選択した場合、IPアドレスで指定された特定の1台のホストを指定する。
 (2)[グループ化されたコンピュータ]を選択した場合、ネットワーク・アドレスとサブネットマスクを指定する。
 (3)[1台のコンピュータ]を選択した場合、DNSサーバを参照して、一覧からホストを選択することもできる。

 特定の1台だけでなく、あるネットワークに属している複数のホストに許可を与えるには、次のように指定する。

あるネットワークに属しているすべてのホストからのアクセスを許可(拒否)する
□これは、特定のネットワーク・アドレス全体にアクセスを許可する際の指定。ネットワーク・アドレスとサブネット・マスクを指定する必要がある。この画面例では、「192.168.0.0/24(192.168.0.0〜192.168.0.255)」というネットワーク・アドレス範囲からの接続だけを受け付ける設定になっている。
 (1)ネットワーク・アドレス(アドレス範囲の先頭のIPアドレス)を指定する。
 (2)サブネット・マスクを指定する。

 こうして、特定のホスト、あるいはネットワーク・アドレスを対象にしてアクセス許可を設定した場合、許可対象外のホスト、あるいはネットワークからFTPサーバに接続しようとすると、認証画面で正しいユーザー名とパスワードを入力しても、再度、同じ認証画面が表示されて接続ができない状態になる。

LAN側専用のNICを追加するという方法
 上記の方法は、WebサーバにNICを1枚だけ装備するという前提になっている。しかし、もう1つの方法として、WebサーバにNICを2枚装備するという方法もある。その場合、一方をインターネット向けの公開用に使用し、他方をLAN側に接続する。
 IISのFTPサーバやWebサーバでは、サーバをバインドする(FTPサービスを受け付ける)IPアドレスを限定することができるので、LAN側に接続されたNICのIPアドレスだけをFTPサーバにバインドしておくと、インターネット側からFTPを使って不正侵入することができなくなる(1インターフェイスに2つのIPアドレスを割り当てて同様のことを行うこともできるが、インターフェイスが物理的に1つしかないのでは、安全性は大して向上しない)。
 なお、複数のNICを装備すると、Windows 2000 Serverをルータとして機能させることができるが、それはLAN側に不正侵入される突破口になり得る。そこで、Webサーバに複数のNICを装備する場合は、RRAS(Routing and Remote Access Service)を、必ず無効にしておくこと。

FTPサービスを提供するIPアドレスの指定
IISのFTPサーバでは、サービスをバインドするIPアドレスを特定することができる。ただし、これを実現するには、NICを2枚装備し、それぞれインターネット側とLAN側に接続する必要がある。なお、Webサーバについても、同様の設定が行える。
 (1)IPアドレスのリスト。既定値は「(未使用のIPアドレスすべて)」だが、これを選択していると、すべてのNICを介した接続を受け付ける。
 (2)接続されているNICの数だけ、それぞれのNICに設定されているIPアドレスがリスト表示される。ここではLAN側からの接続だけを受け付けるようにするため、「(未使用のIPアドレスすべて)」に代えて「192.168.0.3」を指定している。すると、このIPアドレスが設定されているNIC(つまりLAN側)からしか、FTPを使った接続ができなくなる。


Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。