2016年6月12日 星期日

SSH 停用遠端主機公鑰檢查 Authenticity RSA key fingerprint

ssh 公鑰檢查是 ssh 通道協定內一向重要的機制,可以防範在 ssh 溝通的過程中避免第三方 hacker attack,但這對於需要依賴 ssh 協定的 script 會造成中斷的狀況

 

每當 ssh 連線後會將連線成功的公鑰儲存在 ~/.ssh/known_hosts,若是不存在將會提示使用者是否信任該主機,若是信任將自動加入到 known_hosts,下次連線就會直接採用此公鑰對應,不會再詢問,除非該主機公鑰改變



 
The authenticity of host 'IP' can't be established. 
RSA key fingerprint is SHA256:WhCPSyNJbVlDQFOQx2lK/ic3GyHgTVR+DZcSYc.
Are you sure you want to continue connecting (yes/no)?

 

針對的這樣的狀況可以有兩種方式不驗證公鑰

solution.1(建議) 使用 -o StrictHostKeyChecking=no 參數
$ ssh -o StrictHostKeyChecking=no 192.168.0.110

 

solution.2 從 ssh_config 關閉公鑰驗證
$ vim /etc/ssh/ssh_config 

Host *
StrictHostKeyChecking no

$ service sshd restart

 

小弟在這邊建議的方式是有需要才加入 StrictHostKeyChecking 參數關閉驗證公鑰,如果直接從服務就關閉公鑰驗證,那就真的沒有安全性可言了啊!!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Orignal From: SSH 停用遠端主機公鑰檢查 Authenticity RSA key fingerprint

沒有留言:

張貼留言