我需要为 GitHub 进行 SSH 密钥审核,但我不确定如何找到我的 RSA 密钥指纹。我最初按照指南在Linode主持的Ubuntu 10.04 (Lucid Lynx)盒子上进行设置。
如果使用 PuTTY 远程登录,我需要输入什么命令来查找当前的 RSA 密钥指纹?
运行以下命令以检索 SSH 密钥指纹( -l
表示 “list” 而不是创建新密钥, -f
表示 “filename”):
$ ssh-keygen -lf /path/to/ssh/key
例如,在我的机器上,我运行的命令是(使用 RSA 公钥):
$ ssh-keygen -lf ~/.ssh/id_rsa.pub
2048 00:11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff /Users/username/.ssh/id_rsa.pub (RSA)
对于较新版本的 ssh-keygen,如果你想要与旧版本相同的格式(感谢 Lloyd Dewolf),请运行ssh-keygen -E md5 -lf <fileName>
。
奖金信息:
ssh-keygen -lf
也适用于known_hosts
和authorized_keys
文件。
使用find /etc/ssh /home/*/.ssh /Users/*/.ssh -name '*.pub' -o -name 'authorized_keys' -o -name 'known_hosts'
在 Linux / Unix / OS X 系统上查找最公开的内容find /etc/ssh /home/*/.ssh /Users/*/.ssh -name '*.pub' -o -name 'authorized_keys' -o -name 'known_hosts'
(如果你想看到其他用户的 homedirs,你必须是 root 或 sudo。)
ssh-add -l
非常相似,但列出了添加到代理的密钥的指纹。 (OS X 用户注意到通过 Keychain 进行魔术无密码 SSH 与使用 ssh-agent 不同。)
较新的 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 密钥或更新的黄道键。
对那些继续编辑我在上面使用的命令的 “管理员”。停止改变它!您使命令和结果输出不匹配!
要在 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