19 votes

Comment configurer l'authentification basée sur une clé SSH pour GitHub en utilisant le fichier ~/.ssh/config ?

J'essaie de configurer mes clés SSH pour GitHub et j'ai créé une nouvelle clé SSH pour cela. J'ai réussi à configurer la clé SSH mais je souhaite conserver ces paramètres et les enregistrer dans le fichier de configuration. ~/.ssh/config qui n'est pas disponible. Où puis-je ajouter ce chemin clé pour conserver la configuration ?

31voto

pa4080 Points 27038

Voici un court manuel sur la façon de configurer l'authentification basée sur une clé SSH pour GitHub.

1. Installer le openssh-client s'il n'est pas déjà installé, et bien sûr git :

sudo apt update && sudo apt install -y openssh-client git

2. Créez le répertoire ssh de l'utilisateur et un sous-répertoire où sera stockée votre clé ssh dédiée à GitHub :

mkdir -p -m 700 ~/.ssh/github
  • l'option -m 700 と同じです。 chmod 700 ~/.ssh ~/.ssh/github .

3. Générer la clé SSH (la clé de sortie aura des permissions octales) 600 ) :

ssh-keygen -t rsa -b 4096 -C 'your@email.com' -f ~/.ssh/github/id_rsa -q -N ''
  • -q - silence ssh-keygen ; -N '' - vide (sans) phrase de passe, vous pouvez en attribuer une si vous le souhaitez.

4. Copier le contenu du fichier id_rsa.pub , utilisez la commande suivante pour l'afficher :

cat ~/.ssh/github/id_rsa.pub

5. Allez sur votre compte GitHub et suivez ces étapes :

  • Dans le menu déroulant situé dans le coin supérieur droit, sélectionnez Paramètres .
  • Ensuite, dans le menu de gauche, sélectionnez Clés SSH et GPG .
  • Cliquez sur le Nouvelle clé SSH botón.
  • Tapez quelque chose de significatif pour un Titre et coller le contenu de ~/.ssh/github/**id_rsa.pub** dans le domaine Clé .
  • Cliquez ensuite sur le Ajouter une clé SSH botón.

enter image description here

6. Créer le ~/.ssh/**config** s'il n'existe pas déjà :

touch ~/.ssh/config
chmod 600 ~/.ssh/config

Modifier le config et ajoutez l'entrée suivante pour la nouvelle clé SSH :

Host github.com
    IdentityFile ~/.ssh/github/id_rsa

7. Testez la configuration. Utilisez la commande suivante :

ssh -T git@github.com

Sur la question - Êtes-vous sûr de vouloir continuer à vous connecter (oui/non) ? - répondre avec oui . Si tout s'est bien passé, vous devriez recevoir un message d'accueil comme celui-ci :

Hi pa4080! You've successfully authenticated, ...

Comment utiliser la clé SSH.

1. Si vous avez déjà cloné le dépôt par HTTPS, en utilisant une commande comme celle-ci :

git clone https://github.com/username/repository-name.git
git clone git://github.com/username/repository-name

Allez dans le répertoire du dépôt et exécutez la commande suivante pour permettre le travail via SSH :

git remote set-url origin git@github.com:username/repository-name.git

2. Clonage direct d'un référentiel via SSH :

git clone git@github.com:username/repository-name.git

3. En outre, si vous utilisez VSC il fonctionnera sans problème avec cette configuration. Pour les dépôts déjà clonés, utilisez simplement l'option Ouvrir le dossier et toutes les fonctionnalités de VSC Git fonctionneront.

1voto

Jan Myszkier Points 1163

Ce fichier n'est pas disponible par défaut. Vous devez le créer. Veuillez noter que les clés SSH et les ~/.ssh/config sont des fichiers séparés (avec des objectifs différents).

vos clés SSH sont stockées dans ~/.ssh (utiliser ls -al ~/.ssh pour les voir tous) et votre configuration SSH est stockée dans le répertoire ~/.ssh/config. Si vous ne l'avez pas, n'hésitez pas à utiliser touch ~/.ssh/config pour le créer.

Si vous voulez utiliser votre clé avec github/bitbucket/gitlab, utilisez ce qui suit :

eval `ssh-agent`
ssh-add ~/.ssh/id_rsa 

dans le cas ci-dessus id_rsa est le nom de votre fichier de clé privée SSH, il suffit de le remplacer par le nom de votre fichier de clé privée réel.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X