バッチ処理で使いたい Hostbased認証が全然うまくいかなった件

Open ssh 2013

サーバ間でファイルのやり取りをする際など、色々な方法ありますがSCPで送りたかったりする際Hostbased認証が有用ですな。
とかいって、今年の夏に初めて知ったのですが。

とりあえずサーバに秘密鍵置いておかなくてすむっていう。
けどこの設定は前に人に教えてもらって一度しかやった事がなく、久しぶりに挑戦したら盛大にハマってしまったのでエントリ。

何度やれどもやれども。。

Permission denied (publickey,gssapi-with-mic,hostbased).
と出る。このメッセージが出るのが当たり前すぎて最後にログインできて違うメッセージ出たときは(シーンとしたオフィスで)「あ!」と声を出してしまった。

デバッグモードの -vvv をsshコマンドに追加して実行したりしたけど、デバッグログがクッソ出まくるので「んーー。。w」
っていう感じ。

まぁ、検索したらいろいろ出てくるので他の人のサイト参考にしつつポロポロやってたのだが、そもそもSSHの仕組みを良くわかってなかったっていう事もあり全然うまくいかず。

最終的に、このサイトの6.6.の項目を読んだらなんとかなった。

http://www.unixuser.org/~euske/doc/openssh/book/chap6.html#hostbased-authentication

マジで感謝感激です。
本当に分かりやすくて秀逸すぎる。 ありがとうございますって書いた人に会って頭下げたいレベル。

ちなみに、この中でサーバ側のssh_known_hostsを作成する箇所があるが、

server# ( echo -n '55.66.77.88 '; cat ssh_host_rsa_key.pub.client ) >> /etc/ssh/ssh_known_hosts

っていう箇所で一回つまづいた。

前にも後にも、クライアント側のホスト公開鍵を~~ っていう話が出ているのだけども上のコマンドをサーバ側で実施する際一体ssh_host_rsa_key.pub.client ってどれだ? と頭を抱えていた。
結果的に、クライアント側の(CentOSの場合は)
/etc/ssh/ssh_host_rsa_key.pub
だったっていう事が分かり。。orz
とりあえず、一回クライアント側のホスト公開鍵をサーバにscpか何かで持っていくか、 まぁターミナル2個開いてエディタ上でコピーしてもよさそう。それに気が付かなかったので、サーバー側のホスト公開鍵を何故か登録してしまったり、クライアント側の自分の.sshディレクトリに有る公開鍵を登録してしまったりと。。

さて、これで晴れてサーバー同士が繋がったので今からゴリゴリcronを追加していこうと思う。

カレーライス食べたい。 終わり。

2013-11-02 | Posted in サーバー小ネタ(Linux)No Comments » 


関連記事

Comment





Comment



*