19

I'm always running ssh with the -i parameter and it's a hassle to always type in the correct key for whatever host I'm connecting to.

Is there a config file or something (on Mac) to define which private key to use when connecting to a particular host?

21

Yes, you want to create a ~/.ssh/config file. That lets you define a shortcut name for a host, the username you want to connect as, and which key to use. Here's part of mine, with hostnames obfuscated:

Host tabs
     HostName tabs.com
     User     me
     IdentityFile       ~/.ssh/new_rsa

Host scm.company.com
     User       cap
     IdentityFile       ~/.ssh/git_rsa

Host project-staging
     HostName 50.56.101.167
     User     me
     IdentityFile       ~/.ssh/new_rsa

With this I can say, ssh tabs and get connected to host tabs.com as user me, with key new_rsa, as though I'd used ssh me@tabs.com -i ~/.ssh/new_rsa.

3
  • 1
    Also a good way to go if you don't want to use ssh-agent for whatever reason.
    – voretaq7
    Apr 22 '11 at 19:28
  • 1
    I didn't know that was possible. +1
    – Safado
    Apr 22 '11 at 19:48
  • Thanks. Maybe small addition it's worthwhile to menaion that private key files should have correct permissions like setuped like chmod 600 ~/.ssh/id_rsa
    – bruziuz
    Jul 23 at 16:10
2

SSH clients will typically use ~/.ssh/identity (ssh v1) or one of~/.ssh/id_rsa or ~/.ssh/id_dsa (v2) as the default private key. You can change this in ~/.ssh/config (the IdentityFile parameter - the -i option to SSH actually overrides this. See man ssh_config for details).

If you have multiple private keys to deal with using ssh-agent is probably a better choice.
See man ssh-agent for more details.

1
  • +1 for describing the defaults and citing the man page.
    – pjmorse
    Apr 22 '11 at 19:42
0

If you use different keys for different servers I don't think there is.

If you use a single key for all servers, just save it as ~/.ssh/id_rsa, it will be used automatically.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.