System/OS

SSH Passwordless Login Using SSH Keygen in 5 Easy Steps

by hooni posted Nov 22, 2019
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

ssh01.jpg


SSH (Secure SHELL) is an open source and most trusted network protocol that is used to login into remote servers for execution of commands and programs. It is also used to transfer files from one computer to another computer over the network using secure copy (SCP) Protocol.

In this article we will show you how to setup password-less login on RHEL/CentOS 7.x/6.x/5.x and Fedora using ssh keys to connect to remote Linux servers without entering password. Using Password-less login with SSH keys will increase the trust between two Linux servers for easy file synchronization or transfer.

My Setup Environment
SSH Client : 192.168.0.7 ( Fedora 21 )
SSH Remote Host : 192.168.1.240 ( CentOS 7 )

If you are dealing with number of Linux remote servers, then SSH Password-less login is one of the best way to automate tasks such as automatic backups with scripts, synchronization files using scp and remote command execution.

In this example we will setup SSH password-less automatic login from server 192.168.0.7 as user picomax to 192.168.1.240 with user hooni.

Step 1: Create Authentication SSH-Kegen Keys on – (192.168.0.7)

First login into server 192.168.0.7 with user picomax and generate a pair of public keys using following command.

[picomax@test.com ~]$ ssh-keygen -t rsa

Generating public/private rsa key pair.
Enter file in which to save the key (/home/picomax/.ssh/id_rsa): [Press enter key]
Created directory '/home/picomax/.ssh'.
Enter passphrase (empty for no passphrase): [Press enter key]
Enter same passphrase again: [Press enter key]
Your identification has been saved in /home/picomax/.ssh/id_rsa.
Your public key has been saved in /home/picomax/.ssh/id_rsa.pub.
The key fingerprint is:
5f:ad:40:00:8a:d1:9b:99:b3:b0:f8:08:99:c3:ed:d3 picomax@test.com
The key's randomart image is:
+--[ RSA 2048]----+
|        ..oooE.++|
|         o. o.o  |
|          ..   . |
|         o  . . o|
|        S .  . + |
|       . .    . o|
|      . o o    ..|
|       + +       |
|        +.       |
+-----------------+

Step 2: Create .ssh Directory on – 192.168.1.240

Use SSH from server 192.168.0.7 to connect server 192.168.1.240 using hooni as user and create .ssh directory under it, using following command.

[picomax@local ~]$ ssh hooni@192.168.1.240 mkdir -p .ssh

The authenticity of host '192.168.1.240 (192.168.1.240)' can't be established.
RSA key fingerprint is 45:0e:28:11:d6:81:62:16:04:3f:db:38:02:la:22:4e.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.240' (ECDSA) to the list of known hosts.
hooni@192.168.1.240's password: [Enter Your Password Here]

Step 3: Upload Generated Public Keys to – 192.168.1.240

Use SSH from server 192.168.0.7 and upload new generated public key (id_rsa.pub) on server 192.168.1.240 under hooni‘s .ssh directory as a file name authorized_keys.

[picomax@local ~]$ cat .ssh/id_rsa.pub | ssh hooni@192.168.1.240 'cat >> .ssh/authorized_keys'

hooni@192.168.1.240's password: [Enter Your Password Here]

Step 4: Set Permissions on – 192.168.1.240

Due to different SSH versions on servers, we need to set permissions on .ssh directory and authorized_keys file.

[picomax@local ~]$ ssh hooni@192.168.1.240 "chmod 700 .ssh; chmod 640 .ssh/authorized_keys"

hooni@192.168.1.240's password: [Enter Your Password Here]

Step 5: Login from 192.168.0.7 to 192.168.1.240 Server without Password

From now onwards you can log into 192.168.1.240 as hooni user from server 192.168.0.7 as picomax user without password.

[picomax@local ~]$ ssh hooni@192.168.1.240



[출처] https://www.tecmint.com/ssh-passwordless-login-using-ssh-keygen-in-5-easy-steps/