
似乎每次我接受新的主機金鑰時,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
似乎它是硬編碼在原始程式碼中,因此一種選擇是重寫它以滿足您的需求(不建議)。