Fedora 33 git 拉取或克隆不再工作 and/or 不再识别 ssh 密钥

Fedora 33 git pull or clone no longer working and/or ssh key no longer recognized

我最近安装了 Fedora 33 并正在迁移我的文件。我复制了我的 ssh 密钥,发现我无法再从 bitbucket git 存储库中提取我能够从我的旧笔记本电脑上提取的信息。 ssh 密钥完全一样,public 密钥已经在 bitbucket 帐户上了。此外,权限设置为 chmod 600。我仍然无法从回购协议中提取。

这似乎是 Fedora 33 最近的一个问题。这是相关的 bug report

问题是 Fedora 33 似乎删除了对 SHA1 的支持,我猜 bitbucket.org 通过 ssh 使用 SHA1 作为他们的 git clone .您可以通过 运行 ssh -Tv git@bitbucket.orggrep debug1: send_pubkey_test: no mutual signature algorithm.

的输出来验证这是否是同一个问题

如错误报告中所列,当前的解决方法是在 ~/.ssh/config:

中明确指定 ssh-rsa 支持

将以下条目添加到您的 ~/.ssh/config 并确保它具有权限 chmod 700 ~/.ssh/config

Host bitbucket.org
    User git
    PubkeyAcceptedKeyTypes ssh-rsa

bitbucket.org 替换为您正在使用的任何 git 主机

正确的解决方案:使用 ssh-keygen -t ed25519 并将 public 密钥复制到您的 bitbucket 帐户中。