Git SSH public 密钥指纹与本地机器上的不匹配

Git SSH public key fingerprint does not match with that on local machine

我正在尝试通过 SSH 连接到我的 github 帐户。我将我的 public 密钥添加到我的 github 帐户,它显示的指纹是这样的

SHA256:aYqWu+zL3hIOWTEGvneI90fehVQt9kuGVN7ov8WlTk8

当我通过 SSH 连接到 git 时,它用

拒绝了我
permission denied(publickey)

然后我运行

SSH -v 

并看到我的客户提供 public 密钥作为

RSA SHA256:aYqWu+zL3hIOWTEGvneI90fehVQt9kuGVN7ov8WlTk8 macbookpro@MacBooks-MacBook-Pro.local

我的有多余的用户名@host。

谁能帮我摆脱这个?提前致谢!

如果您阅读 GitHub 关于通过 SSH 连接的指南 (https://docs.github.com/en/github/authenticating-to-github/error-permission-denied-publickey),它实际上告诉您不要使用您的用户名连接。

所有连接,包括远程 URL 的连接,都必须以“git”用户身份进行。如果您尝试使用您的 GitHub 用户名连接,它将失败:

$ ssh -T GITHUB-USERNAME@github.com
> Permission denied (publickey).

相反,您应该使用 ssh -i /path/to/privatekey -T git@github.com(如果您使用的是 ssh-agent,可以保留 -i /path/to/privatekey

身份验证成功后,您应该会收到如下消息: Hi username! You've successfully authenticated, but GitHub does not provide shell access.