git - remoto - por favor asegúrese que tiene los permisos de acceso correctos y que el repositorio existe




Permiso denegado(publickey) al implementar el código heroku. fatal: el extremo remoto colgó inesperadamente (20)

Al principio, asegúrese de que los archivos ocultos estén visibles en su Mac. Si no es así:

  • Abra el terminal y escriba los defaults write com.apple.Finder AppleShowAllFiles TRUE
  • killall Finder

Próximos pasos:

  • Ir a Users/user_name/.ssh/ eliminó todos los archivos.
  • Abrir el tipo de terminal en ssh-keygen -t dsa
  • Luego heroku keys:add ~/.ssh/id_dsa.pub

NB lo hice en Mac OSX 10.7.2 Lion. Aunque el procedimiento debe ser igual en otros también.

Estoy intentando implementar mi código en heroku con la siguiente línea de comandos:

git push heroku master

pero recibe el siguiente error:

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

Ya he cargado mi clave SSH pública, pero aún aparece este error.



El problema al que me enfrenté estaba en Windows e invariablemente, cuando ejecutaba las "teclas heroku: agregar" seleccionaba las teclas github. Así que aquí están los pasos que seguí para resolver el problema

  1. fue al directorio .ssh en la carpeta "Document and Settings" y eliminó las claves de git hub
  2. ejecuta el comando heroku teclas: agregar

El comando anterior me solicitó que generara una clave nueva y la siguiente fue la salida. No se pudo encontrar una clave pública existente. ¿Te gustaría generar uno? [Yn] Y Generando nueva clave pública SSH. Cargar la clave pública de SSH C: / Documents and Settings / Admin / .ssh / id_rsa.pub ... ¡listo! La gema 'heroku' ha sido desaprobada y reemplazada por Heroku Toolbelt, descargue e instale desde https://toolbelt.heroku.com .

  1. ejecute nuevamente el comando heroku keys: add

El comando anterior no proporcionará la siguiente clave pública existente encontrada de salida: C: / Documents and Settings / Admin / .ssh / id_rsa.pub Cargar SSH clave pública C: / Documents and Settings / Admin / .ssh / id_rsa.pub .. . hecho

  1. Ahora usa el git push heroku master

Para mí, siguiendo los pasos anteriores, resolví el problema y pude implementar la aplicación en la nube.


Empujar estaba trabajando para mí y luego se detuvo de repente.

Si el api de Heroku está experimentando un tiempo de inactividad, obtendrá este error cuando intente presionar.

Comprobar:

https://status.heroku.com/

antes de enloquecer demasiado duro.


Esta fue la solución para mí:

ssh-add ~/.ssh/my_heroku_key_rsa

Estaba experimentando el mismo problema; siguiendo estos pasos debería ayudar:

  1. Primero, inicia sesión: heroku login
  2. Borrar todas las teclas: teclas heroku: borrar
  3. Elimine todos los archivos en la carpeta local (todos los archivos know_host y know_host ) en la .ssh/ folder
  4. Vuelva a iniciar sesión: inicio de sesión de Heroku: aparecerá un mensaje sin clave, así que siga las instrucciones en pantalla.

Esto es lo que funcionó para mí. El sitio heroku no se está agregando a sus hosts conocidos. Vaya a los repositorios de view-git-git de window-other- show. A partir de ahí clonar el repositorio. Una vez que lo clone, elimine el repositorio que se acaba de crear y luego impórtelo desde el menú de archivo. Haga esto ya que cuando clona el repositorio, no lo agrega a la vista del explorador. Ahora deberías tener el repositorio git y la vista del explorador.


Intente reparar los permisos en la Utilidad de Discos (Mac OS X). Me ayudó


La solución de dmajkic me ayuda al fin:

Para los usuarios de Windows puede significar que: git client no pudo encontrar sus claves. Compruebe las claves en c: \ Users \ UserName.ssh \ y! variable de entorno HOME = c: \ Users \ UserName \


Me maté durante 3 días intentando todas las combinaciones posibles para que esto funcionara. Finalmente intenté hacer una clave DSA y funcionó.

Prueba DSA en lugar de RSA si no te funciona.

(Estoy usando Ubuntu 11.10, ruby ​​1.8.7, heroku 2.15.1)


Para todos aquellos que probaron todo lo mencionado anteriormente en Windows 7 y aún así no funcionó, esto es lo que he hecho: - abrir GitBash.exe desde el directorio de Git C: \ Archivos de programa (x86) \ Git \ (don ' t abrir un símbolo del sistema, esto no funcionará). - Agregue lo siguiente como se mencionó above , pero debe eliminar el #

Host heroku.com
Hostname heroku.com 
Port 22 
IdentitiesOnly yes 
IdentityFile ~/.ssh/ssh-dss
TCPKeepAlive yes 
User [email protected]

Ahora ejecuta git push heroku master y debería funcionar.


Parece que su archivo ~/.ssh/authorized_keys no está configurado correctamente. Verificalo:

  • Está en el camino correcto.
  • Los permisos del archivo son 0600.
  • Los permisos de ~/.ssh son 0700.

Seguía teniendo problemas después de probar todas estas ideas. Este fue mi problema:

Mi repositorio de heroku remoto fue funked. Lo actualicé de la siguiente manera:

git remote -v

Luego retire el heroku que está mal:

git remote rm heroku

Luego agrega el nuevo

git remote add heroku [email protected]:sitename.git

Puede obtener el nombre del sitio en la página de configuración de Heroku para su aplicación. ¡Buena suerte!


Si eres usuario de Windows, las otras soluciones aquí probablemente no resolverán tu problema.

Utilizo Windows 7 64-Bit + Git-1.7.7.1-preview20111027 y la solución fue copiar mis claves de C:\users\user\.ssh a C:\Program Files (x86)\Git\.ssh . Ahí es donde este cliente de git busca las claves cuando presiona a heroku.

Espero que esto ayude.


Si ya ha cargado la clave, intente eliminarla y vuelva a cargarla con una nueva clave.

 heroku keys:remove //removes the existing key
 ssh-keygen -t rsa //generates a new key in ~/.ssh folder
 heroku keys:add    //uploads the new key, if no arguments r passed then the key generated                              
                    //in default directroy i.e., ~/.ssh/id_rsa is uploaded
 git push heroku

Esto debería funcionar.


Solo quisiera agregar que el directorio no es necesariamente C: \ Users \ [nombre de usuario] \. Ssh. Es el directorio en el que creó su clave pública en.

Por ejemplo, mi directorio de inicio en Windows se cambió a C: \ [nombre de usuario]. Su directorio de inicio en una subcarpeta .ssh es el mejor y más probable lugar donde haya creado sus claves. Puedes verificar tu directorio de inicio en Windows con el comando:

    echo %HOMEPATH%

Tengo este problema también. Estoy usando Mac OSX. La forma en que lo arreglé fue iniciar sesión como administrador.

sudo su

contraseña


Tienes que subir tu clave pública a Heroku:

heroku keys:add ~/.ssh/id_rsa.pub

Si no tiene una clave pública, Heroku le pedirá que agregue una automáticamente que funcione a la perfección. Solo usa:

heroku keys:add

Para borrar todas tus claves anteriores haz:

heroku keys:clear

Para visualizar todas tus llaves existentes haz:

heroku keys

EDITAR:

Lo anterior no parece funcionar para mí. Había perdido el tiempo con la variable de entorno HOME y, por lo tanto, SSH estaba buscando claves en el directorio incorrecto.

Para asegurarse de que SSH verifique la clave en el directorio correcto, haga lo siguiente:

ssh -vT [email protected]

Que mostrará las siguientes líneas (muestra)

OpenSSH_4.6p1, OpenSSL 0.9.8e 23 Feb 2007
debug1: Connecting to heroku.com [50.19.85.156] port 22.
debug1: Connection established.
debug1: identity file /c/Wrong/Directory/.ssh/identity type -1
debug1: identity file /c/Wrong/Directory/.ssh/id_rsa type -1
debug1: identity file /c/Wrong/Directory/.ssh/id_dsa type -1
debug1: Remote protocol version 2.0, remote software version Twisted
debug1: no match: Twisted
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_4.6
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-cbc hmac-md5 none
debug1: kex: client->server aes128-cbc hmac-md5 none
debug1: sending SSH2_MSG_KEXDH_INIT
debug1: expecting SSH2_MSG_KEXDH_REPLY
debug1: Host 'heroku.com' is known and matches the RSA host key.
debug1: Found key in /c/Wrong/Directory/.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: 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: /c/Wrong/Directory/.ssh/identity
debug1: Trying private key: /c/Wrong/Directory/.ssh/id_rsa
debug1: Trying private key: /c/Wrong/Directory/.ssh/id_dsa
debug1: No more authentication methods to try.

Permission denied (publickey).

De lo anterior se puede observar que ssh busca las claves en el directorio /c/Wrong/Directory/.ssh que no es donde tenemos las claves públicas que acabamos de agregar a heroku (usando heroku keys:add ~/.ssh/id_rsa.pub ) ( Tenga en cuenta que en el sistema operativo Windows ~ refiere a la ruta de heroku keys:add ~/.ssh/id_rsa.pub que en Windows heroku keys:add ~/.ssh/id_rsa.pub es C:\Users\UserName )

Para ver su directorio de inicio actual, haga lo siguiente: echo $HOME o echo %HOME% (Windows)

Para configurar correctamente su directorio HOME (me refiero correctamente al directorio padre del directorio .ssh , para que ssh pueda buscar claves en el directorio correcto) consulte estos enlaces:

  1. Respuesta SO sobre cómo establecer la variable de entorno Unix de forma permanente

  2. SO Pregunta sobre ssh buscando claves en el directorio equivocado y una solución para el mismo.


Tuve el mismo problema, los pasos a continuación funcionaron para mí,

->heroku login

[email protected] y contraseña

->cd C:\Users\yourusername\.ssh    (OR for cygwin shell ->cd ~/.ssh)

->ssh-keygen -t rsa -f id_rsa

Si solicita alguna frase de contraseña, no la use en blanco, llénela con una frase de contraseña, pero no la olvide.

Después de generar la clave necesitas agregarla, así.

$ ssh-add

y eso a heroku

->heroku keys:add "id_rsa.pub"

cambiar directorio a espacio de trabajo, que

->git clone [email protected]:stark-dawn-1234.git -o heroku

use la frase de contraseña que estableció anteriormente.

En realidad, también elimino los archivos a continuación, pero no estoy seguro de que sean imp,

C: \ Users \ yourusername.heroku \ credientals y C: \ Users \ yourusername.ssh \ known_hosts


Tuve este problema cuando TortoiseGIT se instaló en mi máquina. Después de cambiar la variable de entorno GIT_SSH de

"c:\Program Files\TortoiseGit\bin\TortoisePlink.exe"

a

"c:\Program Files (x86)\Git\bin\ssh.exe"

y siguiendo este tutorial con ssh-keygen y keys:add , ¡funciona!





public-key