0Pricing
Linux Server Deployment & SSH Mastery · Leçon

Authentification SSH par clés

Générez des paires de clés SSH, déployez les clés publiques sur les serveurs et désactivez l’authentification par mot de passe pour renforcer la sécurité.

Authentification SSH par clés est une leçon Linux Server Deployment & SSH Mastery gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Linux Server Deployment & SSH Mastery, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Linux Server Deployment & SSH Mastery comprend 4 leçons au total.

Déverrouiller SSH avec des paires de clés

Bienvenue ! Dans cette leçon, vous découvrirez l’authentification SSH par clé. Cette méthode est bien plus sûre et pratique que l’utilisation de mots de passe traditionnels pour vous connecter à votre serveur.

Les clés SSH fonctionnent comme une poignée de main numérique : elles prouvent votre identité sans vous obliger à saisir un mot de passe à chaque connexion.

La magie des clés publiques et privées

L’authentification par clé SSH repose sur une paire de clés cryptographiques :

  • Clé privée : cette clé reste sur votre machine locale et doit rester secrète. Considérez-la comme la clé unique de votre serrure numérique.
  • Clé publique : cette clé est placée sur le serveur auquel vous souhaitez accéder. Elle ressemble à une serrure spéciale qui ne peut être ouverte qu’avec votre clé privée.

Lorsque vous essayez de vous connecter, le serveur met votre client au défi, puis celui-ci utilise votre clé privée pour prouver son identité.

Générer vos clés SSH

Vous pouvez générer votre propre paire de clés SSH à l’aide de la commande ssh-keygen sur votre machine locale. Par défaut, elle crée une paire de clés RSA.

Lorsque vous y êtes invité, vous pouvez choisir une phrase secrète pour protéger votre clé privée. Cela ajoute un niveau de sécurité supplémentaire, car vous devez saisir cette phrase avant d’utiliser la clé.

ssh-keygen

Personnaliser la génération des clés

Pour renforcer la sécurité, il est recommandé d’utiliser des types de clés plus récents, comme ED25519. Vous pouvez également définir un nom de fichier personnalisé pour vos clés.

  • -t ed25519 : indique l’algorithme ED25519.
  • -f ~/.ssh/my_server_key : crée des fichiers nommés my_server_key et my_server_key.pub.

Utilisez toujours une phrase secrète robuste pour votre clé privée !

ssh-keygen -t ed25519 -f ~/.ssh/my_server_key

Comprendre les fichiers de clés

Après leur génération, vos clés sont généralement stockées dans le répertoire ~/.ssh/ de votre machine locale. Vous y trouverez deux fichiers :

  • id_ed25519 (ou id_rsa) : il s’agit de votre clé privée. Protégez-la absolument et ne la partagez jamais.
  • id_ed25519.pub (ou id_rsa.pub) : il s’agit de votre clé publique. C’est ce fichier que vous copierez sur votre serveur.

Les permissions de ces fichiers sont également très importantes pour la sécurité !

Déployer facilement votre clé publique

La manière la plus simple de placer votre clé publique sur un serveur consiste à utiliser la commande ssh-copy-id. Elle copie de manière sécurisée votre clé publique dans le fichier ~/.ssh/authorized_keys du serveur.

Vous devrez utiliser votre mot de passe la première fois que vous exécuterez cette commande pour un nouveau serveur. Ensuite, la connexion par mot de passe ne sera souvent plus nécessaire.

ssh-copy-id user@your_server_ip

Déployer manuellement une clé publique

Si ssh-copy-id n’est pas disponible ou si vous préférez procéder manuellement, vous pouvez copier vous-même votre clé publique sur le serveur.

Commencez par vérifier que le répertoire ~/.ssh existe sur le serveur et que ses permissions sont correctes (700). Ajoutez ensuite votre clé publique à la fin du fichier ~/.ssh/authorized_keys (permissions 600).

cat ~/.ssh/id_ed25519.pub | ssh user@your_server_ip \
"mkdir -p ~/.ssh && chmod 700 ~/.ssh && \
cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

Se connecter avec vos nouvelles clés

Une fois votre clé publique placée sur le serveur, vous pouvez vous connecter avec SSH. Si vous avez utilisé le nom de clé par défaut (par exemple, id_rsa ou id_ed25519), SSH la trouvera automatiquement.

Si vous avez utilisé un nom de clé personnalisé (par exemple, my_server_key), vous devrez l’indiquer à l’aide de l’option -i.

ssh -i ~/.ssh/my_server_key user@your_server_ip

Désactiver la connexion par mot de passe pour renforcer la sécurité

Pour renforcer la sécurité, il est vivement recommandé de désactiver l’authentification par mot de passe sur votre serveur une fois que la connexion par clé fonctionne.

Modifiez le fichier de configuration du démon SSH (/etc/ssh/sshd_config) sur le serveur, remplacez PasswordAuthentication yes par no, puis redémarrez le service SSH (par exemple avec sudo systemctl restart sshd ou sudo service ssh restart).

# On the server, edit /etc/ssh/sshd_config
PasswordAuthentication no
# Then restart SSH service
sudo systemctl restart sshd

Vérification de l’authentification par clé

Vous avez appris comment fonctionne l’authentification SSH par clé, comment générer des clés et comment les déployer. Testons vos connaissances !

Récapitulatif : sécuriser SSH avec des clés

Excellent travail ! Vous maîtrisez l’authentification SSH par clé. Vous avez appris :

  • la différence entre les clés publiques et privées ;
  • à générer des paires de clés avec ssh-keygen ;
  • à déployer votre clé publique sur un serveur avec ssh-copy-id ou manuellement ;
  • à vous connecter de manière sécurisée sans mot de passe ;
  • pourquoi et comment désactiver l’authentification par mot de passe sur votre serveur.

Les clés SSH sont un outil fondamental pour administrer des serveurs de manière sûre et efficace. Continuez à vous entraîner !

Questions Fréquemment Posées

La leçon « Authentification SSH par clés » est-elle gratuite ?

Oui — le texte complet de « Authentification SSH par clés » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Linux Server Deployment & SSH Mastery, passe à CoddyKit PRO. Le cours Linux Server Deployment & SSH Mastery comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Authentification SSH par clés » ?

Générez des paires de clés SSH, déployez les clés publiques sur les serveurs et désactivez l’authentification par mot de passe pour renforcer la sécurité. Tu pratiques Linux Server Deployment & SSH Mastery avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Linux Server Deployment & SSH Mastery ?

Aucune expérience préalable n'est requise. Linux Server Deployment & SSH Mastery sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.

Combien de temps prend la leçon « Authentification SSH par clés » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Linux Server Deployment & SSH Mastery ?

Oui. Chaque leçon Linux Server Deployment & SSH Mastery inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Comprendre le protocole SSH
  2. Configurer votre client SSH
  3. Authentification SSH par clés
  4. Renforcer la sécurité du serveur SSH
← Retour à Linux Server Deployment & SSH Mastery