Table of Contents
Setup Passwordless SSH Login in Linux
SSH stands for Secure SHELL protocol which is an opensource and mostly used network protocol. SSH secures connections between client and server systems. By using scp command with SSH you can transfer files between two systems. SSH supports different authentication protocols in which password based and public key based authentications mostly used today. In this tutorial, you are going to learn how to setup Passwordless SSH Login in Linux.
Setting up Passwordless SSH Login
Here first we will generate a public authentication key by checking if its already exists or not then we will setup passwordless ssh login. Follow below instructions to setup passwordless ssh login.
Step 1: Check SSH key paire
Here in this step, we will first check if SSH key pair already exists. If it doesn’t exist then we create a new one. To check it please run following ls command in the terminal:
ls -al ~/.ssh/id_*.pub
If the key exists then you can go with them and skip to step 3. Otherwise, you can backup existing keys and generate new keys by using the next step.
If you don’t have existing ssh keys then you can generate new ones using next step.
Step 2: Generate New SSH key pair
To generate new ssh key pair you can run following command by replacing
[email protected] with your email address:
ssh-keygen -t rsa -b 4096 -C "[email protected]"
Now you will be asked for file to save new keys. Its recommended to press
ENTER and go with default file:
Enter file in which to save the key (/home/linux4one/.ssh/id_rsa):
Next, you will be asked to enter a passphrase. If you want to set up a passphrase then you can enter a passphrase and confirm it. Generally to automate the processes SSH is used without a passphrase. If you don’t want to set passphrase then just press
Enter passphrase (empty for no passphrase):
Now to confirm the keys are generated run following command:
You should get output like following:
Step 3: Copy Public Key to Remote System
Now you should copy the
public key from your system to a remote system by using
ssh-copy-id command. To do so you can run the following command by replacing
REMOTE_USER with the remote host username and
SERVER_IP_ADDRESS with your remote system IP Address. If you dont know your serve IP address you can get one by using ping command:
ssh-copy-id [email protected]_IP_ADDRESS
Next, you will be asked to enter remote hosts password:
[email protected]_IP_ADDRESS's password:
Now public keys will be coppied to the
authorised keys file by closing connection.
Step 4: Login to the remote system
Now you can login to remote system without password (passwordless). To login run following command in the terminal:
ssh [email protected]_IP_ADDRESS
Here you have successfully learned How to Setup Passwordless SSH Login in Linux. If you have any queries regarding this then please don’t forget to comment below.