无法 git 通过 ssh 克隆 bitbucket

Unable to git clone bitbucket over ssh

我创建了 public 和私钥,并将 public 密钥添加到 Bitbucket 存储库。

这些 private/public 密钥对在我希望克隆到的用户帐户的 .ssh 文件夹中可用。

尝试使用 SSH 进行克隆会导致连接被拒绝:

这让我相信 Bitbucket project/server 没有为 ssh 配置,或者这可能是我公司网络的 firewall/port 问题。但是7999端口和22端口是开放的

这让我研究了使用 ssh 进行克隆的其他方法,但是通过此处所述的 http 进行克隆(以防端口 22 或 7999 被阻止):https://support.atlassian.com/bitbucket-cloud/docs/troubleshoot-ssh-issues/ 

为此,我修改了我的 ssh 配置,如下所示:

这样做让我至少可以与 bitbucket 建立连接,但它的行为就好像请求是错误的:

这让我相信我可能错误地签署了证书所以我尝试了这样的风格:https://unix.stackexchange.com/questions/503851/how-to-generate-a-certificate-file-which-to-be-used-with-ssh-config 

添加 ssh 配置中提供的证书文件。听起来我需要添加用于签署用户密钥(生成证书)的私钥的 public 密钥。但是,我无法访问 bitbucket 服务器上可用证书的私钥。

另外,我能够从 altssh.bitbucket.di2e.net:443 获取 public 证书,我确实尝试使用它,但仍然收到一个错误的请求...这使用 PEM 格式可能没有意义,但我认为值得一试。

openssl s_client connect altssh.bitbucket.di2e.net:443 < /dev/null | sed -ne '/-BEGIN CERTIFICATE/,/END CERTIFICATE/p' > public.crt

我想知道我是否错误地使用证书密钥对用户密钥进行了签名,但我想就执行此操作的最佳步骤提出建议。

谢谢!

发现我尝试连接的 bitbucket 代理服务器未配置为处理 altssh.bitbucket。di2e.net 导致超过 :443 的连接断开。

问题的根源是企业防火墙阻止 7999 到外部(内部未阻止),以及 /etc/ssh/sshd_config 在我试图克隆的远程机器上未配置为 AllowAgentForwarding