人気コンテンツ今日: |
Solaris10 FTPログインのルートディレクトリをchrootで設定するSubmitted by sasaki on 月曜, 2008-09-01 15:42.
イントラネットで使っていたとする。ユーザが使うffftpのソフトに/export/home/web/publi_html/を入力してくださいというよりも、/public_html/を入力してくださいという方が楽だし、余計なディレクトリにアクセスされずにすむ。 ということで、ftpログイン時のホームディレクトリよりは上の階層に移動できない設定をする。 使い慣れているProFTPdを使おうとも思ったが、今回はSolarisに最初から入っているFTPサーバを利用することにした。
■chrootしたいユーザを登録する(ftpaccessファイル)ユーザ tanaka kitano sasaki を登録する。 # vi /etc/ftpd/ftpaccess
15行目のコメントアウトを外す # guestuser username ↓ guestuser tanaka カンマで区切った、guestuser tanaka,kitano,sasaki というかたちでは有効にならない。一行に1ユーザを登録する。
■ftpログインして、lsコマンドが使えるようにする(ftpconfigコマンド)ftpログインして、lsコマンドを発行しても一覧表示されない。 ログインディレクトリにlsコマンドを置いておく必要がある。 (ftpconfig実行前) # ls -l /export/home/tanaka /usr/sbin/ftpconfig コマンドを実行して、環境を整える。 # ftpconfig -d /export/home/tanaka (ftpconfig実行後) # ls -l /export/home/tanaka dev, etc, lib, pub, usrディレクトリが作成される。
■ftpログイン直後、ディレクトリを移動する(/etc/passwd)
/etc/passwdを編集する。 tanaka:x:555804:875::/export/home/tanaka/./public_html/:/bin/sh
■ftpログインして、lsコマンドが使えるようにする(/etc/shells)/etc/shellsを新規ファイルとして作成する。 一行ごとにシェルのパスを記述する。 /bin/trueも記述する。 /sbin/sh
■ドットファイルをアップロードできるようにする.htaccessをアップロードしようとすると、許可されていないファイル名なのでアップできない。 550 .htaccess: Permission denied on server. (Filename (deny)) このようなエラーメッセージが表示され。
もともと、chrootの目的が、よく知らない他人様にFTPを利用させるときに使うことが多い。ということで、その配慮として初期設定がそうなっている。今回は、社内のイントラネットで利用するので.htaccessファイルをアップロードできないのは困るので変更する。 ftpaccessファイルをこのように変更する。 /etc/ftpd/ftpaccess の43行目をコメントアウトして無効にする。 path-filter guest,anonymous /etc/ftpd/filename.msg ^[[:alnum:]._-]*$ ^[.-] ↓ # path-filter guest,anonymous /etc/ftpd/filename.msg ^[[:alnum:]._-]*$ ^[.-]
参考サイト
■参考サイトFTPサーバーのログインの設定 http://docs.sun.com/app/docs/doc/816-3965/6ma7896jg?a=view#wuftp-18-a このページの/etc/shellsをコピーしたものが上のリスト。/bin/bashが抜けていたので足した。 きちせのさいと http://www.kichise.com/modules/pico/10/solaris10_ftpd_chroot.html Solaris10 FTP管理 http://infoking.hp.infoseek.co.jp/developer/linux/solaris/ftp.html
|
Solarisamazon広告英語お勧め教材! 英語の学校でも使っているのですが、1つのストーリーを3分で読めて、内容も面白く、もっと早く出会いたかった本です。 Apple好きで英語も勉強したいならこの一冊! ブログパーツ |