我需要为GitHub做SSH密钥审计,但我不确定如何找到我的RSA密钥指纹。我最初是按照指南在Linux上生成SSH密钥的。

我需要输入什么命令来查找我当前的RSA密钥指纹?


当前回答

在这里从AWS论坛复制内容,因为我发现它对我的用例很有用——我想检查哪些密钥与我导入AWS的密钥匹配

Openssl pkey -in ~/.ssh/ec2/primary.使用实例openssl md5 -c . pem -pubout -outform DER |

地点:

主要的Pem是要检查的私钥

注意,这与ssh-keygen计算的指纹不同。

其他回答

这是我用来获取SSH密钥指纹以创建DigitalOcean液滴的shell函数:

fingerprint() {
    pubkeypath="$1"
    ssh-keygen -E md5 -lf "$pubkeypath" | awk '{ print $2 }' | cut -c 5-
}

把它放在你的~/。Bashrc,来源它,然后你可以得到指纹,如下所示:

$ fingerprint ~/.ssh/id_rsa.pub
d2:47:0a:87:30:a0:c0:df:6b:42:19:55:b4:f3:09:b9

在这里从AWS论坛复制内容,因为我发现它对我的用例很有用——我想检查哪些密钥与我导入AWS的密钥匹配

Openssl pkey -in ~/.ssh/ec2/primary.使用实例openssl md5 -c . pem -pubout -outform DER |

地点:

主要的Pem是要检查的私钥

注意,这与ssh-keygen计算的指纹不同。

在Windows上,如果您正在运行PuTTY/Pageant,则当您将PuTTY (.ppk)密钥加载到Pageant中时会列出指纹。它非常有用,以防你忘记你在用哪一个。

如果您的密钥在SSH代理中,最快的方法是:

$ ssh-add -L | ssh-keygen -E md5 -lf /dev/stdin

代理中的每个键将被打印为:

4096 MD5:8f:c9:dc:40:ec:9e:dc:65:74:f7:20:c1:29:d1:e8:5a /Users/cmcginty/.ssh/id_rsa (RSA)

如果您需要从私钥获取,请执行以下操作:

ssh-keygen -y -f key > key.pub && ssh-keygen -lf key.pub