SSH 無密登錄配置流程

一、免密登錄原理

非對稱加密: 由于對稱加密的存在弊端,就產生了非對稱加密,非對稱加密中有兩個密鑰:公鑰和私鑰。公鑰由私鑰產生,但卻無法推算出私鑰;公鑰加密后的密文,只能通過對應的私鑰來解密。

據

【1】在A服務器使用 ssh-keygen生成一對密鑰:公鑰+私鑰;
【2】將A服務器公鑰追加到B服務器的 authorized_keys 文件中,完成公鑰認證操作;
【3】認證完成后,A服務器向B服務器發起請求,并傳遞公鑰到服務端;
【4】B服務端檢索 authorized_keys 文件,確認該公鑰是否存在;
【5】如果存在該公鑰,則生成隨機數R,并用公鑰來進行加密,生成公鑰加密字符串 pubKey?;并將公鑰加密字符串傳遞給A服務器;
【6】A服務器使用私鑰解密公鑰加密字符串,得到R;
【7】A服務器和客戶端通信時會產生一個會話ID(sessionKey),用MD5對R和SessionKey進行加密,生成摘要(即MD5加密字符串)
【8】A服務器將生成的MD5加密字符串傳給B服務器;
【9】服務端同樣生成 MD5(R,SessionKey)加密字符串;
【10】如果客戶端傳來的加密字符串等于服務端自身生成的加密字符串,則認證成功;
【11】此時不用輸入密碼,即完成建連,可以開始遠程執行shell命令了

二、操作

【1】Hadoop1 中生成公鑰和私鑰,過程中敲(三個回車),就會生成兩個文件id_rsa(私鑰)、id_rsa.pub(公鑰)

[root@hadoop1 ~]# ssh-keygen -t rsa

【2】將Hadoop1 中的公鑰拷貝到要免密登錄的目標機器上 Hadoop2 中

[root@hadoop1 ~]# ssh-copy-id hadoop2

注意:如果有多個用戶,還需要在Hadoop2上采用其他賬號,配置一下無密登錄到 hadoop2

【3】當我們鏈接本機 Hadoop1 的時候發現也要輸入密碼,所以通常我們對本機也會進行配置。Hadoop2重復1中的操作。

[root@hadoop1 ~]# ssh-copy-id hadoop1

三、.ssh文件夾下(~/.ssh)的文件功能解釋

known_hosts記錄 ssh訪問過計算機的公鑰(public key)
id_rsa生成的私鑰
id_rsa.pub生成的公鑰
authorized_keys存放授權過得無密登錄服務器公鑰

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/38457.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/38457.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/38457.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

光速入門 Tailwind CSS

文章目錄 入門安裝IDE 設置使用預編譯器生產環境優化 基礎概念分層指令tailwindlayerapplyconfig 函數theme()screen() 基礎案例怎么設置屬性任意值?hover 父元素時,怎么選中子元素添加樣式?添加 animation 動畫 配置主題 Tailwind CSS 中文網…

.so: file not recognized: file format not recognized

項目場景: 自Linux 4.8起,傳統的GPIO sysfs接口被棄用。libgpiod操作gpio的方式感覺更加方便。 但是單板上好像沒裝這個工具,又到了熟悉的交叉編譯環節(痛苦)。 問題描述 按照流程裝完libgpiod,自信地去交…

安卓Gradle學習與應用:從入門到實踐

引言 在Android開發的世界里,Gradle不僅僅是一個構建工具,它更是一種強大的自動化系統,能夠幫助開發者高效地管理項目依賴、編譯、測試、打包以及部署。本篇博客旨在深入探討Gradle在Android開發中的應用,從基礎概念到實戰技巧&a…

334. 遞增的三元子序列

334. 遞增的三元子序列 題目鏈接&#xff1a;334. 遞增的三元子序列 代碼如下&#xff1a; class Solution { public://貪心bool increasingTriplet(vector<int>& nums) {if(nums.size()<3) {return false;}int firstnums[0],secondINT_MAX;for(int i1;i<…

Go源碼--context包

簡介 Context 是go語言比較重要的且也是比較復雜的一個結構體&#xff0c;Context主要有兩種功能: 取消信號&#xff1a;包括直接取消&#xff08;涉及的結構體&#xff1a;cancelCtx ; 涉及函數&#xff1a;WithCancel&#xff09;和攜帶截止日期的取消&#xff08;涉及結構…

密室逃脫——收集版

一、原版修改 1、導入資源 Unity Learn | 3D Beginner: Complete Project | URP 2、設置Scene 刪除SampleScene&#xff0c;打開UnityTechnologies-3DBeginnerComplete下的MainScene 3、降低音量 (1) 打開Hierarchy面板上的Audio降低音量 (2) 打開Prefabs文件夾&#xf…

Git安裝與使用及整合IDEA使用的詳細教程

1. 版本控制軟件介紹 版本控制軟件提供完備的版本管理功能&#xff0c;用于存儲、追蹤目錄&#xff08;文件夾&#xff09;和文件的修改歷史&#xff0c;是軟件開發者的必備工具&#xff0c;是軟件公司的基礎設施。版本控制軟件的最高目標&#xff0c;是支持軟件公司的配置管理…

第三天:LINK3D核心原理講解【第2部分】

三、 變量 // 點云容器 pcl::PointCloud<pcl::PointXYZI> laserCloud; // 一幀原始點云 pcl::PointCloud<pcl::PointXYZI> cornerPointsLessSharp; // 次極大邊線點 pcl::PointCloud<pcl::PointXYZI> surfPointsLessFlat; // 次極小平面點 pcl::PointCloud&…

ubuntu中后臺啟動一個jar

1.使用 nohup 和 & 啟動應用程序&#xff1a; nohup java -jar 你的jar包.jar > output.log 2>&1 &解釋&#xff1a; nohup&#xff1a;忽略掛起信號&#xff08;SIGHUP&#xff09;&#xff0c;使進程在退出終端后繼續運行。java -jar lxyoj-code-sandbox-…

管理統計學

第1章 統計學是收集、處理、分析、解釋數據并從數據中得出結論的科學。 統計學是處理數據的方法論。 參數 表示總體特征的概括性數字度量&#xff0c;是研究者想要了解的總體的某種特征值。 統計量 是用來描述樣本特征的概括性數字度量。 常用統計量包括&#xff1a; &#xff…

達夢數據庫系列—14. 表空間的備份和還原

目錄 1、表空間備份 2、表空間還原 3、表空間恢復 4、增量還原恢復 1、表空間備份 表空間只能在聯機狀態下進行備份。 BACKUP TABLESPACE TBS BACKUPSET /dm/backup/dm_bak/ts_bak_01; 完全備份 BACKUP TABLESPACE TBS FULL BACKUPSET /dm/backup/dm_bak/ts_full_bak_01…

ESP8266[ 關于-巴發云MQTT/TCP:arduino 設置回調函數 ] 日志2024/6/29

ESP8266 [ 關于-巴發云MQTT/TCP:arduino 設置回調函數 ] 日志2024/6/29 arduino庫:#include <PubSubClient.h> 回調函數 是其庫設置好的 可以改名字 這里只寫上關鍵代碼 設置客戶端為 A 關鍵代碼: A.setCallback(回調名) //MQTT 回調處理mqttmsgg(自定義…

zdppy_api+vue3實現前后端分離的登錄功能

實現思路 1、準備zdppy的開發環境 2、使用amauth提供的低代碼接口&#xff0c;直接生成login登錄接口 3、使用之前開發的登錄模板渲染登錄界面 4、給登錄按鈕綁定點擊事件 5、給用戶名和密碼的輸入框雙向綁定數據 6、使用axios在登錄按鈕點擊的時候&#xff0c;攜帶用戶數據發…

PySide(PyQt)與OpenCV圖像格式的相互轉換

PySide和OpenCV在圖像格式上的區別&#xff1a; 主要表現在圖像數據的存儲方式和使用場景上。以下是一些關鍵區別&#xff1a; 1. 數據結構 PySide: QImage 和 QPixmap 是 PySide 中常用的圖像表示形式。 QImage&#xff1a;用于直接訪問圖像的像素數據&#xff0c;適合需要…

C++ | Leetcode C++題解之第207題課程表

題目&#xff1a; 題解&#xff1a; class Solution { private:vector<vector<int>> edges;vector<int> indeg;public:bool canFinish(int numCourses, vector<vector<int>>& prerequisites) {edges.resize(numCourses);indeg.resize(numCo…

MyBatis(15)MyBatis 的延遲加載是如何實現

MyBatis 的延遲加載&#xff08;懶加載&#xff09;特性允許在需要使用關聯對象數據時才進行加載&#xff0c;而不是在執行主查詢時就加載所有相關數據。這種機制可以提高應用程序的性能&#xff0c;特別是當關聯數據龐大或關聯層次較深時。我們將通過以下幾個方面來深入了解My…

昇思25天學習打卡營第13天|MindNLP ChatGLM-6B StreamChat

學AI還能贏獎品&#xff1f;每天30分鐘&#xff0c;25天打通AI任督二脈 (qq.com) MindNLP ChatGLM-6B StreamChat 本案例基于MindNLP和ChatGLM-6B實現一個聊天應用。 1 環境配置 %%capture captured_output # 實驗環境已經預裝了mindspore2.2.14&#xff0c;如需更換mindspo…

[知識點篇]《計算機組成原理》之數據信息的表示

1、數據表示的作用 &#xff08;1&#xff09;定義&#xff1a;將數據按照某種方式組織&#xff0c;以便機器硬件能直接識別和使用。現代計算機采用二進制進行數據表示。 &#xff08;2&#xff09;數據表示考慮因素&#xff1a; 數據的類型&#xff1a; 數值/非數值、小數、…

讀AI新生:破解人機共存密碼筆記17不確定性和概率

1. 前向搜索 1.1. 通過前向搜索&#xff0c;通過考慮各種可能的動作序列的結果&#xff0c;來選擇動作&#xff0c;是智能系統的基本能力 1.2. 如果一家卡車運輸公司想要優化其100輛卡車在美國的運輸&#xff0c;那么該公司可能需要考慮的狀態數量將是10^700個 1.3. 幾乎所有…

Linux之masscan工具安裝和使用

一、masscan簡介 Masscan是一款快速、高效且開源的端口掃描工具,被廣泛用于網絡安全領域。它的設計目標是實現極高的掃描速度,使其能夠在極短的時間內掃描整個互聯網的IPv4地址空間。以下是masscan的主要特性和功能: 極高的掃描速度:Masscan的設計目標是快速和靈活,它能夠…