Comment générer une clé SSH sous Linux

Points clés à retenir

  • Les clés SSH sont un moyen sécurisé d’accéder à des serveurs distants sans mot de passe. Ils sont constitués d’une clé publique et privée.
  • Utilisez la commande ssh-keygen sous Linux pour générer une paire de clés SSH et envisagez d’ajouter une phrase secrète pour plus de sécurité.
  • Copiez votre clé publique SSH sur le serveur distant à l’aide de ssh-copy-id ou en collant manuellement la clé dans le fichierauthorized_keys.

Une clé SSH vous permet de protéger vos comptes de serveur distant tout en accordant un accès sans mot de passe. Il est facile d’en générer un sous Linux.

Qu’est-ce qu’une clé SSH ?

Une clé SSH est une clé générée cryptographiquement qui vous permet de vous connecter à des machines distantes. Une clé SSH est une « paire de clés » contenant une clé publique et une clé privée. Vous pouvez copier la clé publique sur des machines distantes, et elles l’utiliseront pour vous authentifier. La clé privée, comme son nom l’indique, est privée et doit rester sur votre machine locale.

  Comment partager des fichiers sur Tor depuis Linux avec Onion Share

Ne partagez votre clé SSH privée avec personne !

Au moment de la connexion, le serveur distant utilisera SSH pour comparer votre clé publique avec votre clé privée. S’ils correspondent, vous êtes autorisé à accéder au système distant. Ce système de paire de clés vous permet de créer facilement des comptes tout en maintenant la sécurité.

Comment générer une clé distante

Pour générer une paire de clés SSH, utilisez simplement la commande « ssh-keygen » sur la ligne de commande Linux. Il vous demandera de sélectionner un emplacement de fichier, puis de saisir et de confirmer une phrase secrète si vous choisissez d’en utiliser une. La phrase secrète vous permet d’ajouter une couche de sécurité supplémentaire à votre clé.

  Comment installer Cockpit sous Linux

Si vous utilisez une phrase secrète, ne l’oubliez pas ! Vous ne pourrez pas vous connecter avec cette clé si vous l’oubliez.

Si vous souhaitez vous connecter sans mot de passe, laissez simplement la phrase secrète vide.

Par défaut, ssh-keygen utilise l’algorithme Ed25519. C’est suffisant dans la plupart des cas car c’est très sécurisé. Vous pouvez spécifier le type d’algorithme souhaité en utilisant l’indicateur -t. Vous ne devriez normalement pas avoir besoin de le faire à moins que le serveur ne prenne en charge l’algorithme que vous avez utilisé. Vous pouvez lire le page de manuel de ssh-keygen pour apprendre à générer une paire de clés différente.

  Comment envoyer des messages texte sous Linux avec l'interface graphique de Modem Manager

Obtenir votre nouvelle clé SSH sur la machine distante

Maintenant que vous avez généré votre paire de clés, vous devez copier votre clé sur le serveur distant. Il y a deux façons de faire ça.

La première et la plus simple consiste à utiliser l’utilitaire ssh-copy-id. Pour ce faire, appelez-le simplement avec le nom d’utilisateur et l’adresse de votre compte de serveur distant :

 ssh-copy-id [email protected]

Entrez votre mot de passe et il sera copié sur votre clé privée.

Vous pourrez maintenant vous connecter au serveur distant :

 ssh [email protected] 

Si cela ne fonctionne pas, vous devrez copier et coller votre clé publique manuellement. Votre clé publique sera un fichier se terminant par « .pub » dans le répertoire .ssh de votre répertoire personnel. Ouvrez-le et copiez et collez ce qu’il contient dans le fichier .ssh/authorized_keys sur la machine distante.

Enregistrez le fichier et vous pourrez désormais vous connecter au serveur en utilisant SSH. Assurez-vous que le fichier est uniquement accessible en écriture par vous, sinon vous risquez de rencontrer des erreurs.