Aller au contenu
2FAAuth.Work
Langue: Français
8 min de lecture Par 2faauth.work Politique éditoriale

Comment activer la 2FA sur GitHub, GitLab et comptes de développeur

Guide pratique pour activer l'authentification à deux facteurs sur GitHub, GitLab et autres comptes de développeur : applications d'authentification, clés d'accès, clés SSH et jetons.

Pourquoi les comptes de développeurs sont des cibles de choix

Pour un attaquant, votre compte GitHub ou GitLab vaut bien plus qu'une simple connexion e-mail. Il peut contenir un accès push à des dépôts privés, des clés de déploiement, des droits de publication de paquets et des chemins directs vers l'infrastructure de production. Le compromettre, et l'attaquant hérite de vos permissions.

C'est pourquoi un seul mot de passe divulgué peut être si dommageable. Les dépôts privés peuvent contenir des fichiers de configuration, des clés API et des identifiants de base de données. Les pipelines CI transportent souvent des jetons cloud permettant de provisionner des ressources ou d'injecter du code malveillant dans les builds. Des attaquants ont utilisé des comptes de mainteneurs volés pour pousser des mises à jour avec porte dérobée vers les utilisateurs en aval.

L'industrie le sait. GitHub exige déjà l'authentification à deux facteurs pour de nombreux contributeurs actifs, et GitLab ainsi que d'autres plateformes l'encouragent fortement. L'activer vous-même vous place en avance sur la courbe plutôt que derrière une obligation.

Enfin, la sécurité des développeurs est rarement qu'une affaire personnelle. Le code source de votre employeur et les projets open source que vous maintenez dépendent tous de vos identifiants. Activer la 2FA protège vos collègues, les utilisateurs et votre propre réputation en une seule étape.

Choisir votre second facteur

Applications d'authentification (TOTP)

Des applications telles que Google Authenticator, Authy ou 1Password génèrent un code à six chiffres toutes les 30 secondes sur votre téléphone. Elles fonctionnent hors ligne, ne coûtent rien et sont bien plus difficiles à intercepter que les SMS. Pour la plupart des développeurs, c'est la base raisonnable.

Clés d'accès et clés de sécurité

Les clés d'accès (passkeys) et les clés de sécurité matérielles utilisent la cryptographie liée au domaine propre du site web, si bien qu'une page de phishing ne peut pas les tromper pour vous connecter. GitHub et GitLab les prennent tous deux en charge. Si vos dépôts ont une réelle valeur, enregistrez une clé d'accès ou une clé matérielle comme facteur principal et conservez une application TOTP en secours.

Codes SMS

Les SMS peuvent être détournés par SIM swapping et dépendent entièrement de la sécurité de votre opérateur. N'utilisez les SMS que si rien d'autre n'est disponible, et abandonnez-les dès que possible.

Codes de récupération

Lorsque vous activez la 2FA, le site propose un jeu de codes de récupération à usage unique. Générez-les, puis stockez-les hors ligne : imprimés sur papier ou dans les notes sécurisées d'un gestionnaire de mots de passe. Perdez votre téléphone sans eux, et retrouver l'accès devient une longue épreuve avec le support.

Activation de la 2FA GitHub

Connectez-vous, puis allez dans Settings > Password and authentication > Two-factor authentication et cliquez sur Enable two-factor authentication.

Enregistrer une application TOTP

GitHub affiche un code QR. Scannez-le avec votre application d'authentification (Aegis, 1Password, Google Authenticator et similaires fonctionnent tous), puis saisissez le code à six chiffres généré par l'application pour confirmer. L'application génère désormais un nouveau code toutes les 30 secondes.

Ajouter une passkey ou une clé de sécurité

Les codes TOTP peuvent être hameçonnés. Après la configuration, enregistrez une passkey ou une clé de sécurité matérielle comme seconde méthode sur la même page de paramètres. Conservez le TOTP comme solution de secours, pas comme votre seul facteur.

Télécharger les codes de récupération

GitHub propose des codes de récupération pendant la configuration. Téléchargez-les et stockez-les hors ligne — imprimés ou sur un lecteur chiffré, jamais dans un dépôt ou des notes cloud. Chaque code fonctionne une seule fois, et ils constituent le seul moyen de revenir si vous perdez tous vos seconds facteurs.

Jetons et clés SSH ensuite

Les clés SSH et les personal access tokens existants continuent de fonctionner sans modification. Les pushs HTTPS demanderont désormais une authentification par navigateur ou un jeton au lieu d'un mot de passe.

Activation de la 2FA GitLab

Dans GitLab, sélectionnez votre avatar, choisissez Préférences, ouvrez Compte dans la barre latérale de gauche, puis cliquez sur Activer l'authentification à deux facteurs.

Association de votre application

Scannez le code QR avec votre application TOTP — Aegis, 1Password, Google Authenticator ou similaire — et saisissez le code à six chiffres qu'elle génère pour confirmer l'association. Si vous préférez le matériel, vous pouvez enregistrer des appareils WebAuthn tels que des clés de sécurité ou des passkeys comme second facteur depuis la même page Compte.

Conservation des codes de récupération

GitLab affiche ensuite une liste de codes de récupération à usage unique. Chacun fonctionne une seule fois, si vous perdez un jour l'accès à votre application d'authentification. Téléchargez-les, copiez-les ou imprimez-les et conservez-les en lieu sûr, par exemple dans un gestionnaire de mots de passe. Vous pourrez générer une nouvelle liste plus tard depuis la même page, mais gardez cette première série en sécurité.

Ce qui change pour les opérations Git

Une fois la 2FA activée, votre mot de passe de compte ne fonctionne plus pour Git en HTTPS. Poussez et tirez plutôt avec un jeton d'accès personnel, ou passez à une clé SSH. Créez le jeton avant d'activer la 2FA afin de ne pas être bloqué en plein travail.

Clés SSH et jetons après l'activation de la 2FA

Une fois la 2FA activée, les pushes git par mot de passe cessent de fonctionner. Passez vos remotes en SSH pour que le travail quotidien ne demande plus aucun mot de passe :

git remote set-url origin [email protected]:owner/repo.git

Générer une clé SSH

Créez une clé moderne protégée par une passphrase :

ssh-keygen -t ed25519 -C "[email protected]"

Copiez le contenu du fichier .pub dans les paramètres de clés SSH de votre compte (GitHub : Settings → SSH and GPG keys ; GitLab : Preferences → SSH Keys). La passphrase est mise en cache par votre agent SSH, vous n'avez donc à la saisir que rarement.

Jetons pour les scripts et la CI

Les jetons d'accès personnels (personal access tokens) remplacent les mots de passe pour les appels API et les pipelines. Attribuez à chaque jeton les scopes les plus restreints possibles — un jeton qui ne peut que lire des dépôts publics ne peut pas pousser de commits malveillants.

Limiter la zone d'impact

Privilégiez les jetons fine-grained de GitHub, limités à des dépôts et des permissions spécifiques, et utilisez des clés de déploiement (deploy keys) pour les dépôts individuels sur les serveurs. Si un identifiant au périmètre restreint fuit, un attaquant obtient bien moins qu'avec votre compte complet.

Autres comptes de développeur à verrouiller

Les registres de paquets méritent la même protection que votre hébergeur Git. npm, PyPI et Docker Hub prennent tous en charge la 2FA, et npm l'exige dans certains cas. Un compte de registre compromis permet à un attaquant de publier une version falsifiée de votre paquet, qui se retrouve alors sur chaque machine qui l'installe.

Consoles cloud et fournisseurs de CI

AWS, Google Cloud, Azure et les services de CI comme les secrets GitHub Actions ou les variables GitLab CI contiennent souvent des identifiants de déploiement, des accès à des bases de données et des cartes de paiement. Activez la 2FA sur le compte de la console, puis auditez quels jobs de CI peuvent lire les secrets.

La racine de confiance

Deux comptes comptent plus que les autres :

  • E-mail — les réinitialisations de mot de passe de presque tout passent par ici
  • Gestionnaire de mots de passe — détient les clés de tous les autres comptes

Si l'un des deux tombe, un attaquant peut souvent se réinitialiser un accès à tout le reste, 2FA ou non. Protégez les deux avec le second facteur le plus fort que vous possédiez, idéalement une clé matérielle ou une application d'authentification plutôt que SMS, et ne réutilisez jamais leurs mots de passe ailleurs.

Le quotidien avec la 2FA

Une fois la 2FA activée, quelques habitudes suffisent pour la vivre sans y penser.

Protégez vos codes de récupération. Conservez-les dans un gestionnaire de mots de passe ou imprimez-en une copie et gardez-la en lieu sûr. Ne les committez jamais dans un dépôt — même privé, il peut fuiter via des tokens, des forks ou un paramètre mal configuré.

Enregistrez un second facteur de secours. Ajoutez une deuxième application TOTP ou une clé de sécurité de rechange tant que tout fonctionne. Une sauvegarde configurée après la perte de votre téléphone est une sauvegarde que vous n'avez pas.

Auditez régulièrement. Tous les deux ou trois mois, passez en revue les sessions actives et supprimez les appareils que vous n'utilisez plus. Révoquez les clés SSH obsolètes, les personal access tokens et les deploy keys — de vieux identifiants survivent souvent aux projets pour lesquels ils ont été créés. Un rappel dans le calendrier aide.

Si vous perdez tout, contactez le support de la plateforme. La récupération peut prendre des jours et implique de prouver que vous êtes propriétaire du compte ; considérez donc cette voie comme un dernier recours, pas comme un plan.

Deux minutes de configuration aujourd'hui valent mieux qu'une semaine de blocage plus tard. Activez la 2FA, enregistrez les codes, passez à autre chose.

Partager ce guide

8 min de lecture

Checklist sécurité 2FA : 12 étapes pour verrouiller vos comptes

Une checklist de sécurité pratique couvrant la configuration de la 2FA, l'hygiène des mots de passe et les options de récupération. Douze étapes concrètes à appliquer dès aujourd'hui pour blinder vos comptes contre la prise de contrôle.

Lire la suite
8 min de lecture

L'histoire de la 2FA : des jetons matériels aux passkeys

Comment l'authentification à deux facteurs a évolué, des jetons matériels à clipser et des codes SMS aux passkeys résistants au hameçonnage d'aujourd'hui — et pourquoi chaque étape a eu lieu.

Lire la suite