Question Git - Autorisation refusée (publickey)


Je suis sur Mac Snow Leopard et je viens d'installer git.

J'ai juste essayé

git clone git@thechaw.com:cakebook.git

mais cela me donne cette erreur.

Référentiel Git vide initialisé dans `/ Users / nom d'utilisateur / Documents / cakebook / .git /`
Permission refusée (publickey).
fatale: L'extrémité distante a raccroché de façon inattendue

Qu'est-ce que je rate?
J'ai aussi essayé de faire ssh-keygen sans passphase mais toujours la même erreur.


439
2018-04-15 07:46


origine


Réponses:


Cette information fonctionne sur leChaw mais peut être appliquée à tous les autres dépôts git qui supportent les authentifications de clés publiques SSH. (Voir gitolite, gitlab ou github par exemple.)

Commencez par configurer votre propre paire de clés publique / privée. Ce   peut utiliser DSA ou RSA, donc, fondamentalement, toute clé que vous configurez fonctionnera.   Sur la plupart des systèmes, vous pouvez utiliser ssh-keygen.

  • D'abord, vous aurez envie de cd dans votre répertoire .ssh. Ouvrez le terminal et exécutez:      

    cd ~/.ssh && ssh-keygen

  • Ensuite, vous devez le copier dans votre presse-papiers.      
    • Sous OS X, exécutez: cat id_rsa.pub | pbcopy 
    • Sur Linux, exécutez: cat id_rsa.pub | xclip
    • Sur Windows (via Cygwin / Git Bash), exécutez: cat id_rsa.pub | clip
  • Ajoutez votre clé à votre compte via le site Web.
  • Enfin, configurez votre .gitconfig.      
    • git config --global user.name "bob"
    • git config --global user.email bob@...   (n'oubliez pas de redémarrer votre ligne de commande pour vous assurer que la configuration est rechargée)

C'est ce que vous devriez être bon pour cloner et payer.

Plus d'informations peuvent être trouvées sur https://help.github.com/articles/generating-ssh-keys (Merci à @Lee Whitney)


525
2018-04-15 07:59



Un dépannage plus étendu et même une réparation automatisée peuvent être effectués avec:

ssh -vT git@github.com

La source: https://help.github.com/articles/error-permission-denied-publickey/


148
2017-12-22 22:30



Cette erreur peut se produire lorsque vous accédez à l'URL SSH (lecture / écriture) au lieu de l'URL en lecture seule Git, mais que vous n'avez aucun accès en écriture à ce repo.

Parfois, vous voulez simplement cloner votre propre dépôt, par ex. déployer sur un serveur. Dans ce cas, vous n'avez besoin que d'un accès READ-ONLY. Mais puisque c'est le tien repo, GitHub peut afficher l'URL SSH si c'est votre préférence. Dans ce cas, si la clé publique de votre hôte distant n'est pas dans vos clés SSH GitHub, votre accès sera refusé, ce qui devrait arriver.

Un cas équivalent est lorsque vous essayez de cloner le dépôt de quelqu'un d'autre auquel vous n'avez aucun accès en écriture avec l'URL SSH.

En un mot, si votre intention est de cloner-seulement un repo, utilisez l'URL HTTPS (https://github.com/{user_name}/{project_name}.git) au lieu de l'URL SSH (git@github.com:{user_name}/{project_name}.git), ce qui évite la validation (inutile) de la clé publique.


Mise à jour: GitHub affiche maintenant HTTPS comme protocole par défaut et ce déplacement peut probablement réduire l'utilisation abusive possible des URL SSH.


122
2018-05-09 15:14



L'aide de github lien m'a aidé à régler ce problème. On dirait que la clé ssh n'a pas été ajoutée à l'agent ssh. C'est ce que j'ai fini par faire.

Commande 1:

Assurez-vous que ssh-agent est activé. La commande lance l'agent ssh en arrière-plan:

eval "$(ssh-agent -s)"

Commande 2:

Ajoutez votre clé SSH à l'agent ssh:

ssh-add ~/.ssh/id_rsa

73
2017-11-29 15:09



Notez que (au moins pour certains projets) vous devez avoir un compte github avec une clé ssh.

Regardez les clés répertoriées dans votre agent d'authentification (ssh-add -l)
  (Si vous ne voyez rien, ajoutez l'une de vos clés existantes avec ssh-add / path / to / votre / key (par exemple: ssh-add ~ / .ssh / id_rsa))
  (Si vous n'avez pas de clé, commencez par en créer une. http://rcsg-gsir.imsb-dsgi.nrc-cnrc.gc.ca/documents/internet/node31.html ou juste google ssh-keygen)

Pour vérifier que vous avez une clé associée à votre compte github:

Aller à: https://github.com/settings/ssh

Vous devriez voir au moins une clé avec une clé de hachage correspondant à l'un des hachages que vous avez vu lorsque vous avez tapé ssh-add -l il y a une minute.

Si vous ne le faites pas, ajoutez-en un, puis réessayez.


17
2018-01-17 20:13



J'ai eu une situation légèrement différente, j'ai été connecté à un serveur distant et utilisais git sur le serveur, quand j'ai couru toute commande git j'ai reçu le même message

   Permission denied (publickey).
   fatal: The remote end hung up unexpectedly

La façon dont je l'ai réparé était en changeant le fichier / etc / ssh_config sur mon Mac. de

ForwardAgent no 

à

ForwardAgent yes

12
2017-12-17 00:43



Cela fonctionne pour moi:

ssh-add ~/.ssh/id_rsa

12
2018-01-07 12:17