FTP(ファイル転送プロトコル)サーバーの機能をUNIXマシンからWindows 2000 ServerもしくはWindows Server 2003マシンに移行しようと計画しています。UNIXマシンでは,セキュリティ上,アクセス可能な領域を,ログインした各ユーザーのホーム・ディレクトリ内部に制限しています。Windowsマシンでも,同様の機能を実現したいのですが,設定方法がよく分かりません。Windows Server 2003では設定が可能なようですが,どうすればよいでしょうか。またWindows 2000 Serverでは実現できないのでしょうか。
UNIXで一般的なProFTPDなどのFTPサーバー・ソフトは,各ユーザーのアクセス可能な領域を自分のホーム・ディレクトリ内部に制限する機能を以前から実装しています。Windows Server 2003のInternet Information Services(IIS)6.0では,UNIXと同様の機能が実装されています。また,Windows 2000 ServerのIIS 5.0でも,設定で類似の機能を実現できます。
Windows 2000では設定を追加
ただし,この機能はあくまでカレント・フォルダを設定するだけです。そのままルート・フォルダに移動してフォルダ一覧を参照したり,別のフォルダに移動したりできます。 そこでユーザー名の付いた各フォルダでNTFSアクセス許可を構成してください。
FTPサイトのルート・フォルダの「読み取り」権限は必ず付けてください。削除した場合,FTPサイトへのログオン自体が失敗します。そのため,ユーザーがFTPサイトのルート・フォルダに移動してフォルダ一覧を参照することで,FTPでアクセス可能なユーザー名の一覧が取得できるというセキュリティ上の問題は残ります。
2003は専用の機能を用意
続いて,図4のようにFTPサイトのルート・フォルダ(この例ではC:\Inetpub\ftptest1)直下にLocalUserという名前のフォルダを作成し,その下に各ユーザー名のフォルダを作成します。 これにより,FTPサーバーにログオンした際のルート・フォルダが各ユーザー名のフォルダに設定され,親フォルダへのアクセスが抑止されます。この設定を行った場合,ログオンするユーザーのルート・フォルダが存在しないとエラーが発生してログオンできませんので気を付けてください。 なお,匿名ユーザーでのログオンも許可する場合は,匿名ユーザー用のルート・フォルダとして,LocalUserフォルダの下にPublicという名前のフォルダを作成しておいてください。
ドメイン・メンバー固有の設定も可能
例えばWindows Server 2003のFTPサーバーが「W2003AD1」ドメインに所属しており,ftpuser1という名前のドメイン・ユーザーでFTPサーバーにログオン可能にする場合は,図5のようにW2003AD1フォルダの下にftpuser1という名前のフォルダを作成します。 Active Directoryを用いている場合は,図3の画面で[Active Directoryを使用してユーザーを分離する]を選択することで,ドメインのユーザーごとに,FTPルート・フォルダの位置を設定することも可能です。詳細については,マイクロソフトのWebサイト「FTPユーザーを分離する」などを参照してください。 |
システム方式技術ビジネスユニット
第一技術統括部 第一システム方式技術担当
シニアエキスパート