Linux Authentication with SSH keys only

SSH key authentication lets users log into servers without the need to use their user’s passwords which increases security.

Step 1: Create a key (if you don’t already have one)

ssh-keygen -t rsa

Note: for extra security, add a passphrase to your key when prompted.

Step 2: Copy the key to your server

cat ~/.ssh/ >> ~/.ssh/authorized_keys

Step 3: Disable root login and password login for users

Modify /etc/ssh/sshd_config configuration file to include the following (if not already there):

PermitRootLogin no
PasswordAuthentication no

Step 4: Restart your ssh service

sudo systemctl reload sshd.service