SSHing git@github.com显示错误/旧的SSH密钥

时间:2012-07-19 15:17:01

标签: git ssh github ssh-keys

k,所以我设置Git并按this tutorial设置SSH密钥。指纹是16:27:...:a6:48。我安装了GitHub client for Windows,它在github_rsa文件夹中自动设置了一个名为%user%/.ssh/的新SSH密钥。

我删除了“旧的”SSH密钥(不要问我为什么)并设置一个带有指纹的新密钥a6:17:ed:4a:1d:9a:c7:63:6a:a1:38:8b:96:e3:91:bf我只删除了以前的id_rsa密钥和{{1然后使用known_hosts创建另一个文件 - 我没有弄乱GitHub密钥。)

现在,每当我尝试ssh到ssh-keygen时,它都说:

  

无法建立主机'github.com(207.97.227.239)'的身份验证   RSA密钥指纹是16:27:...:a6:48   您确定要继续连接(是/否)吗?

这不是我想要的。它显示了我删除的旧SSH密钥(以及git@github)。我该怎么办?

[编辑]:我(错误地)假设来自终端输出的指纹与我的公共RSA密钥的指纹相匹配。我仍然遇到SSH问题,但它与此无关(问题已被提出,请阅读:Git push requires username and password)。我会删除这个问题,但它不允许我说“它有一个或多个答案。请标记它以供主持人注意。” _尽管它是我的。详情请见:https://meta.stackexchange.com/questions/140646/what-should-i-do-if-i-realize-the-premise-of-a-question-was-faulty-but-i-alread/140676#140676

2 个答案:

答案 0 :(得分:15)

我认为您应该使用

编辑<USER>/.ssh/config文件(或创建它)
Host github.com
User <USER>
IdentityFile ~/.ssh/github_rsa

Host *
User <USER>
IdentityFile ~/.ssh/id_rsa

如果发生的事情就是你所说的话,那就可以了。

但也许这不是问题,因为第5步:测试链接的所有内容表示您可能会看到此警告:

# The authenticity of host 'github.com (207.97.227.239)' can't be established.
# RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
# Are you sure you want to continue connecting (yes/no)?

你不应该担心,这应该发生。只需验证指纹与此处的指纹匹配,然后键入“是”。

答案 1 :(得分:1)

由于您删除了known_hosts文件,ssh-agent将发出此警告:

  

主机'github.com(207.97.227.239)'的身份验证不能   建立的RSA密钥指纹是16:27:...:a6:48你确定你   想继续连接(是/否)?

第一次尝试连接到此主机以及您连接到的任何其他主机。对于您说“是”的每个新主机,主机的指纹都会添加到 known_hosts 文件中。

如果你每次都收到警告,那么你有一个更大的问题,即你的known_hosts文件没有被ssh写入或回读。每次SSH到其他计算机时,您都可以验证是否收到此警告消息。

Further reading