ssky-keygen + ssh-copy-id login to a remote LINUX host without a password

Using ssky-keygen and ssh-copy-id in the example below, you can log in to a remote Linux host without entering a password with a simple 3-step setup. 
ssh-keygen creates public and secret keys. 
ssh-copy-id copies the public key of the local host to the authorized_keys file of the remote host.
ssh-copy-id will also set the appropriate permissions on the user's home directory (home) and ~/.ssh, and ~/.ssh/authorized_keys on the remote host.

Step 1: Use ssh-key-gen to create public key and key on
localhost ligh@local-host$ ssh-keygen -t rsa
Enter file in which to save the key (/home/jsmith/.ssh/id_rsa) :[Enter key] 
Enter passphrase (empty for no passphrase): [Press enter key]
Enter same passphrase again: [Pess enter key]
Your identification has been saved in /home/jsmith/.ssh/id_rsa.
Your public key has been saved in /home/jsmith/.ssh/id_rsa.pub. 
The key fingerprint is: 33:b3:fe:af:95:95:18:11:31:d5:de:96:2f:f2:35:f9 
ligh@local-host

Step 2: Copy the public key to the remote host with ssh-copy-id
ligh@local-host$ ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
ligh@remote-host's password:
Now try logging into the machine, with “ssh ?remote-host'”, and check in: 
.ssh/authorized_keys to make sure we haven't added extra keys that you weren't expecting.
[Note: ssh-copy-id Append the public key distribution to .ssh/authorized_key of the remote host.]

Step 3: Log in directly to the remote host
ligh@local-host$ ssh remote-host 
Last login: Sun Nov 16 17:22:33 2008 from 192.168.1.2 
[Note: SSH will not ask for a password.] 
ligh@remote-host$ 
[Note: you are now logged into the remote host]

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=327037633&siteId=291194637