Mac(Mac OS Sierra 10.12.6)でssh設定をセットアップして、sshキーのパスフレーズをキーチェーンに保存するようにしています。以前私はそれをすることができました
ssh-add -K ~/.ssh/id_rsa
しかし最近、これはもう機能しないようです。 この記事 に従って、Mac OS> 10.12.2のssh構成の動作に変更があるようです。この問題を修正する推奨方法は、UseKeychain yes
をssh構成に追加することです。だからここに私の.ssh/config
セクションHost *
があります:
Host *
Port 22
ServerAliveInterval 60
ForwardAgent yes
IdentityFile ~/.ssh/id_rsa
AddKeysToAgent yes
UseKeychain yes
外部ホストにSSH接続しようとすると、次のエラーメッセージが表示されます。
$ ssh my-Host
/Users/USER/.ssh/config: line 16: Bad configuration option: usekeychain
これがなぜ起こるのか、どうすれば修正できるのか?ありがとう!
別のオプション、つまり以下のようなIgnoreUnknown
を指定してみてください
IgnoreUnknown UseKeychain
UseKeychain yes
これについての詳細情報を見つけることができます こちら 。
受け入れられた答えは助けになりましたが、悪い点が複数あったため、問題を完全には解決しませんでした。この問題が発生した場合の表示例を次に示します。
Host *
IgnoreUnknown AddKeysToAgent,UseKeychain
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/id_rsa
大文字です-K小文字で入力してください-k !!
ssh-add -k ~/.ssh/id_rsa
Enter passphrase for /Users/tom/.ssh/id_rsa:
Identity added: /Users/tom/.ssh/id_rsa (/Users/tom/.ssh/id_rsa)
その行をコメントアウトしただけで、scp/sshが再び機能し始めました。
Ssh-addの代わりに「open .ssh/id_rsa」と入力してキーチェーンに追加します
UseKeychainオプションは私の設定では決して悪いとは思われませんでしたが、最初は、他のホストの前に、次のものがあります
Host *
UseKeychain yes
Host (...)