2010-10-29 77 views
10

當我試圖推到我的heroku.com遠程git倉庫,我得到這個消息:不能推GIT中遠程倉庫:(SSH錯誤)

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

我可以用我的倉庫在github 工作輕鬆使用相同的ssh密鑰。

請輸入:

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

我在Mac OS 10.6。而我 很無知 慢慢學習!

UPDATE:

$telnet heroku.com 22 

給出了這樣的輸出:

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

我加入了SSH標籤,因爲它是相關的問題,並取消了紅寶石導通鐵軌標籤,因爲它不是。 – 2010-10-29 07:47:10

回答

5

拒絕連接是一個TCP錯誤消息,指出該服務器未在該端口上運行服務。在這種情況下,或許heroku.com的SSH服務器沒有運行。

如果你還沒有給他們你的鑰匙,或者你使用了錯誤的私鑰,SSH會說這樣的事情:

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

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

(和上面的消息表明,現在Heroku的SSH服務器確實運行。)

由於您無法連接到可以連接到的服務器,所以可能存在防火牆問題。你在NAT後面嗎?您的網關是否允許連接到遠程機器上的端口22?

該機器也運行Web服務器,因此請嘗試telnet heroku.com 80以查看是否可以連接到該機器。

+0

TCP錯誤...然後有什麼建議? – 2010-10-29 07:47:18

+0

telnet heroku.com 80成功... $ telnet heroku.com 80 嘗試75.101.163.44 ... 連接到heroku.com。 ----我不在防火牆後面,真正奇怪的是$ ssh [email protected]沒有問題..(如果我運行ssh -v [email protected],我可以看到它連接在端口22) – 2010-10-29 23:36:41

+1

請問tcpdump的時間。嘗試像'tcpdump -i <您的界面> -vX -s1024主機heroku.com和端口22',讓我們看看輸出。 – 2010-10-30 07:50:10

0

你需要把你的關鍵的Heroku。

因爲heroku和github是兩個截然不同的服務。他們不會分享你的鑰匙。

+0

對不起,請參閱更新後的帖子。一般來說,我是新手。我的意思是我第一次配置了一個ssh密鑰。 – 2010-10-29 07:44:00

+0

我跑的命令$ heroku鍵:添加/ Users/ /.ssh/id_rsa.pub成功,但我仍然得到連接錯誤,當我嘗試$ ssh [email protected] – 2010-10-29 07:44:49

+1

馬特,嘗試'telnet heroku .com 22'來檢查服務是否正在運行。你應該看到像'SSH-2.0-OpenSSH_5.1p1 Debian-5pgsql1' – 2010-10-29 07:49:57

2

看來ssh-server無法正常工作或主機處於脫機狀態。 我認爲這是暫時的麻煩。

我想現在:

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 

反正你可以做診斷ssh -v [email protected](或-vv)

+0

結果: OpenSSH_5.2p1,OpenSSL的0.9.8l 2009年11月5日\\ DEBUG1:讀取配置數據的/ etc/ssh_config中\\ DEBUG2:ssh_connect:needpriv 0 \\ DEBUG1:連接到heroku.com [75.101。 163.44]端口22. \\ debug1:連接到地址75.101.163.44端口22:連接被拒絕 debug1:連接到heroku.com [174.129.212.2]端口22. debug1:連接到地址174.129.212.2端口22:連接拒絕 調試1:連接到heroku.com [75.101.145.87]端口22. debug1:連接到地址75.101.145.87端口22:連接被拒絕 ssh:連接到主機heroku.com端口22:連接被拒絕 – 2010-10-30 00:12:19

+2

'ssh -v '不會幫助(在這種情況下):正如你所看到的,這是一個TCP問題。連接被拒絕意味着協商SSH會話甚至還沒有開始。 – 2010-10-30 18:52:56

+0

我有同樣的問題...我無法將我的代碼推送到我的任何應用程序中。我無法通過SSH(端口22)連接到heroku.com以使用git:https://gist.github.com/littlepea/5538265 – littlepea 2013-05-08 04:50:01