[英]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.