Configuration des clés SSH pour sécuriser vos accès GitLab

Sécurisez vos échanges Git et automatisez vos connexions en configurant une clé SSH ED25519 directement sur GitLab.

Configuration des clés SSH sur GitLab

C'est quoi une clé SSH et pourquoi l'utiliser ?

Lorsque vous travaillez sur un projet, vous devez envoyer votre code vers le serveur GitLab très régulièrement. Le problème est que taper votre nom d'utilisateur et votre mot de passe à chaque fois devient vite fatigant et ralentit votre rythme de travail.

Pour régler cela, on utilise le protocole SSH (Secure Shell). Imaginez que c'est une sorte de badge magnétique pour votre ordinateur. Une fois que le serveur GitLab reconnaît ce badge, il vous laisse passer sans jamais vous redemander vos identifiants. C'est à la fois plus rapide et permet une connexion Git sécurisée.

Information

Avant de commencer ce chapitre, assurez-vous d'avoir bien installé Git sur votre système. Si ce n'est pas fait, reportez-vous au chapitre précédent sur l'installation.

Générer votre paire de clés SSH

Le principe de SSH repose sur une paire de clés. Il y a une clé privée que vous gardez précieusement sur votre machine et une clé publique que vous donnez à GitLab. C'est comme un cadenas et sa clé : vous installez le cadenas sur GitLab et vous seul possédez la clé pour l'ouvrir. Aujourd'hui, la norme de sécurité recommandée est l'algorithme ED25519.

Création de la clé sur votre ordinateur

Ouvrez votre terminal ou votre invite de commande sur Windows et tapez la commande suivante pour générer une clé SSH en remplaçant par votre email :

ssh-keygen -t ed25519 -C "votre_email@example.com"

Le système va vous poser quelques questions. Voici comment réagir :

  • Emplacement du fichier : Il vous propose un chemin par défaut dans un dossier nommé .ssh. Appuyez simplement sur Entrée pour valider.
  • Passphrase : C'est un mot de passe optionnel pour protéger votre clé. Vous pouvez en mettre un ou appuyer sur Entrée deux fois pour laisser vide.

Résultat attendu :

Generating public/private ed25519 key pair.
Enter file in which to save the key (C:\Users\Nom\.ssh/id_ed25519): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in C:\Users\Nom\.ssh/id_ed25519.
Your public key has been saved in C:\Users\Nom\.ssh/id_ed25519.pub.

Ajouter votre clé publique sur GitLab

Maintenant que vos clés sont créées, il faut configurer GitLab pour qu'il puisse vous reconnaître automatiquement grâce à votre clé publique.

Récupérer le contenu de la clé publique

Allez dans le dossier où vos clés ont été enregistrées. C'est généralement dans votre dossier utilisateur, puis dans le dossier caché .ssh. Cherchez le fichier qui possède l'extension .pub comme par exemple id_ed25519.pub.

Ouvrez ce fichier avec un bloc-notes et copiez l'intégralité du texte qui s'y trouve. Le code commence souvent par des caractères comme ssh-ed25519.

Coller la clé dans les réglages GitLab

Connectez-vous à votre interface GitLab puis suivez ce chemin :

  1. Cliquez sur votre avatar en haut à droite puis sur Edit Profile (ou Settings).
  2. Dans le menu de gauche, cliquez sur la section SSH Keys.
Menu des clés SSH dans GitLab

Dans le grand champ intitulé Key, collez le contenu que vous avez copié précédemment. GitLab devrait automatiquement lui donner un titre.

Zone de texte pour coller la clé SSH

"Collez votre clé publique ici et cliquez sur Add Key"

Validation finale

Cliquez sur le bouton Add Key. Vous verrez alors apparaître votre clé avec son Fingerprint, qui est une version courte pour l'identifier.

Clé SSH ajoutée avec succès

Vérifier que la connexion SSH fonctionne

Pour être certain que tout est bien configuré, ouvrez votre terminal et tapez cette commande de test :

ssh -T git@gitlab.com

Si c'est la première fois, le terminal vous demandera si vous faites confiance au serveur. Tapez yes. Si vous voyez un message du type Welcome to GitLab, @votre_nom !, c'est que votre clé SSH est active.

Utiliser le clonage via SSH

Maintenant que la communication est établie, vous pouvez officiellement cloner un projet GitLab via SSH. L'intérêt majeur est de supprimer définitivement la saisie répétitive de vos identifiants. Git utilisera désormais automatiquement votre "badge numérique" pour vous identifier de manière transparente auprès du serveur.

Pour tester cela, rendez-vous sur l'interface de votre projet, cliquez sur le bouton bleu Clone et récupérez l'adresse située sous la section Clone with SSH. Votre commande de clonage dans le terminal ressemblera désormais à ceci :

Bouton clone ssh gitlab
git clone git@gitlab.com:votre-pseudo/nom-du-projet.git

Gain de productivité

Une connexion SSH sécurisée est le standard absolu dans le monde professionnel. Elle permet d'automatiser tous vos échanges sans jamais sacrifier la sécurité de votre code source.

Conclusion

Félicitations ! Votre ordinateur est maintenant officiellement reconnu par votre serveur. Grâce à cette clé SSH GitLab, vous n'aurez plus jamais besoin de taper vos identifiants lors d'un push ou d'un pull. C'est une étape cruciale pour gagner en efficacité au quotidien.

Maintenant que la connexion est sécurisée, nous allons pouvoir passer aux choses sérieuses avec la création de votre premier projet sur GitLab.

Espace commentaire

Écrire un commentaire

Rejoignez la discussion

Vous devez être connecté pour poster un message.

30 commentaires

ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Parfait. N'oublie pas de vérifier régulièrement tes clés autorisées dans tes réglages GitLab si tu as des doutes sur la sécurité.

01/05/2026 à 21:31

J'ai enfin réussi à configurer le SSH, c'est tellement plus fluide merci.

01/05/2026 à 14:02
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Via l'API GitLab. Utilise curl pour supprimer la clé par son ID.

01/05/2026 à 08:49
delorme-noel
Membre Actif
Avatar de delorme-noel
delorme-noel
Membre Actif

Comment je peux supprimer une clé de mon compte GitLab via CLI ?

01/05/2026 à 02:17
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Ajoute un bloc Host dans ton ~/.ssh/config pour spécifier la clé à utiliser :

Host gitlab.com
  IdentityFile ~/.ssh/id_ed25519
30/04/2026 à 20:45
noemi44
Membre Actif
Avatar de noemi44
noemi44
Membre Actif

J'ai un souci avec mon config SSH. J'ai plusieurs clés pour différents serveurs.

30/04/2026 à 12:56
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Cool. Pense à bien sécuriser tes clés, ne partage jamais ta clé privée.

30/04/2026 à 07:30
isaac-morel
Membre Actif
Avatar de isaac-morel
isaac-morel
Membre Actif

Merci pour le guide, ça marche nickel sur mon poste.

30/04/2026 à 02:43
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Tu essaies probablement de cloner en HTTPS au lieu de SSH. Vérifie l'URL, elle doit commencer par git@gitlab.com.

29/04/2026 à 22:36
tristan-marin
Membre Actif
Avatar de tristan-marin
tristan-marin
Membre Actif

Je n'arrive pas à cloner, il me demande toujours le mot de passe de mon utilisateur système, pas celui de GitLab.

29/04/2026 à 18:33
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

C'est normal si tu as réinstallé ton système ou si GitLab a mis à jour ses serveurs. Supprime l'entrée obsolète :

ssh-keygen -f "$HOME/.ssh/known_hosts" -R "gitlab.com"
29/04/2026 à 12:29
juliette-leconte
Membre Actif
Avatar de juliette-leconte
juliette-leconte
Membre Actif

Mon terminal me dit que l'empreinte a changé, WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!. Je fais quoi ?

29/04/2026 à 07:56
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Utilise le mode verbeux de SSH :

ssh -vvvT git@gitlab.com

Tu verras exactement quel fichier il tente de lire.

29/04/2026 à 00:55
roux-pierre
Membre
Avatar de roux-pierre
roux-pierre
Membre

Comment je vérifie quel fichier de clé est utilisé pendant le push ?

28/04/2026 à 20:33
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Non, GitLab rejette les clés dupliquées entre différents utilisateurs. Chaque compte doit avoir sa propre paire de clés.

28/04/2026 à 13:37
guillon-capucine
Membre Actif
Avatar de guillon-capucine
guillon-capucine
Membre Actif

Est-ce que je peux utiliser la même clé pour plusieurs comptes GitLab ?

28/04/2026 à 05:38
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Vérifie qu'il n'y a pas de saut de ligne parasite au début ou à la fin de ta sélection. La chaîne doit commencer impérativement par ssh-ed25519.

28/04/2026 à 01:10

J'ai collé ma clé, GitLab me dit Key is invalid. J'ai pourtant fait un copier-coller propre.

27/04/2026 à 18:21
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Parce que ed25519 est plus rapide et plus robuste face aux attaques actuelles. Le RSA, c'est obsolète pour les nouvelles clés.

27/04/2026 à 11:38
gramos
Membre
Avatar de gramos
gramos
Membre

Pourquoi ed25519 et pas rsa ?

27/04/2026 à 05:33
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Oui, fais un mkdir -p ~/.ssh && chmod 700 ~/.ssh avant de générer ta clé pour éviter les soucis de permissions.

26/04/2026 à 23:34
imeunier
Membre Actif
Avatar de imeunier
imeunier
Membre Actif

Le fichier .ssh n'existe pas sur mon Linux. Je le crée à la main ?

26/04/2026 à 16:53
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Oui, sauf si tu utilises un gestionnaire de clés comme ssh-agent ou le trousseau de clés de ton OS. C'est le prix à payer pour une sécurité accrue.

26/04/2026 à 11:58

J'ai mis une passphrase lors de la création. Est-ce que je dois la taper à chaque git push maintenant ?

26/04/2026 à 06:14
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

C'est souvent un firewall ou un proxy qui bloque le port 22. Tente de tester ta connexion via le port 443 pour voir :

ssh -T -p 443 git@gitlab.com
25/04/2026 à 23:21

Rejoindre la communauté

Recevoir les derniers articles gratuitement en créant un compte !

S'inscrire