ssh免密登录方法
問題描述:主機A向主機B定時copy數據,每次輸入密碼就非常不方便,需要做到免密?
步驟:
主機A上的操作:
1、cd ~/.ssh/
2、ssh-keygen -t rsa? 生成公鑰和私鑰
3、cat?id_rsa.pub (直接打開copy容易出問題)
4、復制公鑰內容
主機B上的操作:
5、cd ~/.ssh (如果沒有該目錄就創建一個)
6、vim?authorized_keys
7、添加到此文件后面
就OK了。
結論:機制原理為白名單機制,A的信息要被B記錄下來,直接放行,不需要驗證
原理分析:
一、公鑰密鑰算法出現背景:
1976 年,美國學者 Dime 和 Henman 為解決信息公開傳送和密鑰管理問題,提出一種新的密鑰交換協議,允許在不安全的媒體上的通訊雙方交換信息,安全地達成一致的密鑰,這就是“公開密鑰系統”。相對于“對稱加密算法”這種方法也叫做“非對稱加密算法”。與對稱加密算法不同,非對稱加密算法需要兩個密鑰:公開密鑰( publickey)和私有密鑰( privatekey)。公開密鑰與私有密鑰是一對,如果用公開密鑰對數據進行加密,只有用對應的私有密鑰才能解密;如果用私有密鑰對數據進行加密,那么只有用對應的公開密鑰才能解密。因為加密和解密使用的是兩個不同的密鑰,所以這種算法叫作非對稱加密算法。
二、免密登錄流程
1.在A上生成公鑰私鑰。
2.將公鑰拷貝給server B,要重命名成authorized_keys(從英文名就知道含義了)
3.Server A向Server B發送一個連接請求。
4.Server B得到Server A的信息后,在authorized_key中查找,如果有相應的用戶名和IP,則隨機生成一個字符串,并用Server A的公鑰加密,發送給Server A。
5.Server A得到Server B發來的消息后,使用私鑰進行解密,然后將解密后的字符串發送給Server B。Server B進行和生成的對比,如果一致,則允許免登錄。
總之:A要免密碼登錄到B,B首先要擁有A的公鑰,然后B要做一次加密驗證。對于非對稱加密,公鑰加密的密文不能公鑰解開,只能私鑰解開。
后面部分轉載于:
————————————————
原文鏈接:https://blog.csdn.net/qq_32648071/article/details/81218989
總結
- 上一篇: optparse接受带空格的参数值时,需
- 下一篇: 本地传送命令到远程主机上执行的方法