SSH克隆/推送到Bitbucket Forbidden



当我通过ssh进行克隆时,我会出现如下错误:

禁止致命:无法从远程存储库读取。

请确保您拥有正确的访问权限和存储库存在。

我已经学习了一些教程。pub密钥在个人设置中添加到我的帐户=>安全性=>SSH密钥

有一个故障排除页面。我用加载了密钥

ssh添加

如果我运行

ssh -T git@bitbucket.org  

我有

通过ssh密钥进行身份验证。

您可以使用git连接到Bitbucket。外壳访问被禁用

此响应不适用于任何情况,它不显示公钥错误等。最接近的情况,即正确的响应是:

authenticated via ssh key.
"conq: logged in as username."
You can use git to connect to Bitbucket. Shell access is disabled

"我的案子缺了一部分。

这就是为什么我无法通过其他帖子找到解决方案的原因。

我的端口22没有被阻塞,我可以通过ssh很好地连接到我的服务器或其他地方。我在家里做这件事,没有任何额外的防火墙。我可以使用密钥在Github上进行ssh克隆。

更新:

我删除了Bitbucket中的密钥,并尝试添加相同的密钥。它显示了一个复制错误:

有人已经添加了SSH密钥。

删除密钥后,我再次尝试ssh命令,它显示

通过ssh密钥进行身份验证。

理论上不存在重复的密钥。如果我添加了这个密钥,其他人就不能再添加了。当我删除它时,这个密钥不应该再存在于他们的数据库中,所以ssh命令应该给出无效的pubkey错误,并且当我尝试将它添加到数据库中时,不应该有重复错误。

我真的觉得我在Bitbucket上的账户有漏洞,但我真的相信这会发生。

如果您的$HOME/.ssh中有多个私钥用于访问远程存储库,则您的git命令可能使用了错误的私钥(即使您向ssh代理添加了正确的密钥并删除了其他密钥,并且ssh -T git@bitbucket.org成功(。尝试显式指定要与环境变量一起使用的SSH密钥:

GIT_SSH_COMMAND="ssh -i ~/.ssh/id_rsa_example -F /dev/null" git clone example

如果有效,请学习如何告诉git要使用哪个私钥并永久保存设置。

我的端口22没有被阻塞,我可以很好地通过ssh连接到我的服务器或其他地方。

在工作中,我还可以通过ssh连接到企业LAN(局域网(中的其他服务器。

但我肯定不能通过SSH连接到任何面向互联网的服务器。

假设这里不是这样,它可能取决于您的操作系统、SSH版本和SSH密钥。

尝试使用新密钥:ssh-keygen -P "" -t rsa -f ~/.ssh/testbb,然后将testbb.pub注册到您的帐户中。

添加一个~/.ssh/config文件,其中包含:

Host bb
Hostname bitbucket.org
User git
IdentityFile ~/.ssh/testbb

并用CCD_ 5进行测试。

如果您通过ssh -T bitbucket.org得到以下响应,那么您可以使用

authenticated via ssh key.
You can use git to connect to Bitbucket. Shell access is disabled

在我的机器上,我得到了同样的答案。我不确定你从哪里得到的信息,这个回复应该包含你的用户名,但这不是真的。

尝试一下,例如:

git clone git@bitbucket.org:atlassian/ssh-run.git

最新更新