On the machine that you want to use to ssh to the other OS X machine do this:
– Create id_rsa key.
when prompted use the suggested filename, and (I strongly recommend to select a passphrase)
– Copy public key from ~/.ssh/id_rsa.pub to your server location (in the example below 10.20.30.40)
ssh-copy-id -i ~/.ssh/id_rsa.pub firstname.lastname@example.org
– If you didn’t specify a passphrase, at this point you will be able to ssh to your server.
If you add a passphrase
You will need one more extra step to store the passphrase in the keychain so you won’t be asked to type it over and over again.
– Create a file in ~/.ssh/config
– Add these contents
Now once you enter the passphrase, OS X wont ask you again.
Most common problems could be:
Modifications in SSH config files /etc/ssh/sshd_config
How to debug
On the server:
– You could run another SSH process on different port, and monitor console log.
$ sudo /usr/sbin/sshd -d -p 4444
– Connect to the newly instantiated SSH process on port 4444 (-p 4444) with -v (verbose) option and monitor the log.
ssh -v -p 4444 email@example.com -i ~/.ssh/tmux_ssh
Once you find the issue and fix it, you could restart the SSH server with the following commands:
$ sudo launchctl unload /System/Library/LaunchDaemons/ssh.plist
$ sudo launchctl load /System/Library/LaunchDaemons/ssh.plist