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 :
- Cliquez sur votre avatar en haut à droite puis sur Edit Profile (ou Settings).
- Dans le menu de gauche, cliquez sur la section SSH Keys.
Dans le grand champ intitulé Key, collez le contenu que vous avez copié précédemment. GitLab devrait automatiquement lui donner un titre.
"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.
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 :
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
Vous devez être connecté pour poster un message !
15 commentaires
merci pour la simplicité et l'efficacité de ce tuto
On avait quelques devs qui utilisaient encore HTTPS avec token perso
après ce guide sur les clés ssh, ils sont tous passés en ssh, bien plus propre et gérable centralement
une procédure claire et directe, zéro friction
Nickel pour l'automatisation des connexions Git
la sécu renforcée c'est notre priorité, ce guide y contribue
Ce guide est devenu notre référence pour la config SSH sur tous les postes dev
même les plus aguerris oublient parfois certains détails sur la création de la clé sur l'ordinateur
Adieu les mots de passe à chaque pull/push, bonheur
vérifier que la connexion ssh fonctionne avec le clonage via ssh, c'est le test ultime
Ça a sauvé la mise à plusieurs reprises où on pensait que ça marchait mais non, ce check est indispensable
Validation finale importante
C'est quoi une clé SSH et pourquoi l'utiliser, super intro
Merci pour le guide sur l'ajout de la clé publique sur GitLab
Le passage où l'on doit coller la clé dans les réglages GitLab est super clair et sécurise le processus pour les moins expérimentés
Récupérer le contenu de la clé publique, étape clé
Générer votre paire de clés SSH c'est le point de départ
SSH ED25519 enfin bien expliqué