为 SSHknown_hosts 生成哈希名称

为 SSHknown_hosts 生成哈希名称

有没有一种简单的方法来生成要添加到~/.ssh/known_hosts文件中的哈希主机名?

我想在文件@cert-authority中添加一行~/.ssh/known_hosts

显然该ssh-keygen命令不会获得 CA 证书。我认为它还需要连接到服务器,并且我不确定是否可以让它对通配符进行哈希处理。

那么,例如,我将如何散列"*.bar.com"以便可以在~/.ssh/known_hosts文件中使用它?

编辑: 仔细想想,散列通配符可能不起作用,因为客户端在散列后很难匹配通配符。但是,如果我仍然可以获得一种方法来散列域而不需要连接到服务器(就像这样ssh-keygen做),那就太好了。

答案1

如果您想更改主机名现有的散列主机,编辑您的known_hosts文件,将散列主机名替换为您希望与该密钥关联的纯文本主机名,然后重新散列该文件:

ssh-keygen -H

如果您想在不干扰您的情况下为主机名列表生成哈希值known_hosts,请创建一个文件,将您希望哈希的主机名与从现有的复制出的有效密钥结合起来known_hosts

sample.bar.com ecdsa-sha2-nistp256 AAAAE2...
other.bar.com ecdsa-sha2-nistp256 AAAAE2...
diff.domain.org ecdsa-sha2-nistp256 AAAAE2...

然后使用以下命令对该文件进行哈希处理ssh-keygen

ssh-keygen -f mytestfile -H

相关内容