2013-10-24 49 views
0

我用盡了一切我能想到的,我仍然不斷收到此錯誤:Git Clone To Server Responds權限被拒絕(publickey)。致命:遠程端掛機意外

我的步驟:

1)生成本地密鑰對的〜/ .ssh

2)將該密鑰複製到我的配置文件的BitBucket SSH密鑰。

3)增加該密鑰到我的服務器在的〜/ .ssh

是否有別的東西,我該怎麼辦?我只是做一個混帳克隆回購(SSH)

+0

究竟是什麼錯誤?也許你的SSH私鑰(chmod 400)的權限? –

+0

權限被拒絕(publickey)是它給我的唯一錯誤 –

+0

我是否需要生成私鑰?我是Git部署的絕對新手。不需要你給我一個嘖嘖,但也許讓我朝着正確的方向前進。我生成的公鑰,這就是它 –

回答

2

首先,SSH是相當挑剔你的文件和目錄權限。請仔細檢查您的.ssh目錄是否爲chmod 700,您的密鑰位於名爲id_rsa的文件中,該文件爲chmod 600,並且這兩個文件均歸您所有。

其次,是否有一個ssh代理程序運行? ssh-agent是一項服務,可以緩存您的憑證,因此您不必在每次您獲取和推送時輸入密碼,如果您想要它們,可以使用超時等。 ssh(因此git)會詢問您的代理是否在運行。

要向代理添加密鑰,請使用ssh-add。如果您的密鑰不在名爲id_rsa的文件中,您還可以通過顯式路徑添加它:ssh-add ~/.ssh/my_other_rsa。一旦添加了密鑰,您應該能夠看到在ssh-add -l輸出中列出的指紋。

如果您沒有運行代理(您會看到「Could not open a connection to your authentication agent.」),那麼它可能有助於啓動ssh-agent bash(然後添加您的密鑰)。如果有效,您可以使用some shell tricks爲服務器上的每個會話自動啓動一個。

+1

哦,我想通了。謝謝你們,事實證明我將錯誤的密鑰複製到我的服務器上的.ssh目錄中。 –

相關問題