Comment générer une clé SSH sur Linux
Apprenez à générer une clé SSH et à vous connecter en toute sécurité à des serveurs distants.
Principaux enseignements
- Les clés SSH sont un moyen sûr d'accéder à des serveurs distants sans mots de passe. Elles se composent d'une clé publique et d'une clé privée.
- Utilisez la commande ssh-keygen sur Linux pour générer une paire de clés SSH, et envisagez d'ajouter une phrase de passe pour plus de sécurité.
- Copiez votre clé publique SSH sur le serveur distant en utilisant soit ssh-copy-id, soit en collant manuellement la clé dans le fichier authorized_keys.
Une clé SSH vous permet de garder vos comptes de serveur distant en sécurité tout en offrant un accès sans mot de passe. Il est facile d'en générer une sur 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.
Ne partagez votre clé SSH privée avec personne !
Lors de la connexion, le serveur distant utilisera SSH pour comparer votre clé publique avec votre clé privée. Si elles correspondent, vous êtes autorisé à entrer dans le système distant. Ce système de paire de clés vous permet de configurer des comptes facilement tout en maintenant la sécurité.
Comment générer une clé à distance
Pour générer une paire de clés SSH, utilisez simplement la commande "ssh-keygen" dans la ligne de commande Linux. Il vous demandera de choisir un emplacement de fichier, puis d'entrer et de confirmer une phrase de passe si vous choisissez d'en utiliser une. La phrase de passe vous permet d'ajouter une couche de sécurité supplémentaire à votre clé.
Si vous utilisez une phrase de passe, 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, il suffit de laisser le mot de passe vide.
Par défaut, ssh-keygen utilise l'algorithme Ed25519. Cela est suffisant dans la plupart des cas car il est très sécurisé. Vous pouvez spécifier le type d'algorithme que vous souhaitez en utilisant le drapeau -t. Il n'est normalement pas nécessaire de le faire à moins que le serveur ne supporte pas l'algorithme que vous avez utilisé. Vous pouvez consulter la page de manuel de ssh-keygen pour apprendre à générer une paire de clés différente.
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 le faire.
La première et la plus facile consiste à utiliser l'outil ssh-copy-id. Pour ce faire, il suffit de l'appeler avec le nom d'utilisateur et l'adresse de votre compte sur le serveur distant :
ssh-copy-id user@example.com
Entrez votre mot de passe, et cela copiera votre clé privée.
Vous pourrez désormais vous connecter au serveur distant :
ssh user@example.comSi 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 ce qui s'y trouve dans le fichier .ssh/authorized_keys sur la machine distante.
Enregistrez le fichier, et vous pourrez maintenant vous connecter au serveur en utilisant SSH. Assurez-vous que le fichier n'est modifiable que par vous, sinon vous pourriez rencontrer des erreurs.



