Comment sécuriser l’accès à Github avec une clé SSH
Lier une clé SSH à Github est l’une des étapes clés pour sécuriser votre compte. Il vous permet d’exploiter la puissance de la cryptographie à clé publique pour protéger vos référentiels Git. Cet article vous montrera ce que sont les clés SSH et comment vous pouvez les utiliser pour renforcer votre compte Github.
Que sont les clés SSH ?
En résumé, les clés SSH sont des clés publiques que vous stockez sur un serveur distant. Ceux-ci agissent comme un proxy d’authentification qui vous permet de vous connecter et d’interagir avec des machines sans fournir de nom d’utilisateur ni de mot de passe.
La façon dont cela fonctionne est que chaque fois que vous vous connectez à une machine via SSH, votre ordinateur local envoie un message signé par votre clé SSH privée. La machine distante utilise ensuite votre clé publique SSH pour vérifier l’authenticité du message et vous connecter.
Github utilise la même approche pour vérifier votre identité sur ses serveurs. Le site Web utilise votre clé publique chaque fois que vous téléchargez et modifiez votre référentiel. Cela garantit que vous n’exposez pas vos informations d’identification Github lorsque vous envoyez des validations.
Générer des clés SSH pour Github
Pour commencer, ouvrez une nouvelle session de terminal à l’aide du lanceur d’applications de votre distribution.
Assurez-vous que vous avez installé OpenSSH sur votre ordinateur et que le démon de l’agent SSH est actuellement en cours d’exécution :
Exécutez la commande suivante pour démarrer l’assistant de Génération de clé SSH :
L’assistant vous demandera alors si vous souhaitez utiliser un nom de fichier de clé SSH personnalisé pour votre clé. Appuyez sur Enter pour accepter le nom et l’emplacement par défaut.
Tapez un mot de passe pour votre nouvelle clé SSH. Cela servira de phrase secrète de votre machine locale chaque fois qu’elle se connectera à votre compte Github.
Ajoutez votre clé SSH nouvellement générée à votre agent SSH en cours d’exécution :
Ajout de clés SSH à Github
Une fois votre nouvelle clé SSH opérationnelle, vous pouvez désormais lier votre machine locale à votre compte Github. Pour commencer, exécutez la commande suivante pour imprimer votre clé publique SSH :
Mettez en surbrillance votre clé publique SSH, appuyez sur Clic droit puis sélectionnez « Copier ».
Ouvrez une nouvelle session de navigateur, puis accédez à votre page d’accueil Github.
Cliquez sur l’icône de votre profil dans le coin supérieur droit de la page.
Cliquez sur « Paramètres » dans la liste déroulante.
Sélectionnez « Clés SSH et GPG » dans la barre latérale gauche de la page des paramètres.
Cliquez sur le bouton « Nouvelle clé SSH » à côté de l’en-tête « Clés SSH ».
Sélectionnez la zone de texte « Titre », puis indiquez un nom pour votre clé.
Cliquez sur la zone de texte « Clé », puis appuyez sur Ctrl + V pour coller votre clé SSH.
Cliquez sur « Ajouter une clé SSH » pour valider vos nouveaux paramètres.
Ouvrez une nouvelle session de terminal et exécutez la commande suivante :
Tapez « oui », puis appuyez sur Enter.
Cela démarrera une nouvelle session SSH sur l’un des serveurs de réception de Github. Si votre clé fonctionne correctement, un court message apparaîtra accusant réception de votre connexion SSH.
Gestion des clés SSH
Bien qu’une seule clé SSH soit suffisante pour la plupart des utilisateurs, il existe des cas où vous devez synchroniser un référentiel Git hébergé sur plusieurs machines. Pour ce faire, vous devez importer des clés SSH spécifiques à la machine.
Ouvrez une nouvelle session de terminal sur l’ordinateur que vous souhaitez lier à Github.
Assurez-vous que le démon OpenSSH est à la fois installé et en cours d’exécution sur le système :
Exécutez la commande suivante pour créer une clé SSH distincte pour votre nouvelle machine :
Tapez une phrase secrète sécurisée pour votre nouvelle clé SSH, puis appuyez sur Enter.
Ajoutez votre nouvelle clé alternative à votre agent SSH :
Imprimez le contenu de votre clé publique SSH, puis copiez-le dans le presse-papier de votre système :
Revenez à la page « Clés SSH et GPG » de votre compte Github.
Cliquez à nouveau sur le bouton « Nouvelle clé SSH ».
Fournissez une étiquette unique pour votre nouvelle clé, puis collez le contenu de votre presse-papiers sous la zone de texte « Clé ».
Cliquez sur « Ajouter une clé SSH » pour appliquer vos nouveaux paramètres.
Testez si votre nouvelle machine utilise votre clé sécurisée pour vous connecter à Github en vous connectant via SSH :
En plus d’envoyer des clés nouvellement générées à Github, vous pouvez également modifier les clés SSH existantes que vous avez déjà sur votre machine. Cela peut être utile si vous utilisez déjà des clés SSH comme connexion sans mot de passe sous Linux.
Pour modifier une clé existante, accédez au répertoire « .ssh » de votre machine :
Exécutez ssh-keygen
avec les indicateurs -p
, -o
et -f
avec votre Clé SSH. Cela vous permettra de changer le mot de passe sur une clé privée existante :
Vous pouvez également modifier l’adresse e-mail intégrée dans votre clé publique en utilisant l’indicateur -c
:
Rechargez votre agent SSH avec votre clé nouvellement mise à jour :
Remplacez la clé publique SSH correspondante de votre profil Github.
Suppression des clés SSH de Github
Ouvrez une nouvelle session de terminal, puis démarrez le démon de l’agent SSH :
Exécutez la commande suivante pour supprimer la clé privée SSH dans votre machine :
Revenez à la catégorie « Clés SSH et GPG » de votre compte Github.
Faites défiler la liste des clés SSH sur cette page, puis cliquez sur « Supprimer » sur celle que vous souhaitez supprimer.
Cliquez sur « Je comprends, supprimez cette clé SSH ».
Assurez-vous que votre ancienne clé SSH est désormais obsolète en démarrant une session SSH sur l’un des serveurs de Github :
Associer une clé SSH pour sécuriser votre compte Github n’est que la première étape pour comprendre le fonctionnement de la cryptographie et du chiffrement à clé publique. Apprenez-en davantage sur le chiffrement des données au repos en créant une sauvegarde cloud chiffrée à l’aide de Rclone.
En attendant, vous pouvez également en savoir plus sur la gestion automatique des dépôts en en utilisant les hooks Git.
Crédit image : Roman Synkevych via Unsplash. Toutes les modifications et captures d’écran par Ramces Red.
Laisser un commentaire