2012-01-18 20 views
14

Così sto cercando di distribuire la mia app per Heroku ma continua a darmi questo errore ogni volta che spingo da padroneggiare:implementano rotaie a Heroku - non autorizzato di accesso a chiave pubblica

! 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.

ho provato di tutto da generare nuove chiavi ssh per cancellare tutto e sostituire i file. Ho persino creato un nome utente diverso e ho provato a caricare, ma continua a darmi questo errore pensando di voler caricare su smooth-mountain quando, in effetti, il mio nome dell'app NON è smooth-mountain. Ragazzi, sapete quale potrebbe essere il problema?

Grazie.

+2

Ecco a cosa serve http://support.heroku.com. – yfeldblum

+1

Ecco perché ho detto di aver provato tutto ... –

+2

puoi aggiungere l'output di 'git remote -v' nella cartella del progetto sul tuo computer locale. –

risposta

27

ssh-agent (un programma che contiene chiavi private utilizzate per l'autenticazione della chiave pubblica) viene eseguito automaticamente da Mac OS X Leopard. Per risolvere il tuo problema devi rimuovere le identità dall'agente emettendo il seguente comando.

ssh-add -d 

Esempio:

> 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. 

Questo consente di eliminare solo le chiavi da questa sessione temporanea. Personalmente, non mi dispiace farlo ogni tanto. Tuttavia, se si desidera disabilitare ssh-agent in modo permanente, vedere: SSH Key Disable Caching

+3

Nel mio caso da quando ho usato una chiave diversa per Heroku (il mio id_rsa era già in archivio con il mio account di lavoro) ho dovuto 'ssh-add -d' quindi 'ssh-add/Users/blah/.ssh/id_heroku'. – cfeduke

4

Dopo rinomino mia app a Heroku.com, ho avuto il 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 

ero provare quasi tutto ... come @Nosayr Yassin, ha detto ...

non ho alcun file di .config, ma ho trovato il riferimento sbagliato al

my_app_root_dir/.git/config

è contiene

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

ho cambiato per:

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

Quindi, eseguire agian

git push heroku master 

e il gioco è fatto, finalmente posso ri-distribuire nuovamente la mia app ..

thks per tutto il vostro t IPS: P

Rgds iVieL

modificato: btw, ho in esecuzione su OSX Lion :)

+0

Questo davvero aiutato! Grazie! – BishopZ

+0

GOOOOOOOOOOOODD! GRAZIE!! –

2

Nel mio caso,

heroku keys 

mi ha mostrato la mia chiave corretta, ma ho ancora non potevo spingere a Heroku.

Questo è ciò che ha funzionato per me:

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

Cioè, ha funzionato per me ieri, ma oggi ... non ha fatto.

Questo è ciò che ha funzionato oggi, grazie all'aiuto di mia Unix-master capo:

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

risolto questo tipo di problema semplicemente digitando in guscio locale

heroku accounts:set accountname 

dove nomeaccount è il nome dell'account che contiene l'app Heroku. Dopo di che git push heroku master funziona correttamente. Non dovevo fare nient'altro.

Sembra che molti abbiano avuto questo problema con più account, quindi ho pensato di condividerlo. Sono io stesso a gestire più account (su una singola macchina) di cui ciascuno ha distribuito più app. Ho installato il plugin heroku-account per la CLI di Heroku. (https://github.com/ddollar/heroku-accounts)

1

Ho trovato una soluzione più semplice tramite Heroku Devcenter. Ecco cosa ho fatto per farlo funzionare correttamente.

ssh-keygen -t rsa

Esso genera la coppia di chiavi RSA pubblica/privata. Se ne hai già uno allora passa n per no.

chiavi Heroku: aggiungere

Esso troverà la chiave pubblica esistente e caricare la chiave pubblica SSH.

Questo è tutto. E 'stato così facile.

Problemi correlati