Linux

在沒有提示的情況下將遠端主機添加到 known_hosts 文件

  • October 21, 2014

我寫了一些腳本並希望在known_hosts沒有任何互動的情況下將遠端主機添加到我的文件中。我可以執行一個命令ssh -o "StrictHostKeyChecking no" root@10.x.x.x,將遠端主機密鑰添加到我的已知主機,但後面會出現 ssh 密碼提示。有什麼方法可以在沒有密碼提示的情況下做到這一點?

正如另一個答案中提到的,ssh-keyscan是理想的,但如果由於某種原因您不能這樣做:您可以通過設置選項來禁用密碼身份驗證

PasswordAuthentication no

在配置文件中(例如.ssh/config),或在命令行中傳遞選項-o PasswordAuthentication,從而防止 ssh 詢問您輸入密碼。不用說,伺服器將此視為登錄嘗試失敗,除非您配置了另一種允許您登錄的身份驗證方法。

正如您已經註意到的,將StrictHostKeyChecking選項的值從ask預設值更改為no(或者yes如果您想要更好的安全性)是必要的,以避免提示您是否要將主機密鑰添加到.ssh/known_hosts.

引用自:https://serverfault.com/questions/638628