Permiso de Github denegado: el agente de adición de ssh no tiene identidades

Esta es la primera vez que accedo a github y no tengo experiencia en usar la console. Estoy en una Macbook (usando Bash). Cuando bash acceder a github, obtengo esto:

git clone git@github.com:dhulihan/league-of-legends-data-scraper.git Cloning into 'league-of-legends-data-scraper'... Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. 

Intenté seguir las instrucciones en la página de Github sobre Permiso denegado. Cuando uso ssh -vT git@github.com, obtengo lo siguiente:

 OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011 debug1: Reading configuration data /etc/ssh_config debug1: /etc/ssh_config line 20: Applying options for * debug1: Connecting to github.com [192.30.252.129] port 22. debug1: Connection established. debug1: identity file /Users/XXXX/.ssh/id_rsa type -1 debug1: identity file /Users/XXXX/.ssh/id_rsa-cert type -1 debug1: identity file /Users/XXXX/.ssh/id_dsa type -1 debug1: identity file /Users/XXXX/.ssh/id_dsa-cert type -1 debug1: Enabling compatibility mode for protocol 2.0 debug1: Local version string SSH-2.0-OpenSSH_6.2 debug1: Remote protocol version 2.0, remote software version libssh-0.6.0 debug1: no match: libssh-0.6.0 debug1: SSH2_MSG_KEXINIT sent debug1: SSH2_MSG_KEXINIT received debug1: kex: server->client aes128-ctr hmac-sha1 none debug1: kex: client->server aes128-ctr hmac-sha1 none debug1: sending SSH2_MSG_KEXDH_INIT debug1: expecting SSH2_MSG_KEXDH_REPLY debug1: Server host key: RSA 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48 debug1: Host 'github.com' is known and matches the RSA host key. debug1: Found key in /Users/XXXX/.ssh/known_hosts:1 debug1: ssh_rsa_verify: signature correct debug1: SSH2_MSG_NEWKEYS sent debug1: expecting SSH2_MSG_NEWKEYS debug1: SSH2_MSG_NEWKEYS received debug1: Roaming not allowed by server debug1: SSH2_MSG_SERVICE_REQUEST sent debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey debug1: Next authentication method: publickey debug1: Trying private key: /Users/XXXX/.ssh/id_rsa debug1: Trying private key: /Users/XXXX/.ssh/id_dsa debug1: No more authentication methods to try. Permission denied (publickey). 

A continuación, eval "$ (ssh-agent -s)" devuelve "Agent pid 2314" Sin embargo, ssh-add -l devuelve "El agente no tiene identidades".

Y ahí es donde estoy atascado. Intenté search en Google este problema y search aquí en SO. Intenté acceder a files en el directory ssh, pero no hay ninguno. Solo una carpeta llamada Knownusers.

¿Podría alguien ayudarme con este asunto?

Detalles completos en esta respuesta .

En resumen, cuando ssh-add -l retorna The agent has no identities , significa que las keys utilizadas por ssh (almacenadas en files como ~ / .ssh / id_rsa, ~ / .ssh / id_dsa, etc.) faltan, son desconocido para el agente de authentication ( ssh-agent ), o sus permissions están configurados incorrectamente (p. ej., mundo escribible).

Si faltan sus keys (es decir, no ha generado ninguna key), use 'ssh-keygen' (por ejemplo, ssh-keygen -t rsa ) para generarlas, luego use ssh-add para agregarlas.

Si existen keys pero el ssh-agent no las conoce (p. Ej., Pueden estar en una carpeta no estándar) use 'ssh-add' (por ejemplo, ssh-add /path/to/my-ssh-folder/id_rsa ) para Agregalos.

Vea esta respuesta si tiene problemas con ssh-add o ssh-agent .

testing esto:

 ssh-add ~/.ssh/id_rsa 

trabajó para mi

Me han sorprendido un rato sobre el mismo problema, que finalmente resolví.

Mi problema : no pude ejecutar ningún empuje. Pude consultar y ver mi control remoto (usando git remote -v ), pero cuando ejecuté git push origin master , me devolvió: Permission denied (publickey). fatal: Could not read from remote repository. Permission denied (publickey). fatal: Could not read from remote repository. y entonces.

Cómo lo resolví:

  • Genere una key usando ssh-keygen -t rsa . Ingresar un nombre para el file de key (cuando se le preguntó) fue inútil.
  • A continuación, podría agregar la key (a git) : ssh-add /Users/federico/.ssh/id_rsa , que ssh-add /Users/federico/.ssh/id_rsa éxito Identity added: /Users/myname/.ssh/id_rsa (/Users/myname/.ssh/id_rsa)
  • Agregué la key SSH a github usando esta página de ayuda .
  • Después de haber probado todos los commands en la página de ayuda de Github "Permiso denegado público", solo el command ssh-add -l funcionó / ​​pareció útil (después de haber ejecutado los pasos anteriores), devolvió mi key con éxito. El último paso le muestra dónde verificar su key pública en su página de GitHub. Y este command lo ayudará a verificar todas sus keys: ls -al ~/.ssh .

¡Entonces el command push eventualmente funcionó!

Espero que esto sea de ayuda ! Mejor suerte para todos.

LA RESPUESTA 2017 para MacOs Sierra & High Sierra:

PD: la mayoría de las otras respuestas te harán crear una nueva key ssh … pero no necesitas hacer eso 🙂

Como se describe en detalle en https://openradar.appspot.com/27348363 , macOS / OS X hasta que Yosemite solía recordar las keys SSH agregadas por el command ssh-add -K <key>

Así que aquí están los 4 pasos que tuve que tomar para que funcione:

1: ssh-add ~/.ssh/PATH_TO_YOUR_SSH_PRIVATE_KEY (eg ~/.ssh/id_rsa)

2: agregue lo siguiente en ~/.ssh/config

 Host * AddKeysToAgent yes UseKeychain yes IdentityFile PATH_TO_YOUR_SSH_PRIVATE_KEY (eg ~/.ssh/id_rsa) 

3: asegúrese de eliminar cualquier input de gitconfig que use osxkeychain helper:

  https://github.com/gregory/dotfiles/commit/e38000527fb1a82b577f2dcf685aeefd3b78a609#diff-6cb0f77b38346e0fed47293bdc6430c6L48 

4: reinicie su terminal para que tenga efecto.

Ejecute los siguientes commands:

 ssh-keygen -t rsa ssh-add /Users/*yourUserNameHere*/.ssh/id_rsa** pbcopy < ~/.ssh/id_rsa.pub** 

Vaya a su count de Github: https://github.com/settings/profile

1) Haga clic en: keys SSH y GPG

2) Nueva key SSH y lo pasé allí

3) Añadir key SSH

¡Hecho!