ssh免密碼原理_只要看這個就懂了

    本人目前在學習spark處理大數據應用方面的視頻,其中正在理解spark處理hadoop生態形成的分佈式存儲數據庫方面的知識:

    衆所周知, hadoop 以"分佈式系統"這樣的名頭貫串整個Java生態體系.閒話不多說.熟悉搭建hadoop分佈式框架的同學都很清楚ssh的作用,但是對於初學者來書,ssh似乎很神祕!更何況對沒有接觸過linux系統的同學而言.這篇文章就是想在學習hadoop的同時,對ssh的原理作本人認爲更進一步的理解,同時能夠熟練掌握ssh命令作的一些記錄.

    學習ssh之前,我嘗試去百度搜索各種ssh通信方面的原理,有時候看着看着,自己都被一系列"解密"/"通信握手"給弄糊塗了.直到看到看到 https://www.cnblogs.com/kex1n/p/6017963.html?utm_source=itdadao&utm_medium=referral,算是基本瞭解,但是這篇文章在有個地方講得比較隱晦,也就是在第四步驟:(serverA想免密碼登錄serverB的背景下)serverB在接收到serverA的請求鏈接時候隨機生成密碼的講得過於草率,在這一點上,也會對ssh的生成"隨機數字"與解密的方式產生一定程度的誤解.本人認爲,serverB依靠其自身搭建的ssh服務,對serverA發送過來的信息包(ip,用戶名等),做了一層加密的方法,用以確認serverA的身份,然後根據過去正真打ServerA發過來的公鑰,並利用rsa算法所產生的"隨機值"作爲serverA需要破解的字符或者信息,把"隨機值"發送回serverA讓其解密,最後serverB再次確認從serverA中獲取到的所謂的被破解的"隨機值"是否正確來完成了一輪溝通,這也是爲什麼要三次握手的由來.

    說了這麼多,本人嘗試用生活中的最簡單的一個例子來代表ssh通信的一般原理.

需要手動輸入密碼的登錄行爲

   最最原始的一種登錄系統的行爲,每次都需要輸入賬號和密碼,這好比開門一樣,賬戶名就是那扇門,密碼就好比一把鑰匙,

  這最好理解,每次進入(系統),我都需要找到(用戶名)[這個用戶我並不理解成家的主人,而是理解成門或者門牌號],並且要用指定的鑰匙(密碼)才能打開門(用戶),進入自己的家.隨着時間的流逝,技術的更新迭代,家裏面爲了提高防盜手段,在各個通道(端口),已經安裝了足夠強悍的防盜系統(防火牆),而且防盜系統越來越智能,各種人臉識別/手紋識別(數學密碼及破解算法)技術日益興起.那麼有些懶人就開始思考了,爲啥每次進家還要鑰匙呀?這不多此一舉嗎?bingo,接下來就是講解免密手段,也就是不用明面上不用帶鑰匙的一種方法,而是通過家的智能防盜系統(ssh解密方式)來自動識別

免密的登錄行爲

  

上圖代表了基本打解密方式和方法.這裏最重要打要屬serverB在建立key的過程以及serverA破解的過程.這裏就會涉及密碼學中的各種技術,比如對稱加密/非對稱加密/hash加密等等方法,可見,方法可以參看

    https://blog.csdn.net/clh604/article/details/22179907

由於本人才疏學淺,難免會有錯誤,希望大家指正!

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