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.