我需要为GitHub做SSH密钥审计,但我不确定如何找到我的RSA密钥指纹。我最初是按照指南在Linux上生成SSH密钥的。
我需要输入什么命令来查找我当前的RSA密钥指纹?
我需要为GitHub做SSH密钥审计,但我不确定如何找到我的RSA密钥指纹。我最初是按照指南在Linux上生成SSH密钥的。
我需要输入什么命令来查找我当前的RSA密钥指纹?
当前回答
$ ssh-add -l
也适用于Mac OS X v10.8 (Mountain Lion) - v10.10 (Yosemite)。
它还支持-E选项来指定指纹格式,因此在需要MD5的情况下(它经常被使用,例如GitHub),只需在命令中添加-E MD5。
其他回答
在这里从AWS论坛复制内容,因为我发现它对我的用例很有用——我想检查哪些密钥与我导入AWS的密钥匹配
Openssl pkey -in ~/.ssh/ec2/primary.使用实例openssl md5 -c . pem -pubout -outform DER |
地点:
主要的Pem是要检查的私钥
注意,这与ssh-keygen计算的指纹不同。
$ ssh-add -l
也适用于Mac OS X v10.8 (Mountain Lion) - v10.10 (Yosemite)。
它还支持-E选项来指定指纹格式,因此在需要MD5的情况下(它经常被使用,例如GitHub),只需在命令中添加-E MD5。
较新的SSH命令将指纹列为SHA256密钥。
例如:
ssh-keygen -lf ~/.ssh/id_dsa.pub
1024 SHA256:19n6fkdz0qqmowiBy6XEaA87EuG/jgWUr44ZSBhJl6Y (DSA)
如果您需要将其与旧指纹进行比较,还需要指定使用MD5指纹哈希功能。
ssh-keygen -E md5 -lf ~/.ssh/id_dsa.pub
2048 MD5:4d:5b:97:19:8c:fe:06:f0:29:e7:f5:96:77:cb:3c:71 (DSA)
同样可用:-E sha1
更新……是的……是的……我知道…SSH的DSA密钥不应该再使用,应该使用较旧的RSA密钥或较新的黄道密钥。
致那些一直编辑我在上面使用的命令的“管理员”。别再改了!您使命令和产生的输出不匹配!
如果您的SSH代理正在运行,那么它就是在运行
ssh-add -l
列出所有身份的RSA指纹,或-L列出公钥。
如果您的代理没有运行,请尝试:
ssh-agent sh -c 'ssh-add; ssh-add -l'
对于您的公钥:
ssh-agent sh -c 'ssh-add; ssh-add -L'
如果您得到这样的消息:'代理没有身份。',然后您必须先通过ssh-keygen生成您的RSA密钥。
在Fedora上我找到~/。SSH,它告诉我密钥在
/root/.ssh
/root/.ssh/authorized_keys