2010-10-29 21 views
10

Quando tento di spingere al mio heroku.com repository git remote, ottengo questo messaggio:Non può spingere git repository remoto a: (errore SSH)

ssh: connect to host heroku.com port 22: Connection refused 

Posso facilmente lavorare con il mio repository su GitHub con la stessa chiave ssh.

Inserimento:

$ssh [email protected] #outputs: success message 
$ssh [email protected] #outputs: ssh: connect to host heroku.com port 22: Connection refused 

Sono su Mac OS 10.6. E io sono molto clueless lentamente imparando!

UPDATE:

$telnet heroku.com 22 

dà questo output:

Trying 75.101.145.87... 
telnet: connect to address 75.101.145.87: Connection refused 
Trying 75.101.163.44... 
telnet: connect to address 75.101.163.44: Connection refused 
Trying 174.129.212.2... 
telnet: connect to address 174.129.212.2: Connection refused 
telnet: Unable to connect to remote host 
+1

ho aggiunto il tag ssh, perché è rilevante per il problema, e rimosso il rubino-on tag rails perché non lo era. –

risposta

5

Connessione rifiutata è un messaggio di errore TCP che indica che quel server non sta eseguendo un servizio su quella porta. In questo caso, forse il server SSH di heroku.com non era in esecuzione.

Se non si è data loro la chiave, oppure usare la chiave privata sbagliato, ssh dirà qualcosa di simile:

[email protected]$ ssh [email protected] 
Permission denied (publickey). 

[email protected]$ ssh -i ~/.ssh/roke-frank.priv [email protected] 
Permission denied (publickey). 

(E i messaggi di cui sopra indicano che in questo momento server SSH di Heroku è davvero in esecuzione.)

Dato che non è possibile connettersi allo stesso server a cui posso, forse c'è un problema con il firewall. Sei dietro un NAT? Il tuo gateway consente connessioni alla porta 22 su macchine remote?

Quella macchina esegue anche un server Web, quindi provare telnet heroku.com 80 per verificare se è possibile connettersi a tale macchina.

+0

Errore TCP ... qualche suggerimento allora? –

+0

telnet heroku.com 80 ha avuto successo ... $ telnet heroku.com 80 Cercando 75.101.163.44 ... Connesso a heroku.com. ---- Non sono dietro un firewall, E ciò che è veramente strano è $ ssh [email protected] non ha problemi .. (e se corro ssh -v [email protected], posso vedere che si sta connettendo a porta 22) –

+1

Tempo di chiedere tcpdump. Prova qualcosa come 'tcpdump -i -vX -s1024 host heroku.com e porta 22' e vediamo l'output. –

0

È necessario spingere la vostra chiave per Heroku.

Perché heroku e github sono due servizi distinti. Non condividono la tua chiave.

+0

scusa, guarda il post aggiornato. Sono nuovo di ssh in generale. quello che voglio dire è che ho appena configurato una chiave SSH per la prima volta. –

+0

Ho eseguito il comando $ heroku keys: add/Users/ /.ssh/id_rsa.pub con successo, ma sto ancora ricevendo l'errore di connessione quando provo $ ssh [email protected] –

+1

Matt, prova 'telnet heroku .com 22' per verificare che il servizio sia effettivamente in esecuzione. Dovresti vedere qualcosa come 'SSH-2.0-OpenSSH_5.1p1 Debian-5pgsql1' –

2

Sembra che ssh-server non funzionasse o che l'host fosse offline. Penso che sia stato un problema temporaneo.

sto provando ora:

telnet heroku.com 22 
Trying 174.129.212.2... 
Connected to heroku.com (174.129.212.2). 
Escape character is '^]'. 
SSH-2.0-OpenSSH_5.1p1 Debian-5pgsql1 

In ogni caso è possibile diagnosticare facendo ssh -v [email protected] (o -vv)

+0

il risultato: OpenSSH_5.2p1, OpenSSL 0.9.8l 5 nov 2009 \\ debug1: Lettura dati di configurazione/etc/ssh_config \\ debug2: ssh_connect: needpriv 0 \\ debug1: Collegamento a heroku.com [75,101. 163.44] porta 22. \\ debug1: connessione all'indirizzo 75.101.163.44 porta 22: Connessione rifiutata debug1: Connessione a porta heroku.com [174.129.212.2] 22. debug1: connessione all'indirizzo 174.129.212.2 porta 22: Connessione rifiutato debug1: connessione a heroku.com [75.101.145.87] porta 22. debug1: connessione all'indirizzo 75.101.145.87 porta 22: connessione rifiutata ssh: connessione a host porta heroku.com 22: connessione rifiutata –

+2

'ssh -v 'non aiuterà (in questo caso): come puoi vedere, è un problema TCP. Connessione rifiutata significa che la negoziazione della sessione SSH non è nemmeno iniziata. –

+0

Ho lo stesso problema ... Non riesco a spingere il mio codice per nessuna delle mie applicazioni. Non riesco a collegarmi a heroku.com tramite SSH (porta 22) per utilizzare git: https://gist.github.com/littlepea/5538265 – littlepea

Problemi correlati