.\" $NetBSD: ftpusers.5,v 1.13 2001/12/01 16:24:24 wiz Exp $ .\" .\" Copyright (c) 1997-2001 The NetBSD Foundation, Inc. .\" All rights reserved. .\" .\" This code is derived from software contributed to The NetBSD Foundation .\" by Luke Mewburn. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the NetBSD .\" Foundation, Inc. and its contributors. .\" 4. Neither the name of The NetBSD Foundation nor the names of its .\" contributors may be used to endorse or promote products derived .\" from this software without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS .\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED .\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR .\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS .\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR .\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF .\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS .\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN .\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" .\" $FreeBSD$ .Dd July 17, 2000 .Dt FTPUSERS 5 .Os .Sh 名称 .Nm ftpusers , .Nm ftpchroot .Nd .Xr ftpd 8 アクセス制御ファイル .Sh 解説 どのユーザがログインできるかを .Nm ファイルに定義することで、 .Xr ftpd 8 に対するユーザのアクセスを制御できます。 .Pp .Nm ファイルが存在しない場合、すべてのユーザがアクセスできなくなります。 .Pp .Dq \e はエスケープ文字です。つまり、コメント文字の意味をエスケープする ために用いることができ、またある行の最後にこの文字がある場合、 設定ディレクティブが複数行にまたぐようになります。 .Dq # はコメント文字であり、この文字から行末までの文字はすべて無視 されます (ただし、この文字がエスケープ文字によってエスケープ されている場合は除きます)。 .Pp 各行の文法は次の通りです: .Dl userglob[:groupglob][@host] [directive [class]] .Pp これらの要素は次の通りです: .Bl -tag -width "groupglob" -offset indent .It Sy userglob .Xr fnmatch 3 のグロブマッチング を用い、ユーザ名に対してマッチがとられます (例えば .Sq f* ) 。 .It Sy groupglob .Xr fnmatch 3 のグロブマッチング を用い、ユーザの所属するすべてのグループに対してマッチがとられます。 (例えば .Sq *src ) 。 .It Sy host リモートホストのアドレス に対してマッチする CIDR アドレス ( .Xr inet_net_pton 3 を参照) (例えば .Sq 1.2.3.4/24 ) もしくは リモートホスト名 に対してマッチがとられる .Xr fnmatch 3 グロブ (例えば .Sq *.netbsd.org ) です。 .It Sy directive これが .Dq allow もしくは .Dq yes である場合、指定のユーザはアクセス許可されます。 .Dq deny もしくは .Dq no である場合、あるいは .Sy directive が与えられていない場合には、指定のユーザはアクセス拒否されます。 .It Sy class .Xr ftpd.conf 5 が用いるクラスを定義するものです。 .El .Pp .Sy class が定義されていない場合には、次のいずれか 1 つにデフォルト 設定されます: .Bl -tag -width "chroot" -offset indent .It Sy chroot ユーザにマッチするものが .Sx /etc/ftpchroot ファイル内に存在する場合。 .It Sy guest ユーザ名が .Dq anonymous か .Sq ftp のいずれかである場合。 .It Sy real 先の 2 つのどちらでもない場合。 .El .Pp ひとたびマッチに成功すると、それ以上の比較は行いません。 マッチするものが見つからない場合は、そのユーザはアクセスを 許可されます。 この文法は以前との互換性を保つものです。 .Pp ユーザが guest でのログインを要求してきた場合、 .Xr ftpd 8 サーバは .Dq anonymous と .Dq ftp のいずれでもアクセスできることを確認します。 そのため、デフォルトですべてのユーザを拒否している場合、 guest でのログインを可能にするために .Pa /etc/ftpusers ファイルに .Dq "anonymous allow" と .Dq "ftp allow" という行を追加する必要があります。 .Ss /etc/ftpchroot .Pa /etc/ftpchroot ファイルは、セッションのルートディレクトリを .Xr ftpd.conf 5 の .Sy chroot ディレクティブ (設定されていれば) で指定されているディレクトリ もしくはユーザのホームディレクトリに ( .Xr chroot 2 を使って) 変更するユーザが誰であるのかを決定するのに使われます。 このファイルが存在しない場合、ルートディレクトリの変更は行われません。 .Pp このファイルの文法は .Nm と似ていますが、 .Sy class 引数が無視される点が違います。 明確にマッチするものが存在する場合、セッションのルートディレクトリが 変更されます。いったんマッチが成功するとそれ以上の比較は行いません。 この文法は以前との互換性を保つものです。 .Sh 関連ファイル .Bl -tag -width /usr/share/examples/ftpd/ftpusers -compact .It Pa /etc/ftpchroot FTP セッションでのルートディレクトリを .Xr chroot 2 を用いて変更する一般ユーザのリストです。 .It Pa /etc/ftpusers このファイルです。 .It Pa /usr/share/examples/ftpd/ftpusers .Nm のサンプルファイルです。 .El .Sh 関連項目 .Xr fnmatch 3 , .Xr inet_net_pton 3 , .Xr ftpd.conf 5 , .Xr ftpd 8