是什么
known_hosts 文件存储用户访问的主机的公钥。这是一个非常重要的文件,它通过将用户的身份保存到本地系统来确保用户连接到合法的服务器。这也有助于避免中间人攻击。
当通过SSH连接到一个新的远程服务器时,系统会提示是否要将远程主机添加到 known_hosts 文件。
怎么查看
基于安全考虑,几乎所有 Linux 系统都会将 ssh 配置文件中的 HashKnownHosts 参数设置为 yes。
这也就意味着在 known_hosts 文件中的信息是以 hash 方式存储的,可能会看到一些随机数,但这并不能提供任何有用的信息。
常规的不提了,两个命令以前没用过,特此记录一下:
如果知道系统的主机名或IP地址,则可以从 known_hosts 获取相关信息:
ssh-keygen -l -F <server-IP-or-hostname>
当然,明文信息是不可能的。
如果想要从 known_hosts 文件中删除某个特定的主机信息,可以根据远程系统的主机名或 IP 执行这个操作:
ssh-keygen -R <server-hostname-or-ip>
