计算RSA密钥指纹

断了今生、忘了曾经 提交于 2020-01-07 12:33:23

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

我需要为GitHub进行SSH密钥审核,但我不确定如何找到我的RSA密钥指纹。 我最初遵循指南在Linux上生成SSH密钥。

我需要输入什么命令才能找到我当前的RSA密钥指纹?


#1楼

要在第一次连接之前检查远程SSH服务器,您可以查看www.server-stats.net/ssh/以查看服务器的所有SHH密钥,以及密钥何时知晓。

这不是SSL证书,但在第一次连接到任何SSH服务器之前肯定是必须做的。


#2楼

要在Ubuntu上查看密钥,只需在终端上输入以下命令:

ssh-add -l

你会得到这样的输出: 2568 0j:20:4b:88:a7:9t:wd:19:f0:d4:4y:9g:27:cf:97:23 yourName @ ubuntu(RSA)

但是如果你得到错误的话; Could not open a connection to your authentication agent.
那么这意味着ssh-agent没有运行。 您可以使用以下命令启动/运行它: ssh-agent bash (感谢评论中的@Richard),然后重新运行ssh-add -l


#3楼

$ ssh-add -l 

也适用于Mac OS X v10.8 (Mountain Lion) - v10.10 (Yosemite)。

它还支持选项-E来指定指纹格式,因此如果需要MD5(它经常被使用,例如通过GitHub),只需在命令中添加-E md5即可。


#4楼

密钥对(私钥和公钥)将具有相同的指纹; 因此,如果您不记得哪个私钥属于哪个公钥,请通过比较其指纹来查找匹配项。

Marvin Vinto投票最多的答案提供了公共 SSH密钥文件的指纹。 也可以查询相应私有 SSH密钥的指纹,但需要更长的一系列步骤,如下所示。

  1. 如果尚未加载SSH代理,请加载SSH代理。 最简单的方法是调用

    $ ssh-agent bash

    要么

    $ ssh-agent tcsh

    (或您使用的其他外壳)。

  2. 加载要测试的私钥:

    $ ssh-add /path/to/your-ssh-private-key

    如果密钥受密码保护,将要求您输入密码。

  3. 现在,正如其他人所说,输入

    $ ssh-add -l 1024 fd:bc:8a:81:58:8f:2c:78:86:a2:cf:02:40:7d:9d:3c you@yourhost (DSA)

    fd:bc:...是你追求的指纹。 如果有多个键,则将打印多行,最后一行包含最后加载的键的指纹。

  4. 如果你想停止代理(即,如果你调用了上面的第1步),那么只需在shell上输入`exit',你就可以在加载ssh代理之前返回shell。

我没有添加新信息,但希望这个答案对所有级别的用户都很清楚。


#5楼

如果您的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密钥。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!