Comment gérer ses clés SSH¶
Quand utiliser ce guide¶
Utilise ce guide quand tu veux :
- Ajouter une clé SSH depuis une nouvelle machine
- Générer une clé plus sécurisée (ed25519 au lieu de RSA)
- Vérifier l'empreinte d'une clé avant de l'ajouter
- Supprimer une clé d'une machine perdue ou compromise
- Diagnostiquer une erreur
Permission denied (publickey)
Pré-requis¶
- Un compte gitrust actif
- Un terminal avec
ssh-keygendisponible (ssh-keygen --versiondoit répondre)
Étapes¶
1. Générer une clé ed25519 (recommandé)¶
ed25519 est l'algorithme recommandé : clés courtes, très rapides, résistantes aux attaques modernes.
Exemple de description : laptop-maison-2026, serveur-ci, poste-bureau.
Sortie attendue :
Generating public/private ed25519 key pair.
Enter file in which to save the key (/home/toi/.ssh/id_ed25519):
Enter passphrase (empty for no passphrase):
Your identification has been saved in /home/toi/.ssh/id_ed25519
Your public key has been saved in /home/toi/.ssh/id_ed25519.pub
The key fingerprint is:
SHA256:xXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXx description-de-la-machine
Une passphrase est fortement recommandée : elle chiffre la clé privée sur le disque. Si ta machine est volée, la clé reste inutilisable sans la passphrase.
2. Générer une clé RSA-4096 (alternative)¶
Si un outil ou un service impose RSA :
La clé sera dans ~/.ssh/id_rsa et ~/.ssh/id_rsa.pub. RSA-4096 est sûr mais plus lent qu'ed25519.
3. Afficher la clé publique à copier¶
La clé publique (fichier .pub) est faite pour être partagée :
Sortie (une ligne) :
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx description-de-la-machine
Copie cette ligne entière.
4. Ajouter la clé dans gitrust (/settings/keys)¶
Dans ton navigateur, navigue vers Paramètres → Clés SSH (/settings/keys).
Clique Ajouter une clé SSH :
- Titre : le même que la description (ex.
laptop-maison-2026) - Clé : colle la ligne
ssh-ed25519 …copiée
Clique Enregistrer.

5. Lister les clés enregistrées¶
La page /settings/keys affiche toutes tes clés avec :
- Leur titre
- Leur empreinte SHA256 (pour vérification)
- La date d'ajout
- Un bouton Supprimer
6. Vérifier l'empreinte SHA256 d'une clé locale¶
Pour confirmer qu'une clé locale correspond bien à une clé enregistrée dans gitrust :
Sortie :
Compare ce SHA256 avec celui affiché dans /settings/keys. Ils doivent être identiques.
7. Tester la connexion SSH¶
Sortie attendue :
Si tu as plusieurs clés, spécifie laquelle utiliser :
8. Supprimer une clé¶
Dans /settings/keys, clique Supprimer à côté de la clé concernée. La suppression est immédiate — toute connexion utilisant cette clé sera refusée dès la prochaine tentative.
Variantes¶
Plusieurs machines, plusieurs clés¶
Tu peux enregistrer autant de clés que nécessaire dans gitrust. Chaque machine a sa propre paire de clés — tu ne copies jamais une clé privée d'une machine à l'autre.
Pour avoir plusieurs clés sur la même machine et choisir laquelle utiliser selon le serveur, crée un fichier ~/.ssh/config :
Host gitrust.example.com
HostName gitrust.example.com
User git
Port 2222
IdentityFile ~/.ssh/id_ed25519_gitrust
Ensuite git clone git@gitrust.example.com:owner/repo.git utilisera automatiquement cette clé.
Ajouter la clé à l'agent SSH (évite de saisir la passphrase à chaque push)¶
Sur macOS, ajoute --apple-use-keychain pour que la passphrase soit mémorisée dans le trousseau système.
Dépannage ssh -T¶
| Symptôme | Cause probable | Correction |
|---|---|---|
Permission denied (publickey) |
La clé privée locale ne correspond pas à une clé publique enregistrée, ou l'agent ne la connaît pas | Exécute ssh-add ~/.ssh/id_ed25519, puis réessaie. Vérifie que la bonne clé .pub est dans /settings/keys |
Connection refused |
Le port 2222 est bloqué ou le service SSH de gitrust est arrêté | Essaie le port 22 : ssh -T git@gitrust.example.com -p 22. Contacte l'administrateur |
Host key verification failed |
L'empreinte du serveur a changé ou est inconnue | Exécute ssh-keyscan -p 2222 gitrust.example.com >> ~/.ssh/known_hosts. Vérifie l'empreinte avec l'administrateur avant d'accepter |
Too many authentication failures |
L'agent SSH propose trop de clés | Spécifie explicitement : ssh -i ~/.ssh/id_ed25519 -o IdentitiesOnly=yes -T git@… -p 2222 |
Voir aussi¶
- Tutoriel 02 — Cloner et pousser : mise en place complète SSH + premier clone
- Comprendre la sécurité côté utilisateur : pourquoi les clés SSH sont plus sûres que les mots de passe
- Créer un Personal Access Token : alternative SSH pour les accès HTTPS et les scripts