How to use Authorized Keys to Create a Passwordless SSH Connection

1st February 2012

If you're accessing Linux servers or automating tasks between servers, rather than having to enter your user password every time, you can also use SSH public key authentication. This is a simple process that involves creating a local key and storing it within the authorized_keys file on the remote server.

  1. Check if you already have a SSH key. $ ssh-add -L
  2. If you don't have one, create one. $ ssh-keygen
  3. Upload the key onto the server. Replace myserver with the hostname or IP address of your remote server. $ ssh-copy-id myserver

If you're using Mac OS X and you don't have ssh-copy-id installed, download and install Homebrew and run the brew install ssh-copy-id command.

If successful, you should now see a message like:

Now try logging into the machine, with "ssh 'myserver'", and check in:

~/.ssh/authorized_keys

to make sure we haven't added extra keys that you weren't expecting.

Now the next time that you SSH onto the server, it should log you in without prompting you for your password.

Questions? Comments? I’m @opdavies on Twitter.

About the Author

Picture of Oliver

Oliver Davies is a Web Developer, System Administrator and Drupal specialist based in the UK. He is a Senior Developer at Microserve and also provides freelance consultancy services for Drupal, Symfony and Laravel applications and Linux servers.

Availability

  • Currently no spare part-time capacity.
  • Currently no spare full-time capacity.