SSHでリモートサーバーにログインするたびに、OS XキーチェーンはSSHパスフレーズを記憶するように促します。パスフレーズを入力し、チェックボックスをオンにして記憶します。その後、サーバーに接続しますが、次にもう一度プロンプトが表示されるなど...
サーバーにsshするための秘密キーがあり、接続が機能します。私のホストファイルには次のものがあります:
Host myhost
HostName xxx.xxx.xxx.xx
GlobalKnownHostsFile ~/.ssh/known_hosts
port 22
User myuser
IdentityFile ~/.ssh/mykey_dsa
IdentitiesOnly yes
..その後、入力します ssh myhost
これは最近の問題であるため、キーチェーンに問題があると思われますか?明確にするために、キーチェーンに毎回「追加」して接続することができますが、これは目的に反します。dsaキーのアクセス許可が600または-rw-------@
ディスクのアクセス許可を修復しようとしましたが、うまくいきませんでした。私のGoogle-fooも失敗し、何の役にも立ちませんでした。したがって、これがOS X /キーチェーンの問題なのか、SSHの問題なのかわかりません。
更新: ssh -vvv myhostを試すと、問題が明らかになったと思います。
debug1: Trying private key: /Users/danny/.ssh/mykey_dsa
debug1: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
debug3: Not a RSA1 key file /Users/danny/.ssh/mykey_dsa.
debug1: read PEM private key done: type DSA
Identity added: /Users/danny/.ssh/mykey_dsa (/Users/danny/.ssh/mykey_dsa)
debug1: read PEM private key done: type DSA
debug3: sign_and_send_pubkey
debug2: we sent a publickey packet, wait for reply
debug1: Authentication succeeded (publickey).
...その後、接続します。この問題の核心は次のとおりだと思います。
PEM_read_PrivateKey failed
Update 2: 10.6.8の別のMacでも同じキーと設定を試してみたところ、すべてがうまく機能したので、これはMac固有の質問であり、パーミッションキーチェーンの問題であると思われます。
Update 3 また、Mountain Lion(10.8.1)のクリーンインストールを試みましたが、まったく同じ問題はありませんでした。
おそらく関連: https : //discussions.apple.com/thread/3518441? start=0 & tstart =0
更新4 これが答えです
PEM_read_PrivateKey failed
なぜかはわからない。キーチェーンに追加されてそこにとどまる他のすべての人と同じように、このキーを生成した。
ssh-add -K
私のためにそれを固定
ssh -v[v] myserver
、エラーに関する詳細な情報を取得します。