似乎每次我接受一个新的主机密钥时,ssh(我已经测试了 8.6p1 和 9.3p2)都会执行以下步骤:
- 将文件移动
known_hosts
到known_hosts.old
; - 创建一个新
known_hosts
文件; known_hosts.old
将的内容复制到known_hosts
;- 将新条目添加到新的
known_hosts
。
一切都很好,只是,像许多人一样,我将我的点文件置于版本控制之下。该known_hosts
文件是指向我的 git 存储库中文件的链接。毕竟,如果我在桌面上接受了主机密钥,那么当我从笔记本电脑连接到同一主机时,我不想冒 MITM 的风险。毕竟,这就是 known_hosts 文件的全部意义所在。
上述 ssh 之后的程序运行效果不佳:在我接受新主机后,它就是known_hosts.old
我版本控制文件的链接,而该文件永远不会更新。
我该如何告诉ssh
他们停止创建known_hosts.old
并直接编辑known_hosts
?无论如何,我不需要这种粗略的备份方法 - 该文件已经在版本控制之下。我仔细阅读了 TFM,但没有找到任何这样的选项。
答案1
似乎它是在源代码中硬编码的,因此一个选择是重写它以满足您的需要(不推荐)。