Utiliser une paire de clés SSH pour gérer vos dépôts Github. (Obligatoire après le 31-08-2021)

Publié par Geoffrey Sauvageot-Berland le

Certaines informations de ce mail ont été masqués pour des raisons de confidentialité

Bonjour à tous, aujourd’hui nous allons faire un petit point sur la « Deprecation Notice » (Décembre 2020) que github envoie par mails à ses utilisateurs qui utilisent encore l’authentification à l’ancienne (en fournissant ID/MDP à chaque  » git push »).

Si vous utilisé exclusivement GitHub desktop, vous n’êtes pas concerné par cette Deprecation Notice.

GitHub souhaite mettre de côté définitivement l’authentification classique au profit de l’authentification par SSH ou bien par token, pour l’envoi de votre code sur votre repository distant. (Pour des raisons de sécurité, d’après leur communiqué) : https://github.blog/2020-12-15-token-authentication-requirements-forhttps://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/

Dans tous les cas cela demande quelques ajustements si vous n’utilisiez pas jusqu’alors l’authentification ssh, pour vos dépôts. Nous allons voir comment générer une paire de clé ssh, et convertir le « remote url » d’un repository existant d’HTTP vers SSH.

Génération d’une paire de clé SSH

Générez votre nouvelle paire de clés ssh, par l’intermédiaire de cette commande, en fonction de l’utilisateur avec lequel vous avez l’habitude de travailler (dans mon cas c’est root) :

ssh-keygen
cat $HOME/.ssh/id_rsa.pub

Rendez vous sur ce lien, pour ajouter votre clé publique à votre compte github. https://github.com/settings/ssh/new

Une fois que vous avez ajouté celle-ci à votre compte, vous allez recevoir un mail de confirmation et celle-ci s’affichera ici :

https://github.com/settings/keys

Changer l’url d’un repository utilisant HTTPS, pour un URL utilisant SSH

root@kali:~/skdu# git remote -v 
origin  https://github.com/brlndtech/skdu.git (fetch)
origin  https://github.com/brlndtech/skdu.git (push)
root@kali:~/skdu# git remote set-url origin [email protected]:brlndtech/skdu.git
root@kali:~/skdu# git remote -v 
origin  [email protected]:brlndtech/skdu.git (fetch)
origin  [email protected]:brlndtech/skdu.git (push)
root@kali:~/skdu# 
Récupérez l’url SSH de votre repository.

Et voilà désormais si je fais une modification, je n’aurai plus à renseigner mon utilisateur et mon mot de passe à chaque fois, lors de l’envoi du code sur le repository distant.

À l’avenir, il faudra donc limiter le nombre de paire de clef SSH, si vous travaillez sur plusieurs machines (à des fins de tests notamment) comme moi, sinon cela va devenir vite le bazar. À  titre personnel je recommande l’usage de 3/4 paire de clés SSH par personne.

Pour plus d’information : https://docs.github.com/en/free-pro-team@latest/github/using-git/changing-a-remotes-url

Geoffrey pour le guide du sysops


En savoir plus sur Le Guide Du SecOps

Subscribe to get the latest posts sent to your email.


Geoffrey Sauvageot-Berland

Ingénieur diplômé par l’état en Informatique et Cybersécurité. Généraliste, à l'origine administrateur systèmes et réseaux, j’occupe actuellement un poste d’auditeur en sécurité offensive. J’apprécie également la programmation/automatisation. Fondateur du blog : "Le Guide du SecOps", anciennement "Le Guide du SysOps"

En savoir plus sur Le Guide Du SecOps

Abonnez-vous pour poursuivre la lecture et avoir accès à l’ensemble des archives.

Continue reading