• ベストアンサー

HP-UXにopensshでパスワード無しログイン

ローカル(A)からリモート(B) にsshでパスワード無しの自動ログインをしようとしています. A:RedHat Linux 9, B:HP-UX(B.11.11) ○現状 ・Aにはrpmでopenssh-clients-3.5p1-11がインストールされています. ・Aにおいて,ssh-keygen -t dsa でパスフレーズ無しの鍵ペアを~/.ssh以下に作成 ・Aで作成した~/.ssh/id_dsa.pubをBの ~/.ssh/ 以下に authorized_keys としてコピー 関連ファイル,ディレクトリのパーミションはA,B共に以下のとおり. ~/.ssh/(700) ~/.ssh/id_dsa(600) ~/.ssh/id_dsa.pub(644) ~/.ssh/authorized_keys(644) Bには以下の手順でopenssl, openssh をインストール後,/usr/local/sbin/sshd でsshdを起動してあります.設定ファイルは変更していません. ・openssl-0.9.6c ./config && make && make test && make install ・openssh-3.7.1p2 ./configure && make && make install ○問題 AからBにsshで接続するとパスワードを聞かれてしまう. Bにopensshをインストールした際,何か,configure オプションや必要なライブラリが不足したりしているのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.6

うちのsshd_configで注釈でない行です。参考にしてみてください。 Windows側(putty)からRedhat9にDSAでパスワードなしでログインできています。 Port 22 Protocol 2 HostKey /etc/ssh/ssh_host_dsa_key SyslogFacility AUTHPRIV RSAAuthentication yes PubkeyAuthentication yes RhostsAuthentication no PasswordAuthentication no PermitEmptyPasswords no KeepAlive yes Subsystem sftp /usr/libexec/openssh/sftp-server

その他の回答 (5)

  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.5

(追加) DSAの場合は authorized_keys2 ですよね?

astronaut
質問者

お礼

すみません,自己解決しちゃいました. sshd -e -d -d -d とかやってログをとってみたところ,ホームディレクトリのパーミションがまずかったことが判明しました. なぜかユーザーディレクトリが777で作成されてます.もう一人の管理者に言っておかなくちゃ. ログをチェックするという基本を身につまされました.どうもお騒がせしました.

astronaut
質問者

補足

皆様,ありがとうございます.#2 ~ #5まとめて補足します. Marionetteさん. > それでは逆なんじゃ? 逆じゃないと思います.普通交換するのは公開鍵だと思いますし,4台のLinux - Linux (つまり6通り)および,B->Aの自動ログインでは,この手順でうまく行っています. ackyさん. > Bの.ssh以下にknown_hostsというファイルがあり、そこにAの情報があるかどうか これって,リモート側に必要なんでしたっけ?初回ログイン時にローカル側に自動作成されるものだと思ってましたけど.一応,B->Aのログインを試したときに,Aの情報が登録されてはいます. > Bの方でauthorized_keysを作成した後にsshdは再起動 うーん,これも不要な気がするけど,一応 kill -HUP pid してみました.結果はN.G. です. Windowsは手近に無いので,今は試せません.PuTTYなるものも初めて聞いたので,そのうち試してみます. xjdさん > PasswordAuthentication no sshd_config を編集後 kill -HUP pid して接続すると, Permission denied (publickey,keyboard-interactive). ということで,一切ログインできなくなりました. このあたりにヒントがありそうですね.やっぱりB側の環境か設定の問題かなぁ. > authorized_keys2 すみません.最初の質問文に書くべきでした.すでにこれは試みています.結果はNG

  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.4

こんにちは。 うちの場合はsshdサーバ側のsshd_configの中で PasswordAuthentication no と指定していますが、関係ないでしょうか?

  • acky
  • ベストアンサー率31% (182/583)
回答No.3

失礼しました、書いてありましたね。 ではBの.ssh以下にknown_hostsというファイルがあり、 そこにAの情報があるかどうかを確認してみて下さい。 とは言ってもこれが原因ではないような。。。 ところでWindowsでPuTTY等を使ってキーを作成してから、 同様の手順で自動ログインできるかどうかは試されましたか? あとBの方でauthorized_keysを作成した後にsshdは再起動 されましたでしょうか? 思いつくまま挙げてみましたが、解決することを祈っています。

回答No.2

自信ないですけど、それでは逆なんじゃ? Bで作ったid_dsa.pubをBの~/.ssh/に authorized_keys としてコピー Bのid_dsaをAに持って行く WinのTeraTerm+TTSSHから Linuxへログインするのにそうしてますけど。 RSA1なんで identityと identity.pubですが。

  • acky
  • ベストアンサー率31% (182/583)
回答No.1

id_dsa.pubを作成する際にパスワードを設定しませんでしたか? もし設定してしまったのなら、再度id_dsa.pubを作成し直してみて下さい。

astronaut
質問者

補足

ありがとうございます.質問文に > パスフレーズ無しの鍵ペアを~/.ssh以下に作成 と書いたとおりです.パスフレーズは設定していません.