Setting up SSH Public Key Authentication

These instructions will allow you to connect as user1 on machine FROM to user2 on machine TO without typing your password for the ssh and scp commands. This can be very useful when doing batch copies (e.g. using batch_run.pl to copy many directories of breseq results) or for machines that you constantly find yourself needing to login to.

Step 1: Log into machine FROM as user1. Run the ssh-keygen command. Leave the passphrase empty. (Just hit return when prompted for the passphrase.)

On machine FROM:

$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user1/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/user1/.ssh/id_rsa.
Your public key has been saved in /home/user1/.ssh/id_rsa.pub.
The key fingerprint is:
d2:e1:78:ac:c1:13:01:f2:a7:84:94:7d:a6:06:f8:1a lab@backup
The key's randomart image is:
+--[ RSA 2048]----+
| .oo...          |
|..o+. o.         |
| ...o+o .        |
|E ..o+ * .       |
| o .. * S        |
|.      *         |
|      .          |
|                 |
|                 |
+-----------------+

Step 2: Create the ssh directory on machine TO as user2 (only needed if it does not already exist):

On machine FROM:

$ ssh user2@TO mkdir -p .ssh
user2@TO's password: 

Step 3: Add the key that we just created for user1 on FROM as a new line in the .ssh/authorized_keys file in account user2 on machine TO.

On machine FROM:

$ cat .ssh/id_rsa.pub | ssh user2@TO 'cat >> .ssh/authorized_keys'
user2@TO's password:

To add login to additional remote machines, repeat Step 3.


This topic: Lab > WebHome > ProtocolList > ProtocolsSSHPublicKeyAuthentication
Topic revision: r3 - 23 Mar 2016 - 20:21:11 - Main.JeffreyBarrick