- PR -

SSHでパスワードの入力を省略する方法

投稿者投稿内容
McLaren
ぬし
会議室デビュー日: 2002/01/15
投稿数: 784
お住まい・勤務地: 東京
投稿日時: 2002-11-26 16:20
http://www.laksmi.co.jp/~koki/SSH.html
の内容に基づいて再度作業しました。私の環境に合わせて上のサイトの文章を引用して載せました。

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

マシンAのホスト名は SystemA.domain.com とする。
マシンBのホスト名は SystemA.domain.com とする。
ユーザー名は root であり、両マシンのユーザーである。
両マシン共に sshd が動作している。
SSHで利用するポート番号(一般には22番)が両マシン間で透過できている。

マシンAでの準備

ユーザーはマシンAにログインする。

$ ssh-keygen -t rsa1

このコマンド実行が終了すると ~/.ssh というディレクトリが出来ていた。

この ~/.ssh/identity.pub というファイルをマシンBに持っていく必要があるので、フロッピーに identity.a という名前で保存。


マシンBでの準備

ユーザーはマシンBにログインする。

$ ssh-keygen -t rsa1

このコマンド実行が終了すると ~/.ssh というディレクトリが出来ていた。
この ~/.ssh/identity.pub というファイルをマシンAに持っていく必要があるので、フロッピーに identity.b という名前で保存。


マシンAにマシンBでのユーザー情報を追加する作業

マシンAにログインする。
マシンAの ~/.ssh/authorized_keys に対してマシンBの ~/.ssh/identity.pub の内容を追加する。

$ cat ~/.ssh/identity.b >> ~/.ssh/authorized_keys
$ chmod 600 ~/.ssh/authorized_keys

次にマシンBからの接続にてパスフレーズなしにログインできるように ~/.shosts にマシンBとユーザ名を追加登録する。

$ echo SystemB.domain.com username >> ~/.shosts
$ chmod 600 ~/.shosts


マシンBにマシンAでのユーザー情報を追加する作業

マシンBにログインする。
マシンBの ~/.ssh/authorized_keys に対してマシンAの ~/.ssh/identity.pub の内容を追加する。

$ cat ~/.ssh/identity.a >> ~/.ssh/authorized_keys
$ chmod 600 ~/.ssh/authorized_keys

次にマシンAからの接続にてパスフレーズなしにログインできるように ~/.shosts にマシンAとユーザ名を追加登録する。

$ echo SystemA.domain.com username >> ~/.shosts
$ chmod 600 ~/.shosts



以上で、それぞれのマシンにある ~/.ssh/identity.pub の内容がが相手側のマシンにある ~/.ssh/authorized_keys に追加されたことになる。


$ slogin SystemB.domain.com

$ slogin SystemA.domain.com

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

ここまで作業しましたが、以前パスワードを聞いてきます。
何がまずいのでしょうか、お気づきの点などございましたら、アドバイスお願いいたします。
綾瀬
ぬし
会議室デビュー日: 2002/07/31
投稿数: 393
お住まい・勤務地: どっちも3階
投稿日時: 2002-11-26 17:27
こんにちわ。

ちなみにsshd_configの設定はされているでしょうか。
IgnoreRhosts no
RhostsRSAAuthentication yes
この2つをとりあえず確認してみてください。(ひょっとしたら後者は要らないかも)

あと、rootでのloginを試みているようなので
PermitRootLogin yes
こちらもですかね。

ちなみに
| echo SystemB.domain.com username >> ~/.shosts
となってますが実際にはusernameのところをrootに置き換えていますよね?

私が気になったのはこれくらいですね。お役に立てなくてすみません。
McLaren
ぬし
会議室デビュー日: 2002/01/15
投稿数: 784
お住まい・勤務地: 東京
投稿日時: 2002-11-26 17:40
 ご返答ありがとうございます。ご指摘いただいた部分は全てクリアしております。IgnoreRhosts no
RhostsRSAAuthentication yes
の部分もこのように書き換えてなおかつコメントをはずしております。

また
echo SystemB.domain.com root >> ~/.shosts
として実行しております。。
iakio
会議室デビュー日: 2002/11/28
投稿数: 13
投稿日時: 2002-11-28 16:58
''パスワードを聞いてくる''、というのは、ssh-keygen した時に入力したパスフレーズのことでしょうか?

であれば、ssh-keygen する時にパスフレーズを省略してしまうのがてっとりばやいのではないでしょうか?
McLaren
ぬし
会議室デビュー日: 2002/01/15
投稿数: 784
お住まい・勤務地: 東京
投稿日時: 2002-11-28 17:10
 ご返答ありがとうございます。な・・・なかなか大胆ですね。私はそういうのは大好きですが。。

 そうですね。それはいい案かもしれません。これによってセキュリティー上問題などが起こるようでしたら、ご参考までにお聞きしたいと思いますので引き続きご助言願います。
iakio
会議室デビュー日: 2002/11/28
投稿数: 13
投稿日時: 2002-11-28 17:25
authorized_keys の中で、from="..." としてクライアントを限定したり、command="..."として、その鍵で接続したクライアントが実行できるコマンドを限定することができるので、運用方法次第では実はけっこう安全なんです。

http://www.unixuser.org/~euske/doc/openssh/jman/sshd.html
McLaren
ぬし
会議室デビュー日: 2002/01/15
投稿数: 784
お住まい・勤務地: 東京
投稿日時: 2002-11-28 17:46
なるほど。これは手軽でいいかも知れません。ありがとうございました。
ただ、パスフレーズを設定しても .shosts ファイルでパスフレーズレスでログインできるという情報が出回っておりまして、それが何故できないのかが気持ち悪くて仕方がありません。想像上のうっかりミスのご指摘などでも結構ですので、もしお気づきの点などがございましたら、是非よろしくお願いします。
しょむ
ぬし
会議室デビュー日: 2001/09/06
投稿数: 430
投稿日時: 2002-11-28 21:01
ssh -v すればネゴの様子が見れますから、やってみればいいのではないかと。

スキルアップ/キャリアアップ(JOB@IT)