FTPCHROOT(5)

名称
ftpchroot - FTP アクセス制限を受けるユーザとグループの一覧

解説
ファイル ftpchroot は、FTP セッション開始時にそのユーザの認証後、 ftpd(8) によって読み込まれます。 ftpchroot の各行はユーザまたはグループに対応します。 もし ftpchroot のある行が現在のユーザ、あるいはそのユーザが所属するグループにマッチした場合、 このセッションではこの行に記された、またはこのユーザのログインディレクトリに、 chroot(2) によってルートディレクトリが変更されるアクセス制限が適用されます。

ftpchroot におけるレコードの順番は重要です。何故なら最初にマッチしたものが 使用されるからです。各行のフィールドはタブか空白で区切られます。

最初のフィールドはユーザまたはグループ名です。もし “at” 記号、つまり ‘@’ で始まっている場合はグループ名とされ、このグループに属する メンバのユーザにマッチします。 特別なケースとして、このフィールドにおける単一の ‘@’ は、全てのユーザにマッチします。 これら以外ではユーザ名とされます。

2 番目のフィールドはオプションで、ユーザまたはグループに属するメンバを、 chroot(2) を使って閉じ込めるディレクトリを記述します。 省略された場合、そのユーザのログインディレクトリが使われます。 絶対パス名ではない場合、そのユーザのログインディレクトリからの 相対パスとされます。 パス名に /./ セパレータが含まれる場合、 ftpd(8) は左側を chroot(2) 先のディレクトリ名、右側を以降のカレントディレクトリとして扱います。

関連ファイル
/etc/ftpchroot

使用例
ftpchroot における次の行は、ユーザ “webuser” と、グループ “hostee” に属するメンバを、各自のログインディレクトリに閉じ込めます。

    webuser
    @hostee

次の行では、ユーザ “joe” を /var/spool/ftp に閉じ込め、そしてカレントディレクトリを、このセッションにおける 新しいルートからの相対パスになる /joe に変更するように、 ftpd(8) に教えます。

    joe	/var/spool/ftp/./joe

最後に以下の行では、FTP を通じて接続してくるあらゆるユーザを、 各自の ~/public_html に閉じ込めます。これによって、FTP が本質的にもっている危険性が、 システムに影響を与える可能性が下がります。

    @	public_html

関連項目
chroot(2), group(5), passwd(5), ftpd(8)