Recherche de site Web

Comment générer une paire de clés SSH (avec exemples)


Découvrez comment générer une paire de clés SSH sur votre ordinateur, que vous pourrez ensuite utiliser pour authentifier votre connexion à un serveur distant.

L'authentification par mot de passe est la méthode par défaut utilisée par la plupart des clients SSH pour s'authentifier auprès des serveurs distants, mais elle souffre de vulnérabilités de sécurité potentielles telles que les tentatives de connexion par force brute.

Une alternative à l'authentification par mot de passe consiste à utiliser l'authentification avec une paire de clés SSH, dans laquelle vous générez une clé SSH et la stockez sur votre ordinateur.

Les clés SSH constituent un moyen simple d'identifier les ordinateurs de confiance sans utiliser de mots de passe. Ils sont largement utilisés par les administrateurs réseau et systèmes pour contrôler les serveurs à distance.

Par conséquent, l’authentification par clé SSH est plus sécurisée que l’authentification par mot de passe et sans doute plus pratique.

Le concept central est qu'au lieu d'un mot de passe, on utilise un fichier clé pratiquement impossible à deviner. Vous donnez la partie publique de votre clé, et lors de la connexion, elle sera utilisée, avec la clé privée et le nom d'utilisateur, pour vérifier votre identité.

Les étapes ci-dessous vous montreront comment générer une paire de clés SSH et ajouter la clé publique au serveur.

Comment générer une paire de clés SSH sous Linux

Lors de la génération de clés SSH sous Linux, vous pouvez utiliser la commande ssh-keygen . Il s'agit d'un outil permettant de créer de nouvelles paires de clés d'authentification pour SSH.

Pour générer une paire de clés SSH, ouvrez le terminal et tapez la commande suivante :

ssh-keygen -t rsa

Appuyez simplement sur Entrée lorsqu'il demande le fichier, la phrase secrète ou la même phrase secrète. La commande génère par défaut une paire de clés dans le répertoire ~/.ssh.

Vous disposez désormais de deux fichiers :

  • id_rsa
  • (Clé privée). La clé privée est stockée sur votre ordinateur local et doit être conservée en sécurité, avec des autorisations définies de manière à ce qu'aucun autre utilisateur de votre ordinateur ne puisse lire le fichier.

  • id_rsa.pub
  • (Clé publique). La clé publique doit être placée sur le serveur auquel vous souhaitez vous connecter. Vous pouvez librement partager votre clé publique avec d'autres.

ls -l /home/linuxiac/.ssh/
drwx------ 2 linuxiac linuxiac 4096 Jul 16 18:31 .
drwxr-xr-x 4 linuxiac linuxiac 4096 Jul 16 18:31 ..
-rw------- 1 linuxiac linuxiac 2610 Jul 16 18:31 id_rsa
-rw-r--r-- 1 linuxiac linuxiac  576 Jul 16 18:31 id_rsa.pub

Vous pouvez placer la clé publique sur n'importe quel serveur, puis vous connecter au serveur en utilisant ssh. Lorsque les clés publiques et privées correspondent, le serveur SSH accorde l'accès sans avoir besoin de mot de passe.

Si vous ne savez pas comment procéder, je vous recommande de consulter notre guide court et facile à suivre, « Comment configurer la connexion SSH sans mot de passe ».

Vous pouvez générer une clé SSH encore plus grande avec l'option -b pour une sécurité accrue.

L'indicateur -b demande à ssh-keygen d'augmenter le nombre de bits utilisés pour créer la paire de clés et est suggéré pour plus de sécurité. Par exemple, pour 4096 bits, faites :

ssh-keygen -t rsa -b 4096

Conclusion

Dans cet article, vous avez appris à générer des paires de clés SSH à l'aide de ssh-keygen. Les clés SSH présentent de nombreux avantages par rapport aux mots de passe :

  • Sécurité accrue : il est presque impossible de les forcer ou de les deviner.
  • Facilité de gestion : plus besoin de créer et de modifier des mots de passe aléatoires.
  • Tâches automatisées : comme vous n'avez pas besoin de saisir votre mot de passe à chaque fois, il est plus facile d'automatiser les tâches qui nécessitent SSH.

Pour en savoir plus sur la commande ssh-keygen sous Linux, consultez sa page de manuel.

Connexe : SSH vers un port autre que 22 : comment le faire (avec des exemples)

N'hésitez pas à laisser un commentaire si vous avez des questions.

Articles connexes: