BitBucket:主机密钥身份验证失败

Cra*_*hax 20 git ssh bitbucket

我想将远程存储库克隆到本地计算机.我使用了命令:

git clone git@bitbucket.org:<username>/<repo_name>.git
Run Code Online (Sandbox Code Playgroud)

我收到了消息:

The authenticity of host 'bitbucket.org (104.192.143.3)' can't be
established. RSA key fingerprint is
SHA256:****. Are you sure you
want to continue connecting (yes/no)?  Host key verification failed.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights and the repository
exists.
Run Code Online (Sandbox Code Playgroud)

我只想提一下,我已经处理了ssh问题.我通过命令' ssh-keygen' 生成了一个ssh密钥,并将内容复制~/.ssh/id_rsa.pubBitbucket Settings -> SSH keys(根据以下链接:https://confluence.atlassian.com/bitbucket/set-up-ssh-for-git-728138079.html)

我也查看了我的"用户和组访问",我看到了这个:

在此输入图像描述

你能告诉我该怎么办?

Von*_*onC 76

2023 年 5 月/6 月更新:

\n
\n

所需操作:更新您的 Bitbucket Cloud SSH 主机密钥

\n

添加了新的主机密钥

\n
    \n
  • 2023 年 5 月 15 日2300 UTC 我们使用 ECDSA 和 Ed25519 算法添加了两个新的主机密钥
  • \n
  • 2023 年 6 月 20 日1700 UTC 我们将替换当前的 RSA 主机密钥
  • \n
  • 2023 年 6 月 20 日 1700 UTC 我们还将删除 DSA 主机密钥;该键将完全停止工作。
  • \n
\n
\n

所以... TLDR;(即使在 Windows 上):

\n
ssh-keygen -R bitbucket.org && curl https://bitbucket.org/site/ssh >> ~/.ssh/known_hosts\n
Run Code Online (Sandbox Code Playgroud)\n

注意:6 月之前, https://bitbucket.org/site/ssh的内容仍然是旧密钥。

\n

这会将 Bitbucket 中的新官方密钥添加到您的~/.ssh/known_hosts

\n

bitbucket.org ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDQeJzhupRu0u0cdegZIa8e86EG2qOCsIsD1Xw0xSeiPDlCr7kq97NLmMbpKTX6Esc30NuoqEEHCuc7yWtwp8dI76EEEB1VqY9QJq6vk+aySyboD5QF61I/1WeTwu+deCbgKMGbUijeXhtfbxSxm6JwGrXrhBdofTsbKRUsrN1WoNgUa8uqN1Vx6WAJw1JHPhglEGGHea6QICwJOAr/6mrui/oB7pkaWKHj3z7d1IC4KWLtY47elvjbaTlkN04Kc/5LFEirorGYVbt15kAUlqGM65pk6ZBxtaO3+30LVlORZkxOh+LKL/BvbZ/iRNhItLqNyieoQj/uh/7Iv4uyH/cV/0b4WDSd3DptigWq84lJubb9t/DnZlrJazxyDCulTmKdOR7vs9gMTo+uoIrPSb8ScTtvw65+odKAlBj59dhnVp9zd7QUojOpXlL62Aw56U4oO+FALuevvMjiWeavKhJqlR7i5n9srYcrNV7ttmDw7kf/97P5zauIhxcjX+xHv4M=

\n

bitbucket.org ssh-dss AAAAB3NzaC1kc3MAAACBAO53E7Kcxeak0luot3Z5ulOQJoLRBcnBQb0gpUfNL5rZW63fBubfXLbpZc2/GnHxRiFa2okTPvBULJZnjwXltyoRfjPICRLfH/ep3mZj6CVUyQgxES27CS1bEjMw8+S6hLlJF4dKqOIWH5+Ed+lo8ezzXbzcEj7R5h9xGgfY55HfAAAAFQDE/aqj+0sxv/ZRS3ArGxMHGYFebwAAAIEA6lZ68WgDMrR28iXIicJ7AnXPnZKzQK7xK68feKlYo9LcEkKTF3AZIE5nEvtn+ZYwZ5cKE3XKeU42aesAEAUxX9cUEzhi87q6PQagD6ZPcU89CCVlWsG8cKYCZ6VtMfcLU06grNfvl450KCHltWTaoBHdi9f8eFo3Gydg6JhyNJ8AAACAThcLJmru5QtpHo9wctg5jHKxv1BLPndKs3dVwAQwcd2sugoymGeH7IjBSFLqHsyl7XpDik4mH/YdkVwb1jAwA+JOu2gHpsSXLY22At+LKn6NHdL/qqbIf7ellnKXfEo+wz6DfGihaczY931WrjkEEsq1453/4BwQpAXrz2zbRSI=

\n

bitbucket.org ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPIQmuzMBuKdWeF4+a2sjSSpBK0iqitSQ+5BM9KhpexuGt20JpTVM7u5BDZngncgrqDMbWdxMWWOGtZ9UgbqgZE=

\n

bitbucket.org ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIazEu89wgQZ4bqs3d63QSMzYVa0MuJ2e2gKTKqu+UUO

\n
\n

为什么?

\n
\n

我们最近了解到,第三方凭证管理供应商的数据泄露中包含了 Bitbucket\xe2\x80\x99s SSH 主机密钥的加密副本。

\n

SSH 协议使用主机密钥为每个 SSH 连接建立可信服务器的身份,就像 git pull 建立与 Bitbucket Cloud 的 SSH 连接一样。

\n

尽管我们认为妥协的风险很低,但通过主动轮换主机密钥,我们可以降低旧主机密钥被解密时的未来风险。

\n

如果我们不更改主机密钥,威胁行为者将来可能会使用旧的主机密钥与已经受损的网络相结合,欺骗客户端连接并信任恶意主机。

\n
\n
\n

\xc4\x8camo指出,如果您仍然遇到错误:

\n

Warning: the ECDSA host key for \'bitbucket.org\' differs from the key for the IP address \'104.192.141.1

\n

然后你可以像这个线程一样:

\n
\n

我们必须在指南中提供的curl 命令末尾添加换行符。

\n

您收到的警告消息可能与known_hosts文件中指向 Bitbucket IP(而不是域名)的旧条目相关bitbucket.org

\n

要解决此问题,您可以使用以下命令删除旧条目并存储新条目:

\n

ssh-keygen -R bitbucket.org && sed -i.old -e \'/AAAAB3NzaC1yc2EAAAABIwAAAQEAubiN81eDcafrgMeLzaFPsw2kNvEcqTKl/d\' ~/.ssh/known_hosts && curl https://bitbucket.org/site/ssh >> ~/.ssh/known_hosts

\n
\n


Jak*_*uje 36

消息说

主机密钥验证失败.

没有关于身份验证,所以你正在处理错误的字段.这意味着bitbucket.org主机密钥不在您的身上~/.ssh/known_hosts,您的客户端没有任何方法可以验证它.它被多次回答如何解决它,但如何正确地做到这一点?

bitbucket手册中有一节描述了他们的公钥和指纹的样子.所以:

  1. ssh bitbucket.org
  2. 它会提示你一个指纹:

    The authenticity of host 'bitbucket.org (104.192.143.3)' can't be established.
    RSA key fingerprint is SHA256:*****.
    Are you sure you want to continue connecting (yes/no)?
    
    Run Code Online (Sandbox Code Playgroud)
  3. 您验证提示中的指纹与bitbucket网站上的指纹相同:

    SHA256:zzXQOXSRBEiUtuE8AikJYKwbHaxvSc0ojez9YXaGp1A bitbucket.org (RSA)
    
    Run Code Online (Sandbox Code Playgroud)
  4. 您编写yes并按Enter键以验证连接是否有效.

或者只是复制从公钥到位桶网站直接在~/.ssh/known_hosts文件

echo "bitbucket.org,104.192.143.1 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAubiN81eDcafrgMeLzaFPsw2kNvEcqTKl/VqLat/MaB33pZy0y3rJZtnqwR2qOOvbwKZYKiEO1O6VqNEBxKvJJelCq0dTXWT5pbO2gDXC6h6QDXCaHo6pOHGPUy+YBaGQRGuSusMEASYiWunYN0vCAI8QaXnWMXNMdFP3jHAJH0eDsoiGnLPBlBp4TNm6rYI74nMzgz3B9IikW4WVK+dc8KZJZWYjAuORU3jc1c/NPskD2ASinf8v3xnfXeukU0sJ5N6m5E8VLjObPEO+mN2t/FZTMZLiFqPWc/ALSqnMnnhwrNi2rbfg/rd/IpL8Le3pSBne8+seeFVBoGqzHM9yXw==" >> ~/.ssh/known_hosts
Run Code Online (Sandbox Code Playgroud)

如果以上内容没有任何帮助,请运行ssh -vvv bitbucket.org并将输出发布到已编辑的问题.


Has*_*zad 10

只需要运行以下命令,无需任何添加:

ssh-keygen -R bitbucket.org
Run Code Online (Sandbox Code Playgroud)


Nic*_*hek 8

mkdir ~/.ssh
touch ~/.ssh/known_hosts
ssh-keyscan bitbucket.org >> ~/.ssh/known_hosts
Run Code Online (Sandbox Code Playgroud)

  • 如果 DNS 已经被欺骗,这将无法保护您免受任何侵害。 (2认同)
  • 如果“&gt;&gt;”已经为您创建了文件,为什么还需要“触摸”该文件 (2认同)

sen*_*vic 7

你会得到同样的错误:

Host key verification failed.
Run Code Online (Sandbox Code Playgroud)

如果您按 Enter 键而不是回答问题:

Are you sure you want to continue connecting (yes/no/[fingerprint])? 
Run Code Online (Sandbox Code Playgroud)

yes


Huy*_*hạm 5

以下步骤对我个人有用,我事先在 BitBucket 上注册了 SSH 密钥。在 Windows 上:

  1. 转到 C:/Users/<your_username>/.ssh/known_hosts
  2. 删除以以下开头的行bitbucket.org
  3. 运行ssh bitbucket.org并遵循说明