Suivez ce guide étape par étape pour configurer l'authentification par clé SSH sur votre serveur Ubuntu. Connectez-vous en toute sécurité sans mot de passe et désactivez complètement l'authentification par mot de passe si vous le souhaitez.
Suivez attentivement chaque étape pour configurer l'authentification par clé SSH sur votre serveur Ubuntu 16.04.
Exécutez la commande suivante sur votre machine locale pour générer une paire de clés RSA 2048 bits (utilisez -b 4096 pour une clé plus robuste de 4096 bits) :
$ ssh-keygen Lorsque le système vous invite à saisir un chemin de fichier, appuyez sur Entrée pour accepter le chemin par défaut ( ~/.ssh/id_rsa ). Vous pouvez également définir une phrase secrète pour renforcer la sécurité.
Deux fichiers sont créés : ~/.ssh/id_rsa (clé privée — gardez-la secrète) et ~/.ssh/id_rsa.pub (clé publique — celle-ci doit être placée sur le serveur).
Méthode 1 — ssh-copy-id (recommandée) :
$ ssh-copy-id username@remote_host Saisissez votre mot de passe lorsque vous y êtes invité. La clé publique sera ajoutée au fichier ~/.ssh/authorized_keys sur le serveur.
Méthode 2 — via un tube SSH :
cat ~/.ssh/id_rsa.pub | ssh username@remote_host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys" Méthode 3 — manuellement : Affichez votre clé publique avec cat ~/.ssh/id_rsa.pub , puis ajoutez sa sortie à ~/.ssh/authorized_keys sur le serveur distant.
Vérifiez que l'authentification par clé fonctionne en vous connectant à votre serveur :
$ ssh username@remote_hostSi vous avez défini une phrase secrète à l'étape 1, vous serez invité à la saisir. Sinon, vous serez connecté immédiatement sans qu'aucun mot de passe ne vous soit demandé.
Une fois que vous avez confirmé que la connexion par clé fonctionne, vous pouvez désactiver l'authentification par mot de passe afin de renforcer la sécurité du serveur contre les attaques par force brute. Ouvrez la configuration du démon SSH :
sudo nano /etc/ssh/sshd_config Trouvez PasswordAuthentication , décommentez la ligne si nécessaire et définissez-la sur no :
PasswordAuthentication noEnregistrez le fichier ( Ctrl+X , puis Y , puis Entrée ) et redémarrez SSH :
$ sudo systemctl restart sshOuvrez un nouveau terminal et vérifiez que vous pouvez toujours vous connecter avant de fermer votre session actuelle.
Questions fréquentes concernant la configuration de l'authentification par clé SSH sur Ubuntu.