我如何获得GitHub的RSA指纹而不是他们的ED25519密钥指纹?



我想将GitHub添加到我的计算机的可接受的SSH主机列表中,用于我将很快采取的编码训练营。新兵训练营说,我需要通过GitHub的RSA公钥指纹这样做。然而,我一直得到GitHub的ED25519公钥指纹。有办法解决这个问题吗?

我在gibash中使用了以下代码:

ssh -T git@github.com

每次我这样做,我收到这样的信息:

The authenticity of host 'github.com (140.82.113.3)' can't be established.
ED25519 key fingerprint is SHA256:+DiY3wvvV6TuJJhbpZisF/zLDA0zPMSvHdkr4UvCOqU.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])?

我参加的训练营说,除非我得到以下公钥指纹,否则不接受:

SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8

我应该怎么做才能得到上面的RSA公钥指纹?

过去GitHub只提供RSA和DSA密钥作为主机密钥。然而,这种情况最近发生了变化,GitHub现在也提供ECDSA和Ed25519密钥(并且已经删除了DSA密钥)。在一个新系统上,最新版本的OpenSSH会更喜欢Ed25519密钥而不是RSA密钥,这很正常,也很好。

GitHub API元端点列出了正确的指纹和实际的SSH密钥本身。粗略地看一下,您似乎拥有正确的指纹,但是您可以通过在提示符处粘贴来自API的指纹来验证。

这里没有理由强制使用RSA密钥,但是如果您真的想这样做,您可以运行ssh -oHostKeyAlgorithms=rsa-sha2-512,rsa-sha2-256 -T git@github.com

相关内容

最新更新