我可以在本地使用RSA密钥测试身份验证吗?

pjm*_*rse 34 ssh rsa ssh-keys

如果您正在为RSA密钥提供正确的密码,是否有办法在本地进行检查?

我最近无法将一些提交推送到github,因为推送提示输入密码然后验证失败.我验证了github id_rsa在我的~/.ssh目录中有正确的文件公钥,我确认我可以使用Github进行身份验证(如果ssh git@github.com它会告诉您已经过身份验证但是他们不提供shell访问权限),所以我知道问题所在在我的尽头,而不是Github的.

(我应该指出,此时我只是习惯git format-patch将我的提交作为文件,然后吹走我的工作存储库并从Github重新克隆,重新应用补丁git am,并毫不费力地推送,所以无论原始问题是什么,它是固定的.)

这让我想知道:我怎么知道远程主机的身份验证问题是我向我的私钥提供了错误的密码,还是远程主机没有识别我的密钥?有没有办法在本地使用私钥进行测试身份验证,而无需尝试连接到远程主机?

gab*_*ous 45

或者如此指出: 如何在没有服务器的情况下在本地测试我的ssh-keys

你可以这样做:

ssh-keygen -y
Run Code Online (Sandbox Code Playgroud)

这不需要任何服务器(在Windows上与msysgit配合使用).


Chr*_*ung 19

您可以运行ssh-add将密钥添加到当前ssh-agent.这将提示您输入密码.

通常,在ssh-agent运行时,如果向其添加密钥,则在连接到识别该密钥的主机时,不必再解锁密钥.如果那不是您想要的,那么只需运行ssh-add -dssh-agent在完成测试后将其删除.