Aller au contenu principal

Générer une clé SSH

Comment générer une clé SSH et l'ajouter à son compte GitHub ?

Notions théoriques

Une clé SSH est une méthode d'authentification qui vous permet de vous connecter à un serveur sans avoir à entrer votre nom d'utilisateur et votre mot de passe à chaque fois.

C'est particulièrement utile lorsque vous travaillez avec Git et GitHub.

Voici comment générer une clé SSH sous Windows, l'ajouter à GitHub et cloner un dépôt avec ``git clone git@github.com:PrenomNom/depot.

  1. Générer une clé SSH : Ouvrez Git Bash et tapez la commande ssh-keygen -t rsa -b 4096 -C "votre_email@example.com". Suivez les instructions à l'écran. Cela générera une nouvelle clé SSH dans le dossier ~/.ssh de votre répertoire utilisateur.

  2. Ajouter la clé SSH à GitHub : Ouvrez le fichier ~/.ssh/id_rsa.pub avec un éditeur de texte et copiez son contenu. Connectez-vous à votre compte GitHub, allez dans les paramètres de votre compte, puis dans la section SSH et GPG keys. Cliquez sur "New SSH key", collez votre clé dans le champ "Key" et donnez-lui un titre. Enfin, cliquez sur "Add SSH key".

  3. Cloner un dépôt avec SSH : Maintenant que vous avez ajouté votre clé SSH à GitHub, vous pouvez cloner des dépôts en utilisant SSH plutôt que HTTPS. La commande est ``git clone git@github.com:PrenomNom/depot.

Si erreur Permission denied

Comment corriger l’erreur :

ou

Tout d’abord il va falloir générer une clé ssh :

Laissez par défaut l’endroit où il va se créer qui normalement est /home/nom_d'utilisateur/.ssh Et ne mettez surtout pas de passphrase, laissez le vide ! une fois créé, ouvrez son contenu :

Il devrait s’afficher ceci, dans le cas présent, il est flouté car vous devrez garder cette clé au chaud et ne la confier à personne.

Allez sur github et allez dans les settings de votre compte :

Puis dans SSH and GPG keys

Par la suite, créer une nouvelle clé ssh

Puis coller votre clé publique que vous avez copier auparavant et mettez la ici.

Revenez ensuite dans /var/www/

Nous allons ensuite :

  • créer un groupe nommé web et ajouter notre utilisateur à l’intérieur :

  • changer le groupe propriétaire du répertoire html

  • donner les permissions d'écriture et d'exécution au groupe propriétaire :

Une fois fait il faudra faire un git clone uniquement avec celui en SSH !

Tapez cette commande, afin de se reconnecter (pour prendre en compte l'ajout de l'utilisateur dans le groupe) :

Et le tour est joué, nous pouvons enfin faire un git clone

Test de mémorisation/compréhension


Quelle commande permet de générer une clé SSH ?


Où est stockée la clé SSH générée ?


Comment ajouter une clé SSH à GitHub ?


Quelle commande permet de cloner un dépôt en utilisant SSH ?


Quel est l'avantage d'utiliser SSH avec Git et GitHub ?


TP pour réfléchir et résoudre des problèmes

Votre mission est de générer une clé SSH, de l'ajouter à votre compte GitHub et de cloner votre dépôt distant en utilisant SSH.

  1. Ouvrir le dossier Bureau dans l'Explorateur de fichiers
  2. Ouvrir une Invite de commandes dans ce dossier Bureau
  3. Générez une clé SSH.
  4. Ajoutez cette clé à votre compte GitHub :
    • Ouvrez le fichier ~/.ssh/id_rsa.pub avec un éditeur de texte et copiez son contenu.
    • Connectez-vous à votre compte GitHub, allez dans les paramètres de votre compte, puis dans la section SSH et GPG keys.
    • Cliquez sur "New SSH key", collez votre clé dans le champ "Key" et donnez-lui le nom "NDLP".
    • Enfin, cliquez sur "Add SSH key".
  5. Vérifiez sur GitHub que vous avez bien accès à votre dépôt distant, avec la commande ssh -T git@github.com.
Une solution