🎯 Objectif

Comprendre et mettre en place une connexion SSH par clés pour ne plus avoir à taper son mot de passe.


📚 Partie 1 : Les bases – Qu’est-ce qu’une clé SSH ?

La métaphore de la boîte aux lettres sécurisée

Imaginez que vous voulez envoyer des messages sécurisés à un correspondant :

  • La clé publique 🔓 = C’est comme une boîte aux lettres avec une fente. Tout le monde peut voir cette boîte et y déposer des messages (c’est public !). Mais une fois le message dans la boîte, personne ne peut le récupérer… sauf celui qui a la clé.
  • La clé privée 🔐 = C’est la clé qui ouvre la boîte aux lettres. Vous êtes le SEUL à l’avoir, vous ne la partagez JAMAIS.

Application à SSH :

  • Votre clé publique sera installée sur le serveur linux3.local
  • Votre clé privée reste précieusement sur VOTRE poste
  • Quand vous vous connectez, le serveur vérifie que vous possédez bien la clé privée correspondant à la clé publique installée

💻 Partie 2 : Mise en pratique étape par étape

Étape 1 : Créez votre paire de clés (sur votre poste)

Ouvrez un terminal et tapez :

ssh-keygen -t ed25519 -C "etudiant-$(whoami)"

Explication des options :

  • -t ed25519 : Type de clé ultra-sécurisée et moderne
  • -C : Un commentaire pour identifier votre clé

Ce qui va se passer :

Generating public/private ed25519 key pair.
Enter file in which to save the key (/home/etudiant/.ssh/id_ed25519): 
➡️ Appuyez sur ENTREE (garde l'emplacement par défaut)

Enter passphrase (empty for no passphrase): 
➡️ Appuyez sur ENTREE (pas de mot de passe)

Enter same passphrase again: 
➡️ Appuyez sur ENTREE (confirmation)

Vérification : Deux fichiers ont été créés dans le dossier caché .ssh

ls -la ~/.ssh/
  • id_ed25519 = votre clé PRIVÉE (à garder secrète !)
  • id_ed25519.pub = votre clé PUBLIQUE (peut être partagée)

Étape 2 : Comprendre ce qu’on vient de créer

Visualisons le contenu de votre clé publique :

cat ~/.ssh/id_ed25519.pub

Vous verrez quelque chose comme :

ssh-ed25519 AAAAC3Nz...longue suite de caractères... etudiant-pc

C’est votre identité numérique pour les serveurs SSH !

Étape 3 : Installer votre clé publique sur le serveur

Maintenant, il faut déposer votre clé publique dans la boîte aux lettres du serveur.

Méthode simple avec ssh-copy-id :

ssh-copy-id votrelogin@linux3.local

On vous demande votre mot de passe (c’est la dernière fois !) :

votrelogin@linux3.local's password: 
➡️ Tapez votre mot de passe (rien ne s'affiche, c'est normal)

Que s’est-il passé ?
Votre clé publique a été automatiquement ajoutée dans le fichier ~/.ssh/authorized_keys sur linux3.local


Étape 4 : Testez la connexion magique !

ssh votrelogin@linux3.local

Et voilà ! 🎉 Plus de demande de mot de passe ! Vous êtes connecté directement.