Mettre en place SSH pour Gitlab
Ce guide a pour but de t’aider à mettre en place un ordinateur pour utiliser Gitlab avec une authentification SSH. Il s’adresse aux néophytes : pour une introduction plus générale, voir le page principale sur le SSH et les astuces avancées du BR.
On décrit les étapes d’installation pour Windows 10 et 11. Pour Linux et macOS, se référer également au guide SSH principal.
La mise en place est relativement simple. Suit scrupuleusement les étapes suivantes.
Prérequis
Avant de commencer, assure-toi d’avoir git installé sur ta machine. Pour vérifier cela :
- ouvrir un terminal cmd ou powershell (touche Windows + R, puis taper
cmd
oupowershell
) ; - taper
git -v
et vérifier que git est bien installé et, si ce n’est pas le cas, installe git ici ; - taper ensuite
ssh -V
pour vérifier que ssh est installé et, si ce n’est pas le cas, installe OpenSSH ici.
Mise en place
Étape 1 : Générer une clé SSH
Ouvre un terminal (cmd ou powershell) et tape la commande suivante :
ssh-keygen -t ed25519 -C "ordi portable vaneau"
En remplaçant ordi portable vaneau
par un nom de ton choix. Tu peux laisser les autres champs vides en appuyant simplement sur la touche Entrée
pour chaque option.
À noter qu'il y a une option pour changer le nom de la clé (par défaut id_ed25519
) et l’emplacement de sauvegarde. Il y a aussi une autre option pour ajouter un mot de passe (passphrase) à la clé, qu'il est recommandé de mettre si ton disque dur n'est pas chiffré.
Étape 2 : Ajouter la clé SSH sur Gitlab
- Connecte-toi sur Gitlab avec tes identifiants Sigma BR ;
- Clique sur ton avatar en haut à gauche, puis sur
Preferences
, puis surSSH Keys
(ou va directement sur cette page) ; - Clique sur
Add new key
; - Copie le contenu du fichier
C:\Users\<ton_nom>\.ssh\id_ed25519.pub
(ou un autre chemin si tu as choisi un autre emplacement) en remplaçant<ton_nom>
par ton nom d’utilisateur Windows et colle-le dans le champKey
; - (optionnel) Supprime la date d’expiration de la clé si tu veux qu’elle reste valide indéfiniment ;
- Clique sur
Add key
.
Étape 3 : Préparer SSH pour utiliser la clé
- Ouvre le dossier
C:\Users\<ton_nom>\.ssh
sur VSCode (ou ton éditeur de texte préféré) ; - Crée un fichier
config
(sans extension) ; - Ajoute le contenu suivant :
Host gitlab.binets.fr User git IdentityFile C:\Users\<ton_nom>\.ssh\id_ed25519
En remplaçant <ton_nom>
par ton nom d’utilisateur Windows.
Étape 4 : Activer l'agent SSH
Taper ssh-add -L
- Si ta clef ssh est affichée, tout va bien, tu peux passer à l'étape suivante
- Sinon, suit ces étapes :
Sur windows
- Aller dans la recherche windows et lancer
Services
- Chercher OpenSSH Authentification Agent
- Double cliquer dessus et mettre :
Type de démarrage : Automatique
- Appuyer sur démarrer
- Dans un terminal, faire
ssh-add
Sur Linux/Mac
Voilà une solution un peu nulle qu'il faudra refaire à chaque fois que tu redémarre ton ordi. Lance un terminal et tape :
eval `ssh-agent` ssh-add
N'hésite pas à trouver une meilleure solution et à l'écrire ici.
Étape 5 : Tester la connexion SSH
Pour tester la connexion SSH, ouvre un terminal et tape la commande suivante :
ssh -T gitlab.binets.fr
Tu devrais voir un message comme ça :
The authenticity of host 'gitlab.binets.fr (129.104.201.46)' can't be established. ED25519 key fingerprint is SHA256:sn+wsip9OTBcwiY0ZplULWXNij3v3kdj/tP228i2+70. Are you sure you want to continue connecting (yes/no/[fingerprint])?
Écrit yes
puis appuie sur Entrée
.
Si tout s’est bien passé, tu devrais voir un message de bienvenue de Gitlab. Dans le cas contraire, vérifie que tu as bien suivi toutes les étapes précédentes. Si tu rencontres des difficultés, n’hésite pas à demander de l’aide au Binet Réseau en permanence ou sur PaniX.
Étape 6 : Configurer l’identité Git
Pour finir, il faut configurer correctement ton identité sur Git. Dans ton terminal, tape les commandes suivantes :
git config --global user.name "<Ton Nom>"
git config --global user.email "<ton.nom>@polytechnique.edu"
En remplaçant <Ton Nom>
par ton nom et <ton.nom>@polytechnique.edu
par les valeurs adéquates.
Félicitations ! À partir de là, tu peux utiliser Gitlab avec une authentification SSH.
Lorsque tu clones un dépôt, veille bien à choisir le lien SSH et non HTTPS.