回答:
まず、秘密鍵ファイルをに移動します~/.ssh
。これは厳密には必要ありませんが、そのようなものの標準的な場所です。
次にを実行しssh-add -K ~/.ssh/privateKey.txt
ます。必要に応じてパスフレーズの入力を求められたら、キーチェーンに追加します。
キーチェーンにパスフレーズを保存する
デフォルトのキーのパスフレーズをキーチェーンに保存するには、ターミナルを開いて実行します。
ssh-add -K
そして、別のキー実行のパスフレーズを保存するには:
ssh-add -K /path/to/private/key/file
パスフレーズの入力を求められたら、それを入力してください。
ssh-addを実行したり、パスフレーズを再度入力したりする必要はありません。
このサイトからの回答:http : //www-uxsup.csx.cam.ac.uk/~aia21/osx/leopard-ssh.html
多くの調査の後、私はこの問題に対する答えを完全に見つけたと思います。まず、確認してくださいssh-add -K ~/.ssh/your_key_here
。これにより、キーチェーンにキーが追加されます。場所によっては、これで十分だと読んだこともありますが、確信が持てませんでした。これもMac固有なので、別のUNIXフレーバーでこれを行う必要がある場合、必ずしもこのオプションはありません。
適切に測定するために、私は~/.ssh/config
ファイルを編集して(作成する必要がある場合があります)、持っているすべてのキーをポイントします。鉱山には次のものがあります。
IdentityFile ~/.ssh/identity
IdentityFile ~/.ssh/id_rsa
IdentityFile ~/.ssh/id_dsa
IdentityFile ~/.ssh/my_other_identity_here
IdentityFile ~/.ssh/yet_another_identity_here
ssh_config のmanページによると、これらは順番に試されます。私がリストした最初の3つのデフォルトのものがそこにある必要があるかどうかはわかりませんが、とにかくそれらを含めました。
-K
mac os xにはフラグがありませんssh-add
-K
フラグがありssh-add
ます。これに加えて、これが選択された答えになるはずです。
/usr/bin/ssh-add
提供され/usr/local/bin/ssh-add
ている自作を使用していることを確認してください-Kオプションを提供していません。
~/.ssh/config
とssh-add
、マシンを再起動した後に毎回コマンドを実行する必要はありません。
macOS 10.12.2以降、このUseKeychain
オプションを使用できます。
もっとここで読むかを調べますman ssh_config
。
UseKeychain
On macOS, specifies whether the system should search for passphrases in the user's keychain
when attempting to use a particular key. When the passphrase is provided by the user, this
option also specifies whether the passphrase should be stored into the keychain once it has
been verified to be correct. The argument must be ``yes'' or ``no''. The default is ``no''.
したがって、次のようにしてください。
echo "UseKeychain yes" >> ~/.ssh/config
sshkeychainは1つの可能性です。以下を使用してmacportsで正常にインストールします:
sudo port install sshkeychain
キーチェーンを使用してパスワードを保存し、ログインセッションの起動時に起動することができます(最初の起動時に、ドックのアイコンで通常の右クリック+「起動時に起動」を使用)。
Appleのsvnはキーチェーンを使用してパスワードを保存しますが、必ずしもmacportsで構築するsvnバイナリではないことに注意してください。
ssh-add
とることはできません-K
。