2012-01-18 14 views
14

Así que estoy tratando de desplegar mi aplicación a heroku pero sigue dándome este error cada vez que empujo al maestro:despliegue de rieles a heroku - no autorizada de acceso clave pública

! Your key with fingerprint cb:e1:5c:31:cd:6b:78:6e:30:ff:eb:11:e2:4b:2e:b3 is not authorized to access smooth-mountain-8970.

Probé de todo, desde la generación de nuevas claves ssh para eliminar todo y reemplazar los archivos. Incluso creé un nombre de usuario diferente e intenté subirlo, pero me sigue dando este error pensando que quiero subir a smooth-mountain cuando, de hecho, el nombre de mi aplicación NO es smooth-mountain. ¿Ustedes saben cuál es el problema?

Gracias.

+2

Esto es para lo que http://support.heroku.com es. – yfeldblum

+1

Es por eso que dije que lo intenté todo ... –

+2

puede agregar la salida de 'git remote -v' en la carpeta del proyecto en su máquina local. –

Respuesta

27

ssh-agent (un programa que posee claves privadas utilizadas para autenticación de clave pública) se ejecuta automáticamente desde Mac OS X Leopard. Para resolver su problema, debe eliminar las identidades del agente emitiendo el siguiente comando.

ssh-add -d 

Ejemplo:

> ssh-add -l 
1024 a3:d5:21:2d:50:ee:3e:af:1b:44:62:60:1d:e4:51:21 /Users/bart/.ssh/id_dsa (DSA) 

> ssh-add -d 
Identity removed: /Users/bart/.ssh/id_dsa (/Users/bart/.ssh/id_dsa.pub) 

> ssh-add -l 
The agent has no identities. 

Esto sólo eliminará las claves de esta sesión temporalmente. Personalmente, no me importa hacer esto de vez en cuando. Sin embargo, si desea desactivar permanentemente ssh-agent, véase: SSH Key Disable Caching

+3

En mi caso, ya que utilicé una clave diferente para Heroku (mi id_rsa ya estaba en el archivo con mi cuenta de trabajo) tuve que 'ssh-add -d' luego 'ssh-add/Users/blah/.ssh/id_heroku'. – cfeduke

4

Después cambio el nombre de mi aplicación en Heroku.com, tuve el problema:

! Your key with fingerprint xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx is not authorized to access smooth-rain-5917. 

fatal: The remote end hung up unexpectedly 

yo era probar casi todo ... como @Nosayr Yassin, dicho ...

que no tienen ningún archivo .config , pero encontré la referencia equivocado en

my_app_root_dir/.git/config

es contiene

[remote "heroku"] 
     url = [email protected]:smooth-rain-5917.git 
     fetch = +refs/heads/*:refs/remotes/heroku/* 

me cambió para:

[remote "heroku"] 
     url = [email protected]:my_new_app_name.git 
     fetch = +refs/heads/*:refs/remotes/heroku/* 

A continuación, ejecute alquilásemos

git push heroku master 

y eso es todo, por fin puedo volver a implementar mi aplicación de nuevo ..

gracias a todos sus t IPS: P

Rgds iVieL

editado: por cierto, que se ejecuta en OS X Lion :)

+0

¡Esto realmente ayudó! ¡Gracias! – BishopZ

+0

GOOOOOOOOOOOODD! ¡¡GRACIAS!! –

2

En mi caso,

heroku keys 

me haya mostrado mi llave correcta, pero todavía no podía presionar a Heroku.

Esto es lo que funcionó para mí:

ssh-add -d 
heroku keys:add ~/.ssh/id_rsa_heroku.pub 

Es decir, que trabajó para mí ayer, pero hoy ... no lo hizo.

Esto es lo que ha funcionado hoy, gracias a la ayuda de mi Unix principal jefe:

ssh-add ~/.ssh/id_rsa* 
cd ~/.ssh 
ls -l 
chmod 600 id_rsa* 
chmod 644 *.pub 
ls -l 
ssh-add id_rsa 
ssh-add id_rsa_heroku 
cd - 
1

Resuelto este tipo de problema con tan sólo escribir con cáscara locales

heroku accounts:set accountname 

donde nombredecuenta es el nombre de la cuenta que contiene la aplicación Heroku. Después de eso git push heroku master funciona bien. No tuvo que hacer nada más.

Parece que muchos han tenido este problema con varias cuentas, así que pensé en compartir esto. Yo mismo estoy administrando varias cuentas (en una sola máquina) de las cuales cada una tiene múltiples aplicaciones implementadas. Instalé el plugin heroku-accounts para Heroku CLI. (https://github.com/ddollar/heroku-accounts)

1

Encontré una solución más fácil a través de Heroku Devcenter. Esto es lo que hice para que funcione correctamente.

ssh-keygen -t rsa

Se generará el par de claves RSA pública/privada. Si ya tiene uno, pase n para no.

teclas heroku: añadir

Se encontrará clave pública existente y subir la clave pública SSH.

Eso es todo. Fue así de fácil.

Cuestiones relacionadas