新規記事投稿
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mvg.biglobe.ne.jp>
Subject: Re: FTPのアクセス制限?
Date: 1999/01/26 02:35:32
Reference: mesh.program/00585
1月19日に、みさっぺさんは書きました。
>FTPで自分のアカウントのホームディレクトリー以外を
>見られないように制限するにはどのような設定が必要ですか?
>
>たとえば、ホームページのアップロード時に
>自分のホームディレクトリだけをアクセス可能にする方法です
ftpdの種類によりますが、アカウントに応じてchrootをかけるような機構を
用いれば良いです。
>環境はSunのSPARC station 20 で
>www、メール、anonymous FTP 各サーバーを
>テストしています
肝心のftpdの種類とヴァージョンが書いていませんが、現在一番一般的に使われている、
wu-ftpdの2.4以降を使っているものとします。その場合、ftpaccessでguestgroupを
設定すると、そのグループに属するアカウントはguestアカウントとして扱われます。
guestアカウントは、USER、PASSによる認証が済むと、指定のディレクトリに
chrootされると共に、それ以上のUSER、PASSの発効が禁止されます。
ftpaccessでの制限もreal、anonymousと独立に、guestユーザに対する制限が
出来ます。
例えば、user1、user2と言うguestユーザを作る場合、まずは /etc/passwd で、
user1:パスワード:10:100:guest ftp user1:/home/guest/./user1:/bin/sh
user2:パスワード:11:100:guest ftp user2:/home/guest/./user2:/bin/sh
の様なエントリーを作ります。ここでユーザホームは /home/guest/./user1 の様に
'/./' で区切られています。telnet ログインの時はそのまま使われますが、
ftpログインの場合、まず前半分(ここでは /home/guest)にchrootされてから
後ろ半分(ここでは /user1)にcdされます。
ここの例ではゲストユーザに共通の/home/guestにchrootしていますが、各ユーザの
ホームディレクトリにchrootさせたいなら、/home/guest/user1/./ の様に
なりますね。
次に /etc/group ファイルで、この user1、user2のグループを特定のグループ、例えば
ここでは ftp と言うグループにします。
ftp:*:100:user1,user2
そして、ftpaccess で
guestgroup ftp
な設定をすればおしまいです。
もちろん、chroot していますから、anonymous ftp の設定と同じく、
chroot したディレクトリの下に bin、etc、lib 等を作って必要なファイル類を
ハードリンクかコピーしておかなければなりません。
# 良く分からなかったら、wu-ftpのマニュアル辺りを見て下さい。