2010-10-29 12 views
10

Cuando intento de empujar a mi heroku.com repositorio Git remoto, me sale este mensaje:no puede empujar a git repositorio remoto: (error SSH)

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

puedo trabajar fácilmente con mi repositorio en GitHub con la misma clave ssh.

Introducción:

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

estoy en Mac OS 10.6. Y estoy muy despistado aprendiendo lentamente!

ACTUALIZACIÓN:

$telnet heroku.com 22 

da este resultado:

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

I añadido la etiqueta ssh porque es relevante para el problema, y ​​se retira el rubí-situ Rieles etiqueta porque no era. –

Respuesta

5

La conexión rechazada es un mensaje de error de TCP que indica que ese servidor no está ejecutando un servicio en ese puerto. En este caso, quizás el servidor SSH de heroku.com no se estaba ejecutando.

Si no les han dado su clave, o bien utilizar la clave privada equivocado, ssh dirá algo como esto:

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

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

(Y los mensajes anteriores indican que en este momento el servidor SSH de heroku es de hecho corriendo.)

Como no puede conectarse al mismo servidor al que puedo, tal vez haya un problema de firewall. ¿Estás detrás de un NAT? ¿Su puerta de enlace permite conexiones al puerto 22 en máquinas remotas?

Esa máquina también ejecuta un servidor web, así que intente con telnet heroku.com 80 para ver si puede conectarse a esa máquina.

+0

Error TCP ... ¿alguna sugerencia? –

+0

telnet heroku.com 80 es exitoso ... $ telnet heroku.com 80 Probando 75.101.163.44 ... Conectado a heroku.com. ---- No estoy detrás de un firewall, Y lo que es realmente extraño es $ ssh [email protected] no tiene problemas ... (y si ejecuto ssh -v [email protected], puedo ver que se está conectando a puerto 22) –

+1

Hora de preguntar a tcpdump. Pruebe algo como 'tcpdump -i -vX -s1024 host heroku.com y el puerto 22' y veamos el resultado. –

0

Es necesario empujar la clave para heroku.

Porque heroku y github son dos servicios distintos. Ellos no comparten tu llave.

+0

lo siento, mira la publicación actualizada. Soy nuevo en ssh en general. lo que quiero decir es que acabo de configurar una clave ssh por primera vez. –

+0

ejecuté el comando $ heroku keys: agregue/Users/ /.ssh/id_rsa.pub con éxito, pero sigo recibiendo el error de conexión cuando intento $ ssh [email protected] –

+1

Matt, intente 'telnet heroku .com 22' para verificar que el servicio se esté ejecutando. Debería ver algo como 'SSH-2.0-OpenSSH_5.1p1 Debian-5pgsql1' –

2

Parece que ssh-server no funcionaba o el host estaba fuera de línea. Creo que fue un problema temporal.

que estoy tratando ahora:

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 

De todos modos se puede diagnosticar haciendo ssh -v [email protected] (o vv)

+0

el resultado: OpenSSH_5.2p1, OpenSSL 0.9.8l 5 nov 2009 \\ debug1: Lectura de los datos de configuración/etc/ssh_config \\ debug2: ssh_connect: needpriv 0 \\ debug1: Conexión a heroku.com [75.101. 163.44] puerto 22. \\ debug1: conectarse a la dirección 75.101.163.44 puerto 22: conexión rechazada debug1: conexión con heroku.com [174.129.212.2] puerto 22. debug1: conectarse a la dirección 174.129.212.2 puerto 22: conexión se negó debug1: Conectándose a heroku.com [75.101.145.87] puerto 22. debug1: se conecta a la dirección 75.101.145.87 puerto 22: conexión rechazada ssh: se conecta al host heroku.com puerto 22: conexión rechazada –

+2

'ssh -v 'no ayudará (en este caso): como puede ver, es un problema de TCP. La conexión rechazada significa que la negociación de la sesión SSH ni siquiera ha comenzado. –

+0

Tengo el mismo problema ... No puedo enviar mi código para ninguna de mis aplicaciones. No puedo conectarme a heroku.com por SSH (puerto 22) para usar git: https://gist.github.com/littlepea/5538265 – littlepea

Cuestiones relacionadas