Linux-免密遠程登錄(ssh)和文件傳輸(scp)

一、ssh和scp關係

scp,secure copy的簡稱,是用來與遠程主機之間進行數據傳輸的協議,相當於經過加密的copy命令。scp數據傳輸使用ssh協議,並且和ssh使用相同的認證方式,提供相同的安全保證。

二、免密登錄原理分析

這裏免密登錄指的是公鑰登錄,原理:用戶將自己的公鑰存放於遠程主機上。登錄時,遠程主機會向用戶發送一段隨機字符串,用戶用自己的私鑰加密後,再發回來。遠程主機用事先存儲的公鑰進行解密,若成功,就證明用戶是可信的,直接允許登錄shell,不再要求密碼。

三、密碼登錄設置

場景:實現機器A免密遠程登錄和免密數據傳輸到機器B

1、在機器A中生成祕鑰文件,包括公鑰和私鑰。生成祕鑰中不使用密碼,命令:ssh-keygen -t rsa -P ''。命令執行完成後,在/root/.ssh目錄下生成一對祕鑰id_rsa(私鑰)和id_rsa.pub(公鑰)。

2、拷貝A記錄的公鑰即id_rsa.pub文件到機器B/root/.ssh目錄下,並將祕鑰內容寫入authorized_keys文件,命令:cat id_rsa.pub>>authorized_keys

3、執行ssh或者scp命令,即可實現機器A到機器B的免密。

4、注意事項:

(1)若多臺機器需要實現對機器B的免密操作,而公鑰名稱都相同,怎麼破?重命名公鑰文件時,需注意先執行步驟1生成默認名稱文件的私鑰文件,然後再拷貝重命名公鑰文件上傳到機器B纔行。這裏不知是否有更好方法?

(2)據說authorized_keys文件權限必須是600

 

參考鏈接:https://blog.51cto.com/rescue/2136561?utm_source=oschina-app

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章