BBS過去ログ

<<トップページへ
■目次


No.174 投稿時間:2004年06月11日(Fri) 14:26 投稿者名:koh URL:
タイトル:SSHサーバー構築(OpenSSH+Chroot) について

はじめまして、webmaster様。
現在、fedoracore2正式版で、自宅サーバ構築をしています
kohと申します。最小限の環境から構築してみたいと思い立ち
いろいろサイト検索しているうちに、こちらに辿り着きました。
説明がとても見やすくわかりやすい内容で参考にさせて頂いて
おります。

さて、本題に入りますがタイトルにあるようにSSHサーバー構築
を行っておりますが、うまくいかず困っております。

■chrootユーザ作成
(1)chrootユーザ環境作成スクリプト作成
こちらのスクリプトを使用して実行してみました。
しかしながら、cp $l ./$lの部分で、
「そのようなファイルやディレクトリは存在しません」
と言われて警告メッセージが表示されてしまいます。
拙い知識で要因を調べてみましたら、一部のディレクトリで
このメッセージを出している事が判りました。
どうやら、シンボリックリンクが張られているディレクトリで
LIBS=`ldd $prog | awk '{ print $3 }'`
の処理結果が数字の羅列になっていました。
これがうまくいかない要因までは切り分けできたのですが
この後、どうすればよいのかわかりません。

お忙しいとは存じますが、アドバイス頂けたら幸いです。
以上


No.175 投稿時間:2004年06月11日(Fri) 16:33 投稿者名:koh URL:
タイトル:Re: SSHサーバー構築(OpenSSH+Chroot) について

追記します。
【出力されたメッセージ】
cp: cannot create regular file `.//usr/kerberos/lib/libkrb5.so.3': そのようなフ
ァイルやディレクトリはありません
cp: cannot create regular file `.//usr/kerberos/lib/libk5crypto.so.3': そのよう
なファイルやディレクトリはありません
cp: cannot create regular file `.//usr/kerberos/lib/libcom_err.so.3': そのような
ファイルやディレクトリはありません
cp: cannot create regular file `.//usr/kerberos/lib/libgssapi_krb5.so.2': そのよ
うなファイルやディレクトリはありません
cp: cannot create regular file `.//usr/kerberos/lib/libkrb5.so.3': そのようなフ
ァイルやディレクトリはありません
cp: cannot create regular file `.//usr/kerberos/lib/libk5crypto.so.3': そのよう
なファイルやディレクトリはありません
cp: cannot create regular file `.//usr/kerberos/lib/libcom_err.so.3': そのような
ファイルやディレクトリはありません
cp: cannot create regular file `.//usr/kerberos/lib/libgssapi_krb5.so.2': そのよ
うなファイルやディレクトリはありません
cp: cannot create regular file `.//usr/kerberos/lib/libkrb5.so.3': そのようなフ
ァイルやディレクトリはありません
cp: cannot create regular file `.//usr/kerberos/lib/libk5crypto.so.3': そのよう
なファイルやディレクトリはありません
cp: cannot create regular file `.//usr/kerberos/lib/libcom_err.so.3': そのような
ファイルやディレクトリはありません
cp: cannot create regular file `.//usr/kerberos/lib/libgssapi_krb5.so.2': そのよ
うなファイルやディレクトリはありません

【echo "*LIBS* `ldd $prog`"の結果】
*LIBS* libtermcap.so.2 => /lib/libtermcap.so.2 (0x40023000)
libdl.so.2 => /lib/libdl.so.2 (0x40027000)
libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
*LIBS* libtermcap.so.2 => /lib/libtermcap.so.2 (0x40023000)
libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
*LIBS* libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
*LIBS* libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
*LIBS* libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
*LIBS* libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
*LIBS* libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
*LIBS* libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
*LIBS* libpopt.so.0 => /usr/lib/libpopt.so.0 (0x40023000)
libresolv.so.2 => /lib/libresolv.so.2 (0x4002b000)
libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
*LIBS* libresolv.so.2 => /lib/libresolv.so.2 (0x40023000)
libutil.so.1 => /lib/libutil.so.1 (0x40035000)
libz.so.1 => /usr/lib/libz.so.1 (0x40038000)
libnsl.so.1 => /lib/libnsl.so.1 (0x40046000)
libcrypto.so.4 => /lib/libcrypto.so.4 (0x4005b000)
libkrb5.so.3 => /usr/kerberos/lib/libkrb5.so.3 (0x4014c000)
libk5crypto.so.3 => /usr/kerberos/lib/libk5crypto.so.3 (0x401ab000)
libcom_err.so.3 => /usr/kerberos/lib/libcom_err.so.3 (0x401bb000)
libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
libgssapi_krb5.so.2 => /usr/kerberos/lib/libgssapi_krb5.so.2 (0x401bd000
)
libdl.so.2 => /lib/libdl.so.2 (0x401d0000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
*LIBS* libresolv.so.2 => /lib/libresolv.so.2 (0x40023000)
libutil.so.1 => /lib/libutil.so.1 (0x40035000)
libz.so.1 => /usr/lib/libz.so.1 (0x40038000)
libnsl.so.1 => /lib/libnsl.so.1 (0x40046000)
libcrypto.so.4 => /lib/libcrypto.so.4 (0x4005b000)
libkrb5.so.3 => /usr/kerberos/lib/libkrb5.so.3 (0x4014c000)
libk5crypto.so.3 => /usr/kerberos/lib/libk5crypto.so.3 (0x401ab000)
libcom_err.so.3 => /usr/kerberos/lib/libcom_err.so.3 (0x401bb000)
libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
libgssapi_krb5.so.2 => /usr/kerberos/lib/libgssapi_krb5.so.2 (0x401bd000
)
libdl.so.2 => /lib/libdl.so.2 (0x401d0000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
*LIBS* libresolv.so.2 => /lib/libresolv.so.2 (0x40023000)
libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
*LIBS* libresolv.so.2 => /lib/libresolv.so.2 (0x40023000)
libutil.so.1 => /lib/libutil.so.1 (0x40035000)
libz.so.1 => /usr/lib/libz.so.1 (0x40038000)
libnsl.so.1 => /lib/libnsl.so.1 (0x40046000)
libcrypto.so.4 => /lib/libcrypto.so.4 (0x4005b000)
libkrb5.so.3 => /usr/kerberos/lib/libkrb5.so.3 (0x4014c000)
libk5crypto.so.3 => /usr/kerberos/lib/libk5crypto.so.3 (0x401ab000)
libcom_err.so.3 => /usr/kerberos/lib/libcom_err.so.3 (0x401bb000)
libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
libgssapi_krb5.so.2 => /usr/kerberos/lib/libgssapi_krb5.so.2 (0x401bd000
)
libdl.so.2 => /lib/libdl.so.2 (0x401d0000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

この結果を見る限り、3番目のフィールドは(0x40000000)になり
cpが異常になるのだと思います。

長くなりました。すみません。
異常


No.182 投稿時間:2004年06月12日(Sat) 01:37 投稿者名:webmaster URL:http://fedorasrv.com/
タイトル:Re^2: SSHサーバー構築(OpenSSH+Chroot) について

koh様、はじめまして。
確かにライブラリのコピーでエラーになりますが、当方では問題なく使えてます。
ただし、koh様の環境とはコピーエラー事象が違います。
当方で確認しているのは、以下の事象です。

まず、コピーするコマンドが使用しているライブラリのフルパスをLIBSに格納する。
LIBS=`ldd $prog | awk '{ print $3 }'`の行
ここで指定している$3は以下の実行結果だと=>の右側になります。
[root@linux root]# ldd /bin/ls
linux-gate.so.1 => (0x00abd000)
librt.so.1 => /lib/tls/librt.so.1 (0x003d6000)
libacl.so.1 => /lib/libacl.so.1 (0x00495000)
libselinux.so.1 => /lib/libselinux.so.1 (0x003c4000)
libc.so.6 => /lib/tls/libc.so.6 (0x00255000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0x003b0000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x0023c000)
libattr.so.1 => /lib/libattr.so.1 (0x004e6000)

従って、librt.so.1なら/lib/tls/librt.so.1をchrootユーザのホームディレクトリにコピーします。
しかし、上記のlinux-gate.so.1の行では=>の右側にフルパス名ではないもの(0x00abd000)が表示されており、(0x00abd000)をコピーしようとしてエラーになっています。

linux-gate.so.1についてはさんざん、検索してみましたが、原因特定にはいたりませんでした。
但し、はじめに記したように、いまのところ問題なく使えてますが、もし、なにか不具合がありましたら、BBSへ書き込み頂けると幸いです。


No.187 投稿時間:2004年06月12日(Sat) 13:19 投稿者名:koh URL:
タイトル:Re^3: SSHサーバー構築(OpenSSH+Chroot) について

webmaseter様、アドバイスありがとうございました。
当方もこのメッセージをとりあえず気にせずに先に進んでみました。鍵作成においては特に問題なく終了しました。
ところが、chrootユーザ確認において、WindowsからSSHサーバーへリモート接続(Tera Term Pro) したところ、以下のようになりました。
【TeraTermでの結果】
-bash-2.05b$ pwd  ←fedoraでログイン後、ホームディレクトリを確認
/home/fedora    !先のようになっている!
-bash-2.05b$ su -  ←rootになれるか確認。。。
Password:      ←恐る恐るパスワードをキーイン
[root@linux root]# ←なれちゃった^^;;;

ということで何がいけないのでしょうか?
あと、fedoraユーザにおいてcdコマンドで/に移動も可能でした。

なお、手順はwebmaster様の手順に基づいて行っております。

何度もすみません。自分でも調べてみようと思います。
以上


No.188 投稿時間:2004年06月12日(Sat) 13:43 投稿者名:webmaster URL:http://fedorasrv.com/
タイトル:Re^4: SSHサーバー構築(OpenSSH+Chroot) について

koh様、こんにちわ。
> 【TeraTermでの結果】
> -bash-2.05b$ pwd  ←fedoraでログイン後、ホームディレクトリを確認
> /home/fedora    !先のようになっている!
TeraTermで直接chrootユーザでログインしましたか?
chrootユーザ以外でログインしてsuでchrootユーザになると上記のようになります。
あと、仮にchrootユーザ以外でログインしてsuでchrootユーザになると下記のようになり、koh様の事象とちょっと異なります。
[root@linux root]# su - linux
-bash-2.05b$ pwd
/home/fedora/./

ご確認ください。


No.192 投稿時間:2004年06月12日(Sat) 14:55 投稿者名:koh URL:
タイトル:Re^5: SSHサーバー構築(OpenSSH+Chroot) について

webmaster様、アドバイスありがとうございます。

> TeraTermで直接chrootユーザでログインしましたか?
> chrootユーザ以外でログインしてsuでchrootユーザになると上記のようになります。

上記の回答ですが、chrootユーザ(fedora)でTeraTermより
ログインしました。

【具体的な手順】
1.TeraTermをスタートメニューから起動
2.TCP/IP ホスト:192.168.1.3
  サービス ・SSH TCPポート#:22
  でOKボタン押下
3.ユーザ名:fedora ←chrootユーザ作成で追加したfedoraユーザ
  パスフレーズ:   ←〃(パスワード)
  ・RSA鍵を使う ←鍵作成で作ったidentity

もう少し、自分で調べてみます。スクリプトがうまくいって
いないのかなぁ?

以上


No.200 投稿時間:2004年06月12日(Sat) 23:23 投稿者名:koh URL:
タイトル:Re^6: SSHサーバー構築(OpenSSH+Chroot) について

webmaster様、こんばんは。
あれから試したことを書きます。
結果はうまくいきました。
ただ、まだ要因が掴めないでいます。

【試してみたこと】
 ・別のユーザを新たにchrootユーザとして作成

 これだけなんですが・・・。同じ事をしたはずなのに
 どうしてだろう?

 気になる点は、パスワードをつけるときにfedoraの場合は
 とりあえずユーザ名=パスワードにしたことで、警告?の
 メッセージが出力されたこと、鍵作成のパスフレーズと
 chrootユーザ作成のパスワードを異なるものにしたことく
 らいかな?

 以上 


No.233 投稿時間:2004年06月14日(Mon) 10:51 投稿者名:koh URL:
タイトル:解決しました

webmaster様、こんにちは。
あれから試行錯誤してなんとか原因もわかりうまくいきました。
原因はchrootユーザ作成時に設定したパスワードと、鍵作成時に設定
したパスフレーズが異なるためでした。
対処としてfedoraユーザをいったん削除した上で、改めてfedoraユーザを
作成し、その際、パスワードとパスフレーズを同じ物に設定した上でchroot
ユーザ確認したところうまくいきました。詳しいことはわかりませんが
解決しましたので先に進みたいと思います。

また、お世話になるかもしれませんがその時はよろしくお願いしますね。

以上


No.236 投稿時間:2004年06月14日(Mon) 13:34 投稿者名:webmaster URL:
タイトル:Re: 解決しました

koh様、こんにちわ。
> 原因はchrootユーザ作成時に設定したパスワードと、鍵作成時に設定
> したパスフレーズが異なるためでした。
当方もchrootユーザのパスワードとパスフレーズは同じものにして確認していましたので、koh様の言われるようにパスワードとパスフレーズを異なるもので確認してみたところ、問題なくchrootであること(ホームディレクトリが/となっていること)を確認できました。

なにか、別の原因のような気がしますが、とりあえずうまくいっているのであればいいかと思いますが、ちなみに、パスフレーズは覚えやすいかどうかは別として、スペース等も含めることができるため、パスワードアタックによるパスワード解読は非常に困難なものにすることができます。当然、パスワードにはスペースは含めません。ただ、あくまでも秘密鍵を入手した前提です。なお、当サイトではおすすめできませんが、秘密鍵のみでパスフレーズなしでログインするということも可能です。



▲このページのトップへ戻る

Copyright© 2004-2005 fallenangels, All rights reserved.
ご自由にリンクしてください(連絡は不要です)