Comment générer une paire de clés SSH (avec des exemples)
Apprenez à 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 que la plupart des clients SSH utilisent pour s'authentifier auprès des serveurs distants, mais elle souffre de vulnérabilités de sécurité potentielles, comme 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 conservez sur votre ordinateur.
Les clés SSH sont un moyen facile d'identifier des ordinateurs de confiance sans impliquer de mots de passe. Elles sont largement utilisées par les administrateurs réseau et système pour contrôler des 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 de clé qui est 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 sur Linux
Lors de la génération de clés SSH sous Linux, vous pouvez utiliser la commande ssh-keygen. C'est un outil pour 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 rsaIl suffit d'appuyer sur entrée lorsque cela demande le fichier, la phrase de passe ou la même phrase de passe. La commande génère par défaut une paire de clés dans le répertoire ~/.ssh.
Vous avez maintenant deux fichiers :
id_rsaid_rsa.pub
(Clé privée). La clé privée est stockée sur votre ordinateur local et doit être gardée secrète, avec des permissions définies de sorte qu'aucun autre utilisateur sur votre ordinateur ne puisse lire le fichier.
(Clé publique). La clé publique doit être placée sur le serveur auquel vous souhaitez vous connecter. Vous pouvez partager librement 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.pubVous pouvez placer la clé publique sur n'importe quel serveur et ensuite vous connecter au serveur en utilisant ssh. Lorsque la clé publique et la clé privée correspondent, le serveur SSH accorde l'accès sans avoir besoin d'un mot de passe.
Si vous n'êtes pas sûr de la façon de 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'option -b indique à ssh-keygen d'augmenter le nombre de bits utilisés pour créer la paire de clés et est recommandée pour une sécurité accrue. Par exemple, pour 4096 bits, faites :
ssh-keygen -t rsa -b 4096Conclusion
Dans cet article, vous avez appris à générer des paires de clés SSH en utilisant ssh-keygen. Les clés SSH présentent de nombreux avantages par rapport aux mots de passe :
- Sécurité renforcée : Ils sont presque impossibles à forcer ou à deviner.
- Facilité de gestion : Fini de créer et de changer des mots de passe aléatoires.
- Tâches automatisées : Parce que vous n'avez pas besoin de taper 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 dans Linux, consultez sa page de manuel.
Lié : Se connecter en SSH sur un port autre que 22 : Comment le faire (avec des exemples)
N'hésitez pas à laisser un commentaire si vous avez des questions.

