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.

Abdul Ghiasy · 1 min read

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 ed25519

Ed25519 is the recommended modern key type — it’s faster, more secure, and produces shorter keys than RSA. If you’re on an older system that doesn’t support Ed25519, fall back to ssh-keygen -t rsa -b 4096. For extra security, add a passphrase to your key when prompted.

Step 2: Copy the key to your server

cat ~/.ssh/id_ed25519.pub >> ~/.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
#SSH #Authentication