天天看點

ssh中“Host key verification failed.“的解決方案

可能的提示資訊如下:

網上很多的解決方案是:vi ~/.ssh/known_hosts 删除與想要連接配接的主機相關的行;或者直接删除known_hosts這個檔案。 當然這個方案也是可行的,但并非解決問題的根本辦法,因為繼續使用,今後還會出現這樣的情況,還得再删除。

下面簡單講一下這個問題的原理和比較長久的解決方案。

用OpenSSH的人都知ssh會把你每個你通路過計算機的公鑰(public key)都記錄在~/.ssh/known_hosts。當下次通路相同計算機時,OpenSSH會核對公鑰。如果公鑰不同,OpenSSH會發出警告,避免你受到DNS Hijack之類的攻擊。

對于我來說,在内網的進行的一些測試,為了友善,選擇最低的安全級别。在.ssh/config(或者/etc/ssh/ssh_config)中配置:

StrictHostKeyChecking no

UserKnownHostsFile /dev/null

(注:這裡為了簡便,将knownhostfile設為/dev/null,就不儲存在known_hosts中了)

本文轉自 xxrenzhe11 51CTO部落格,原文連結:http://blog.51cto.com/xxrenzhe/1351432,如需轉載請自行聯系原作者

繼續閱讀