publickey permission ionicjs bash github ssh permission-denied public-key

bash - ionicjs - permission denied(publickey) git windows



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

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

git clone [email protected]: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 [email protected], 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é buscar en Google este problema y buscar aquí en SO. Intenté acceder a archivos en el directorio ssh, pero no hay ninguno. Solo una carpeta llamada Knownusers.

¿Podría alguien ayudarme con este asunto?


Después de luchar por mucho tiempo, finalmente pude resolver este problema en Windows. Para mí, la variable de env del usuario GIT_SSH estaba configurada para apuntar a

"C: / Archivos de programa (x86) / WinScp / PuTTY / plink.exe"

que fue instalado junto con WinScp. Cambié el señalador para usar el ssh.exe predeterminado que viene con git-scm "C: / Archivos de programa / Git / usr / bin / ssh.exe"


Detalles completos en esta answer .

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

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

Si existen claves 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 answer si tiene problemas con ssh-add o ssh-agent .


Ejecute los siguientes comandos:

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

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

1) Haga clic en: claves SSH y GPG

2) Nueva clave SSH y lo pasé allí

3) Añadir clave SSH

¡Hecho!


Esto podría causar un nuevo terminal, la identificación del agente es diferente. Necesita agregar la clave privada para el agente

$ ssh-add <path to your private key>


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

Mi problema : no pude ejecutar ningún empuje. Pude comprobar 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 clave usando ssh-keygen -t rsa . Ingresar un nombre para el archivo de clave (cuando se le preguntó) fue inútil.
  • A continuación, podría agregar la clave (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 clave SSH a github usando esta página de ayuda .
  • Después de haber probado todos los comandos en la página de ayuda de Github "Permiso denegado público", solo el comando ssh-add -l funcionó / ​​pareció útil (después de haber ejecutado los pasos anteriores), devolvió mi clave con éxito. El último paso le muestra dónde verificar su clave pública en su página de GitHub. Y este comando lo ayudará a verificar todas sus claves: ls -al ~/.ssh .

¡Entonces el comando push eventualmente funcionó!

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


Un elemento adicional que me di cuenta es que normalmente la carpeta .ssh se crea en su carpeta raíz en Mac OS X / Users /. Si intentas usar ssh -vT [email protected] desde otra carpeta, te dará un error incluso si hubieras agregado la clave correcta.

Necesita volver a agregar la clave (ssh-add ''ruta correcta a id_rsa'') desde la carpeta actual para autenticarse correctamente (suponiendo que ya ha cargado la clave en su perfil en Git)


en primer lugar, debe ir en su directorio ssh
para este tipo de comando siguiente en su terminal en mac o lo que sea que use en la ventana

cd ~/.ssh

ahora está en el ssh
Aquí puede encontrar todas sus claves / archivos relacionados con sus proyectos. ahora, escriba el siguiente comando para mostrarle si hay alguna clave ssh disponible

ls

esto te mostrará todos los ssh disponibles, en mi caso había dos
ahora, tendrá que iniciar un agente para agregar un ssh en él. Para este tipo de comando siguiente

eval "$(ssh-agent -s)"

ahora último pero no menos importante, agregará un ssh en este tipo de agente siguiente comando

ssh-add ~/.ssh/your-ssh

reemplazar

reemplace su-ssh con su nombre de archivo ssh, que obtuvo una lista del segundo paso ls command


prueba esto:

ssh-add ~/.ssh/id_rsa

trabajó para mi


LA RESPUESTA 2017 para MacOs Sierra & High Sierra:

PD: la mayoría de las otras respuestas te harán crear una nueva clave 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 claves SSH agregadas por el comando 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 (e.g. ~/.ssh/id_rsa)

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

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

4: reinicie su terminal para que tenga efecto.