続いて、正規のコンテンツ管理者以外のユーザーがWebコンテンツを書き換えられないように、アクセス制限を実施する。制限の方法としては、ユーザー・アカウントによる制限と、ホスト(IPアドレス)による制限を併用する。
■ユーザー単位のアクセス制限
IISのFTPサービスは、初期設定では匿名アクセスを受け付ける、いわゆる「anonymous FTP(アノニマスFTP)」が可能な状態になっている。実際には、IISのインストール時に作成される「IUSR_<コンピュータ名>」のアカウントが使われるのは、Webサーバの場合と同様だ。
これを無効にするには、[インターネット サービス マネージャ]で[既定のFTPサイト]のプロパティ画面を表示し、[セキュリティ アカウント]タブに移動する。
ここで[匿名接続を許可する]チェック・ボックスをオフにすると、FTPでは匿名アクセスができなくなり、必ず正しいユーザー名とパスワードが要求されるようになる。
なお、設定確定時に「選択した認証オプションでは、パスワードをモニタツールで傍受される危険がある」という警告が表示される。これは、FTPプロトコルがユーザー認証を行う際に、パスワードを平文で送信することを警告するものだ。これはFTPプロトコルを使う限り避けることができないので、無視してもよい。それに今回の設定では、以下のように、FTPアクセスをローカルのLANのみに限定するので、インターネット側へパスワードが漏えいすることはない。
これにより、FTPを使用してこのコンピュータに接続するには、IISが動作するコンピュータ上に存在するローカル・アカウントの資格が必要になる。試しに、別のクライアントPCでIEを起動し、アドレス・バーに「ftp://<コンピュータ名>/」と入力して接続してみよう。以下のようなユーザー認証ダイアログが表示されるはずである。
ここで、Webサーバ上にあるローカル・アカウント名と、そのアカウントに設定されたパスワードを入力すると、接続が許可される仕組みだ。例えば「Administrator」を使って接続することができる。
なお、ドメイン・コントローラになっていないWindows 2000 Serverにおけるアカウントやグループの作成・管理は、コントロール・パネルの[管理ツール]−[コンピュータの管理]を使用する。このツールを起動し、左側のツリー画面を[コンピュータの管理(ローカル)]−[システムツール]−[ローカル ユーザーとグループ]と展開すると、ユーザーアカウントとグループの管理が可能になる。
FTPで接続する際にAdministratorアカウントを使用する場合は、アカウントの追加作成は不要になる。しかしあらゆる操作にAdministratorを使用するのは、不慮のシステム破壊トラブルやセキュリティなどのことを考えると好ましくないので、コンテンツ管理者専用のローカル・アカウントを作成しておくことが望ましい。
■ホスト単位のアクセス制限を行う
IISのFTPサーバでは、IPアドレスかネットワーク・アドレスを使用したアクセス制限も設定可能である。特定のIPアドレスを持つホスト、あるいは特定のネットワーク・アドレスに属するホスト以外は接続を許可しないように設定すれば(コンテンツの転送を許可するマシンやローカルのネットワークを指定しておく)、インターネット側から不正にFTPを使用して接続され、Web改ざんを仕掛けられる危険性を回避することができる。
ただしIPパケット内に書き込まれる送信元IPアドレスを詐称する、いわゆる「IPスプーフィング」によって、アクセス制限を突破される危険性もある。IPスプーフィングされたパケットは、受信した側から見ると、ローカルのネットワークから発信されたパケットと同様に見えるので、正常なパケットであるとみなされ、サーバが受け付けてしまう可能性がある。そのため、このような(ローカルIPアドレスを発信元とする)不正なIPパケットは、インターネット接続のために使っているルータやファイアウォール(のインターネットからの入り口側)でブロックしておく必要がある。
IPアドレスを使用したアクセス制限を行うには、[インターネットサービスマネージャ]で[既定のFTPサイト]のプロパティ画面を表示し、[ディレクトリ セキュリティ]タブに移動する。
ここで、[既定では、すべてのコンピュータからのアクセスを]を[許可する]となっているので、これを[拒否する]に変更する。その上で、[追加]をクリックし、接続を許可するホストのIPアドレスやネットワーク・アドレスを指定する。
アクセスを許可するホストを追加するには、[追加]ボタンをクリックする。
特定の1台だけでなく、あるネットワークに属している複数のホストに許可を与えるには、次のように指定する。
こうして、特定のホスト、あるいはネットワーク・アドレスを対象にしてアクセス許可を設定した場合、許可対象外のホスト、あるいはネットワークから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)を、必ず無効にしておくこと。
Copyright© Digital Advantage Corp. All Rights Reserved.