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/id_rsa.pub >> ~/.ssh/authorized_keys
Step 3: Disable root login and password login for users
/etc/ssh/sshd_config configuration file to include the following (if not already there):
PermitRootLogin no PasswordAuthentication no
Step 4: Restart your
sudo systemctl reload sshd.service