Source links
Problem
Sep 26, 2019 You generate an SSH key through macOS by using the Terminal application. Once you upload a valid public SSH key, the Triton Compute Service uses SmartLogin to copy the public key to any new SmartMachine you provision. Run it on your local computer to generate a 2048-bit RSA key pair, which is fine for most uses. Ssh-keygen The utility prompts you to select a location for the keys. By default, the keys are stored in the /.ssh directory with the filenames idrsa for the private key and idrsa.pub for the public key.
As described in detail on https://openradar.appspot.com/27348363, macOS/OS X till Yosemite used to remember SSH keys added by command
ssh-add -K <key>
.Unfortunately this way no longer works. Keys added to the keychain via
ssh-add -K
are not automatically re-added to the ssh-agent after a reboot. As Apple Developer stated:'That’s expected. We re-aligned our behavior with the mainstream OpenSSH in this area.'
Solutions
Solution 1 (recommended)
Apple updated its Technical Notes to indicate that since 10.12.2, macOS includes version 7.3p1 of OpenSSH and its new behaviors.
Mac Generate Ssh Key
In
~/.ssh
create config
file with the following content:Solution 2
After usage of
ssh-add -K <key>
(it's recommended to use absolute path of keys) call the command ssh-add -A
on every startup of macOS.To automate this, add a .plist with the following content to the path
~/Library/LaunchAgents/
:Alternatives
- Create this file with the Lingon app.
- Use
curl
to download the .plist file to the stated path:
Notes
If you have issues with
ssh-add: illegal option -- K
after using the ssh-add -K
command, you may use the full path of the command /usr/bin/ssh-add
.