jailkitで制限ユーザーを作る(?)
勉強の一環として父親のホームページをさくらVPS上にphpでリプレイスした。
コンピューター関係のことをほとんど分からない人なので、
下手なところをいじられないように触れるディレクトリなどを制限する。
jailkit
インストールする
なんとなくtmpフォルダで実行しています。
# wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
# rpm -ivh rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
# yum install jailkit
jail用の安全な親ディレクトリを用意
# mkdir /jail
# jk_init -v /home/jail basicshell ssh scp sftp jk_lsh
ユーザー作成
# useradd username
# passwd username
鍵認証の設定
鍵の生成
作業用ユーザーでログイン後、公開鍵を保管するディレクトリを作成し、移動。
$ cd /home/username
$ mkdir .ssh/
$ cd .ssh/
キーを生成する。
$ ssh-keygen -t rsa
Enter file in which to save the key (/home/username/.ssh/id_rsa): (何も入力しないでENTER押下)
Enter passphrase (empty for no passphrase): (何も入力しないでENTER押下)
Enter same passphrase again: (何も入力しないでENTER押下)
公開鍵id_rsa.pub
のファイル名をauthorized_keys
へ変更する。
$ mv id_rsa.pub authorized_keys
.ssh
ディレクトリとauthorized_keys
の権限を変更する。
$ cd /home/username/
$ chmod 700 .ssh/
$ chmod 600 .ssh/authorized_keys
秘密鍵をダウンロード
WinSCPなどを使いVPS上からid_rsa
をダウンロード。
Puttyで変換してログイン
ダウンロードしたid_rsa
はそのままではPuttyでは使用できないため、
PuTTYごった煮版で同梱されているPuTTYgenを使用し、Putty用の鍵に変更する。
- PuTTYgenで既存の秘密鍵の
読込
-
鍵のパスフレーズ
及びその確認を入力 秘密鍵の保存
-
接続
>SSH
>認証
>認証のためのプライベートキーファイル
を読み込み - 保存し接続
- 2.で入力した
鍵のパスフレーズ
を使用し認証、ログインできることを確認する
再びjailkit
sftp接続のみ出来るようにjailにユーザーを閉じ込める。
# jk_jailuser -j /jail/only_sftp/ username
sftp できるように設定
# vim /turbo/jail/only_sftp/etc/jailkit/jk_lsh.ini
上記ファイルを開き、以下の様に追記する。
[username]
paths= /usr/bin, /usr/libexec/
executables=/usr/bin/scp, /usr/libexec/openssh/sftp-server
WinSCPなどで秘密鍵を用い接続できることを確認したら成功。
特定のフォルダにリンクを貼りアクセスする
シンボリックリンクとは少し違うらしい?
仕組みはまだ理解していませんが、希望の機能の実現は出来ました。
リンクしたいディレクトリ:/var/www/html
jailの中でアクセスするリンク:/jail/only_sftp/home/username/html
# chmod -R 777 /var/www/html
# mkdir /jail/only_sftp/home/username/html
# chown username /jail/only_sftp/home/username/html
# mount --bind /var/www/html /jail/only_sftp/home/username/html
引っかかった箇所
-
jk_lsh.ini
のpaths
において、/usr/bin, /usr/lib/
と書いていたが、動作せず。
- 意味を理解はしていないが
/usr/bin, /usr/libexec/
とすることで解消。
jk_lsh.ini
のpaths
において、/usr/bin, /usr/lib/
と書いていたが、動作せず。
- 意味を理解はしていないが
/usr/bin, /usr/libexec/
とすることで解消。
Author And Source
この問題について(jailkitで制限ユーザーを作る(?)), 我々は、より多くの情報をここで見つけました https://qiita.com/piotzkhider/items/d33dbf0d42a9a601b65f著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .