ESC

vsftpdの設定(またしてもI/OエラーでHDD障害)。

FTPのログ見たときに気づくべきだったんだけど、気づかなかった・・・orz。
サーバから遠ざかっている証拠、っていいわけにしておきたい。


てなわけで、またしてもサーバがお亡くなりになりました。
レンタルサーバ会社に新しいサーバを用意してもらったのはいいんだけど、FTPのパッケージが、いつも使っているproftpから、勝手にvsftpに変えられてしまった。
一応文句は言ってみたものの、なんだかんだ言って、proftpにはできないと言い張る。
言い合ってる時間も無駄なので、仕方なく自分でググって対応することに。
楽しいのは楽しいんだけど、ホントは別件で忙しいからそんなヒマないのにさ(-з-)。
でも、やっぱり楽しい。


指定した内容は次の通り

  • 指定したユーザのみFTPにログイン可

userlist_enable=YES
userlist_deny=NO

これ、両方必要。
で、/etc/vsftpd.user_listに、ログインを許可するユーザを記載。

chroot_list_enable=YES←下の※参照
chroot_local_user=NO←これが必要
chroot_list_file=/etc/vsftpd.chroot_list←自分のホームディレクトリより上に行かせたくないユーザを記載したファイル

※ここでややこしいのが、「chroot_list_enable=YES」
chrootさせんのかよっ!?って思ったら、その実、ここでいうrootは、各ユーザのroot、ということだそうな。
ややこしっ!!
これで、FTPクライアントソフトのパス表示のところには「/」しか出てこなくなる。
上に行かせないだけなら、「chroot_list_enable=NO」にすれば良かったんだっけな?
でもそれだと、パス表示は、ルートからのフルパスになる(/home/usenameとか)。


あと、/etc/pam.d以下に次の内容を書いたftpというファイルがないと認証が行えないらしい。

auth required pam_pwdb.so shadow nullok
account required pam_pwdb.so
password required pam_pwdb.so shadow nullok use_authtok
session required pam_pwdb.so

今回、レンタルサーバ会社がパッケージをインストールしたのに/etc/pam.dの下にftp、ないでやんの。
パッケージインストールしたらあるハズなのに!!


あと、それぞれユーザのパスワード(以前と同じものでも)passwdコマンドで登録し直して
確認するときは、FFFTPの再起動が必要だった。(クライアント側のソフトはFFFTPだった)


参考URL

  1. http://www.aritia.org/hizumi/dsl/page_23.htm
  2. http://vicsfactory.com/vsftp.htm
  3. http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=19987&forum=10&6
  4. http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=10457&forum=10&0


chrootがややこしかった・・・。
でも楽しかった。