簡體   English   中英

Git SSH公鑰被拒絕

[英]Git SSH public key denied

我正在使用 Bitbucket,並且按照此處針對 Linux(Ubuntu 13.04)的說明在 git 上設置了 ssh https://confluence.atlassian.com/pages/viewpage.action?pageId=270827678

但是,當我嘗試從我的 Bitbucket 帳戶克隆一個任何項目時,我收到一個公鑰被拒絕錯誤

omk@home-pc:/var/www/git$ sudo git clone git@bitbucket.org:MyAccount/MyProject.git
Cloning into 'MyProject'...
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

我已將公鑰添加到我的 bitbucket 帳戶中。

當我嘗試“ssh -T git@bitbucket.org”時,終端才會提示我輸入我的密碼短語,我會得到我的帳戶名作為響應。

omk@home-pc:/var/www/git$ ssh -T git@bitbucket.org
logged in as MyUsername.

You can use git or hg to connect to Bitbucket. Shell access is disabled.

我錯過了什么嗎?

更新:

在 $HOME 克隆工作正常。 問題在於必須在 /var/www/git 上使用 sudo。 有什么方法可以更改權限以避免使用 sudo?

使用ssh-add $keyfile將您的私鑰添加到代理。

然后使用ssh-add -L顯示該密鑰的公鑰。 - 驗證它與添加到您的 bitbucket 帳戶的匹配。

現在嘗試 ssh 到 bitbucket 應該會導致通過密鑰登錄,即不需要密碼。

現在git clone over ssh 也應該可以工作了。

使用sudo可能不是一個好主意。 它肯定會切斷與您的代理的連接並更改 $HOME/.ssh,因此由 sudo 啟動的 ssh 將無法使用您的密鑰。 您可以使用sudo -E來保護您的環境。 在這種情況下,密鑰應該仍然有效。

我有類似的問題,我解決了這樣的問題:首先,我啟用 passwd auth 然后添加公鑰,然后再次禁用 passwd auth。 我知道這不完全是你的問題,但我想分享我的經驗。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM