このスレッドは未解決です(解決したらこちらで解決済にしてください)
<<戻る

SSH+chroot 鍵方式について このメッセージに返信する
日時: 2009/08/08 18:16
名前: erick
URL:
連続での投稿ですみません...こちらのサイトをみながらSSH+chroot環境で構築しています。
アーキテクチャはx84_64でchroot_useraddスクリプトを作成し、chroot一般ユーザをテスト用に作成。
その際エラーが出てしまったので、http://centossrv.com/bbshtml/webpatio/891.shtml同じエラーが出た方の過去の投稿を参考にしエラーは解消しましたが...。

鍵方式でchroot設定の一般ユーザでログインしても認証は上手く行ったみたいですけれど、ログインしてもすぐ接続が切れてログイン状態の画面が消えてしまいます。
似た様な現象としまして、
http://centossrv.com/bbshtml/webpatio/1154.shtmlを参考に見てみたのですが。
/var/log/secureログを見ても
Aug 8 17:49:43 www sshd[22761]: Accepted publickey for testuser from 192.168.11.5 port 51200 ssh2
とアクセス自体は許可されています。
管理者ユーザ自体は、そのままログインした状態できちんとコマンドも打てる状態なのですが、chroot-useraddで作成されたユーザのみそのような現象になってしまいます。
何か足りないファイルでもあるのでしょうか?
記事編集 編集
Re: SSH+chroot 鍵方式について このメッセージに返信する
日時: 2009/08/09 17:33
名前: stranger
URL: http://ja.528p.com/
レスがつきませんね

testuserのログインshellがbashになっていること
一つ一つ必要なライブラリを確認するしかないかも
(最初にスクリプトを作った人も一つ一つ確認したと思う)

例 x86_32環境のbashに必要なライブラリ
linux-gate.so.1は静的に組み込まれているのでコピーしなくてよい

# ldd /bin/bash
linux-gate.so.1 => (0x00457000)
libtermcap.so.2 => /lib/libtermcap.so.2 (0x04a37000)
libdl.so.2 => /lib/libdl.so.2 (0x0097e000)
libc.so.6 => /lib/libc.so.6 (0x0080f000)
/lib/ld-linux.so.2 (0x007ec000)
記事編集 編集
Re: SSH+chroot 鍵方式について このメッセージに返信する
日時: 2009/08/10 02:56
名前: erick
URL:
>レスがつきませんね
>
>testuserのログインshellがbashになっていること
>一つ一つ必要なライブラリを確認するしかないかも
>(最初にスクリプトを作った人も一つ一つ確認したと思う)
>
>例 x86_32環境のbashに必要なライブラリ
>linux-gate.so.1は静的に組み込まれているのでコピーしなくてよい
>
># ldd /bin/bash
>linux-gate.so.1 => (0x00457000)
>libtermcap.so.2 => /lib/libtermcap.so.2 (0x04a37000)
>libdl.so.2 => /lib/libdl.so.2 (0x0097e000)
>libc.so.6 => /lib/libc.so.6 (0x0080f000)
>/lib/ld-linux.so.2 (0x007ec000)

stranger様、いつもレスありがとうございますm(_ _)m
大変すみません、一つファイル見落としがありました。
cp /lib/libnss_compat.so.2 lib/
cp /lib/libnsl.so.1 lib/
cp /lib/libnss_files.so.2 lib/
cp /lib/ld-linux.so.2 ./lib/
cp /lib/libc.so.6 lib/
cp /lib/libm.so.6 lib/
cp /lib/libpthread.so.0 lib/
cp /lib/librt.so.1 lib/
cp /lib/libthread_db.so.1 lib/

を、そのまま/libフォルダの物をlib64/フォルダへコピーするようにしていました...。

cp /lib/libnss_compat.so.2 lib64/
cp /lib/libnsl.so.1 lib64/
cp /lib/libnss_files.so.2 lib64/
cp /lib/ld-linux.so.2 ./lib64/
cp /lib/libc.so.6 lib64/
cp /lib/libm.so.6 lib64/
cp /lib/libpthread.so.0 lib64/
cp /lib/librt.so.1 lib64/
cp /lib/libthread_db.so.1 lib64/

/libと同じく/lib64の中身に同じ物が全部あったのですが、ld-linux-x86-64.so.2だけ/lib64にフォルダにしかなかったので、これをコピーするようスクリプトを書き換えたらしっかり動きました...(すみません)
一応、同じ現象に陥った人の為にログを残しておきます。
cp /lib64/libnss_compat.so.2 lib64/
cp /lib64/libnsl.so.1 lib64/
cp /lib64/libnss_files.so.2 lib64/
cp /lib64/ld-linux-x86-64.so.2 ./lib64/
cp /lib64/libc.so.6 lib64/
cp /lib64/libm.so.6 lib64/
cp /lib64/libpthread.so.0 lib64/
cp /lib64/librt.so.1 lib64/
cp /lib64/libthread_db.so.1 lib64/
とx86_64用に書き換えればchroot-useradd作成ユーザを鍵方式アクセスできました!!
stranger様に教わったbash用ライブラリも後々使う事を考えて入れておこうと思います。
ありがとうございましたm(_ _)m
記事編集 編集
件名※必須
名前※必須
URL
任意のパスワード (投稿後のコメント修正・削除時に使用)
画像認証※必須 投稿キー(画像で表示されている数字を入力)
コメント※必須

※質問を投稿後に自己解決された場合は、原因と行った対処を具体的に書き込み下さるよう、よろしくお願いします。

- WEB PATIO -