2014-09-25 131 views
5

我一直在調試問題一兩個小時。SSH密鑰在Gitlab上詢問密碼

我目前使用的是Gitlab和Mac OS X 10.9.2。

今天,我試圖從我們的主分支git pull origin master,所以我可以得到最新的版本開發。我一直使用這些配置,並且不記得改變任何東西。此配置一直有效,並且從來沒有提示我輸入密碼。今天,我得到這個錯誤:

My-MacBook-Pro:branch_name loop$ git pull origin master

[email protected]'s password:

這裏是我的~/.ssh/權限:

My-MacBook-Pro:.ssh loop$ ls -l 

total 24 

-rw------- 1 loop staff 1766 Oct 31 2013 github_rsa 

-rw-r--r-- 1 loop staff 403 Oct 31 2013 github_rsa.pub 

-rw-r--r-- 1 loop staff 2408 Sep 15 15:08 known_hosts 

我已經試過各種事情:

  1. 重啓com.openssh.sshd

  2. 重啓org.openbsd.ssh-agent

  3. 我確保我的公鑰在Gitlab上與我的github_rsa.pub相同,並且確實是一樣的。

  4. 我已經註釋掉sshd_config年代到PasswordAuthentication no

  5. 經過/var/log/authd.log對與SSH錯誤,但沒有相關的。

可能是什麼問題?

回答

3

將文件github_rsa重命名爲id_rsa。

SSH通過您的家庭的.ssh文件夾中的「name」id_rsa來查找私鑰。

它現在不能找到它,因爲你已經重新命名了它。 PS:當您在SSH中遇到問題時,請嘗試使用選項-vvv運行它,以便您獲得詳細的輸出!

希望這可以解決問題!

Happy Gitting!

+0

如果它一直與'github_rsa'一起工作,名稱會是原因嗎?你如何運行-vvv?做'ssh -vvv'或'sshd -vvv'只會提示幫助部分彈出(指示找不到命令)。 – theGreenCabbage 2014-09-25 11:18:53

+0

它以前用於工作?你能夠無密碼訪問? – 2014-09-25 11:21:47

+0

我已將'github_rsa'的名稱更改爲'id_rsa'。在使用'git pull origin master'時,我得到如下提示:輸入密鑰'/Users/loop/.ssh/id_rsa'的密碼短語:' – theGreenCabbage 2014-09-25 11:23:34

1

通過爲沒有密碼的Gitlab生成一個新的公鑰/私鑰來解決這個問題。

創建一個新的SSH密鑰:

ssh-keygen -t rsa -C "[email protected]"

注:對於這種情況,當它提示我輸入密碼,我把它空白,因爲這關鍵是簡單地供內部使用。

轉儲內容:

cat ~/.ssh/id_rsa.pub

最後,複製的內容添加到Gitlab。