rsshのインストール

普通のssh/sftpだと、shellにアクセスできてしまうので、
rsshを使って、chrooted jail+sftp環境を構築。


// 以前、ここに書いたと思うんだけども、
// 保存していなかったらしい。焦った。


1. パッケージ入手
http://www.pizzashack.org/rssh/
から、tar ballか srpm を入手。


2. srpmのリビルド
$ rpmbuild --rebuild rssh-x.x.x.src.rpm


3. インストール
$ cd /usr/src/redhat/RPMS/x86_64
$ rpm -Uvh rssh-x.x.x.x86_64.rpm


4. chrootディレクトリを作成
$ mkdir /home/bastille


5. ユーザ作成
$ useradd --home /home/bastille/pub/kuma --shell /usr/bin/rssh kuma


6. mkchroot.shの実行
$ sh /usr/share/doc/rssh-x.x.x/mkchroot.sh /home/bastille


※ rsshとrssh_chroot_helperのパス、共有ライブラリの有無を確認
※ /home/bastille/etc/passwdの利用しないユーザを削除
※ ユーザを追加する場合、5.の後、chroot内の/etc/passwdにも追加


7. rssh_chroot_helperにsticky bitを付与
$ chmod u+s /usr/libexec/rssh_chroot_helper


8. chrootディレクトリにnullデバイス作成
$ mknod -m 666 /home/bastille/dev/null c 1 3


9. rsshを/etc/shellsに追加
$ echo "/usr/bin/rssh" >> /etc/shells


10. 設定ファイルの編集
$ vi /etc/rssh.conf


allowsftp
umask = 022
chrootpath = /home/bastille
user=kuma:011:00010:"/home/bastille"


※ユーザ名:umask:に続けて、アクセスビット、
"rsync, rdist, cvs, sftp, and scp" 、1が許可で0は不許可。
続けて、ユーザ毎のchrootパス。


11. sftpクライアントから接続
$ sftp kuma@xxx.xxx.xxx.xxx
で、繋がればOK.


※ 念のため、sshが接続できないことを確認


、以上
(間違っていたら、ごめんなさい)


                                                                        • -

はまった場合は、


$ /etc/init.d/syslogd stop
$ syslogd -a /home/vastille/dev/log
として、/var/log/messages,secures等をチェック。


もしくは、


sftpに-vオプションを追加して、ログをみる。