我有点困惑 ssh 系统范围的known_hosts 文件的“正确”路径是什么。
说 虽然man ssh
/etc/ssh/ssh_known_hosts
SSH 主机密钥 - 什么、为什么、如何谈论/etc/ssh/known_hosts
.
两个地点都有效吗?这种差异是历史遗留物吗?它是特定分布的吗?应该使用哪个文件路径?
答案1
为了开放SSH,它的手册页是规范文档。根据ssh(1) - OpenBSD 手册页,/etc/ssh/ssh_known_hosts
是“已知主机密钥的系统范围列表”的官方路径。这适用于 OpenSSH 的所有版本,并不特定于任何一种发行版或操作系统。
SSH.COM是 SSH Communications Security 的网站,这是一家商业公司,由 SSH 协议的原始设计者和第一个实现的作者建立。与它没有直接关系OpenSSH 项目它由一组维护开放BSD开发人员基于原始 SSH 程序的早期版本的分支。
我不知道 SSH Communications Security/etc/ssh/known_hosts
从哪里获得(大概是他们自己的或原始的实现),但作为第三方信息来源,它与 OpenSSH 用户无关。出于兴趣,我查了一下OpenSSH 手册页的最早版本(rev 1.1)并且它历史上一直使用另一种(略有不同)路径,/etc/ssh_known_hosts
.