FreeBSDでrsync rsshで chroot設定を行うと下記のエラーが出ます。


rssh_chroot_helper: wordexp() bad syntax

下記ページを参考にしましたが、
http://www.mail-archive.com/freebsd-users-jp@jp.freebsd.org/msg00309.html

/bin/shとそのライブラリは既にchrootディレクトリにコピー済みです。
我慢できず/lib と /usr/libのライブラリを全てコピーしてもダメでした。
ちなみにchrootしなければ正常に動作します。

原因分かる方、教えて下さい。

以下chroot配下

/bin/sh
/lib/全てのライブラリをコピー
/etc/passwd
/etc/nsswitch.conf
/usr/bin/scp
/usr/libexec/openssh
/usr/local/bin/rssh
/usr/local/libexec/openssh
/usr/local/libexec/rssh_chroot_helper
/usr/lib/全てのライブラリをコピー




回答の条件
  • 1人3回まで
  • 登録:
  • 終了:2010/07/04 23:58:37
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:kick_m No.1

回答回数1372ベストアンサー獲得回数54

なにか妙なことをやりすぎている。基本からやりなおし。http://www

id:sifty77

分からないなら答えないで下さい。

2010/07/02 09:46:56
id:berero No.2

回答回数1ベストアンサー獲得回数0

ポイント70pt

うーん難しいですね。rssh_chroot_helper: wordexp() bad syntaxだけでは分からないですね。

mkchroot.shの内容はどうなっていますか?

ktrace -i /usr/local/libexec/rssh_chroot_helperで調査した結果が知りたいです。

以下、参考までに。

http://ameblo.jp/teteig/entry-10189953007.html

id:sifty77

情報が少なくて申し訳ありません。

はてなの行数制限にひっかかるもので・・

以下がmkchrootで編集した箇所です。

これに加え、下記作業も行いました。

mkdir /chroot/bin

cp /bin/sh /chroot/bin

※lddで依存ライブラリ確認

cp /lib/libedit.so.7 /usr/home/sync/lib/

cp /lib/libncurses.so.8 /usr/home/sync/lib/

cp /lib/libc.so.7 /usr/home/sync/lib/

mkchroot

-----------------------------------------------------------------------------------

99行目 削除

sftp_server_path="/usr/libexec/openssh/sftp-server"

100行目 パス修正

rssh_path="/usr/bin/rssh"

rssh_path="/usr/local/bin/rssh"

101行目 パス修正

chroot_helper_path="/usr/libexec/rssh_chroot_helper"

chroot_helper_path="/usr/local/libexec/rssh_chroot_helper"


105行目あたり 追加と削除

for jail_path in `dirname "$jail_dir$scp_path"` `dirname "$jail_dir$sftp_server_path"` `dirname "$jail_dir$chroot_helper_path"`; do

for jail_path in `dirname "$jail_dir$scp_path"` `dirname "$jail_dir$rssh_path"` `dirname "$jail_dir$chroot_helper_path"`; do

122行目あたり 削除

cp "$sftp_server_path" "$jail_dir$sftp_server_path" || \

fail "Error copying $sftp_server_path. Exiting." 5

126行目あたり 削除

for prog in $scp_path $sftp_server_path $rssh_path $chroot_helper_path; do

for prog in $scp_path $rssh_path $chroot_helper_path; do

-----------------------------------------------------------------------------------

2010/07/02 14:26:12
  • id:sifty77
    なんとか自己解決しました。
    結局rsshは使いませんでした。
    オリジナルshellを作成するはめに
    なりましたが...

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません