SSH介紹
SSH(Secure Shell 的縮寫)是一種網(wǎng)絡(luò)協(xié)議,用于加密兩臺(tái)計(jì)算機(jī)之間的通信,并且支持各種身份驗(yàn)證機(jī)制馍乙。OpenSSH 工具是SSH 協(xié)議當(dāng)前最流行的一種實(shí)現(xiàn)递览,Linux 的所有發(fā)行版幾乎都自帶 OpenSSH拟淮。
SSH 的軟件架構(gòu)是服務(wù)器-客戶端模式(Server - Client)狗超。在這個(gè)架構(gòu)中弹澎,SSH 軟件分成兩個(gè)部分:向服務(wù)器發(fā)出請(qǐng)求的部分,稱為客戶端(client)努咐,OpenSSH 的實(shí)現(xiàn)為 ssh裁奇;接收客戶端發(fā)出的請(qǐng)求的部分,稱為服務(wù)器(server)麦撵,OpenSSH 的實(shí)現(xiàn)為 sshd
以上引用(抄自)SSH 教程
所以,sshd作為接收請(qǐng)求的SSH服務(wù)端溃肪,它若是掛了的話(程序停止運(yùn)行)免胃,客戶端或者說你的本地計(jì)算機(jī)是連不上服務(wù)器的。
OpenSSH
注:本文是在win10下操作惫撰。
開始羔沙,先確認(rèn)OpenSSH 是否安裝。win10下厨钻,進(jìn)行如下確認(rèn)/安裝
打開“設(shè)置”扼雏,選擇“應(yīng)用”>“應(yīng)用和功能”,然后選擇“可選功能” 夯膀。
-
掃描列表诗充,查看是否已安裝 OpenSSH。 如果未安裝诱建,請(qǐng)?jiān)陧?yè)面頂部選擇“添加功能”蝴蜓,然后:
- 查找“OpenSSH 客戶端”,再單擊“安裝”
安裝好后,如圖
Visual Studio Code
vs cdoe , emm,一個(gè)寫代碼的工具(雖然你可以用它摸魚聊天找對(duì)象)茎匠。去它(官網(wǎng))(https://code.visualstudio.com/)下載安裝格仲。沒啥大問題。
安裝Remote-SSH插件
在vs code ssh連接服務(wù)诵冒,這里借助一個(gè)插件Remote-SSH凯肋。在左側(cè)活動(dòng)欄點(diǎn)擊擴(kuò)展,在插件商店中搜索插件名字Remote-SSH汽馋, 點(diǎn)擊進(jìn)行安裝侮东。
安裝好后,會(huì)在左側(cè)活動(dòng)欄看到一個(gè)新的組件惭蟋。
密碼輸入連接服務(wù)器
之后,我們嘗試連接服務(wù)器苗桂。根據(jù)下圖順序進(jìn)行點(diǎn)擊輸入。
- 點(diǎn)擊遠(yuǎn)程資源管理器
- 添加新的SSH連接告组,
- 輸入連接代碼煤伟,例如:
ssh username@127.0.0.1
image.png
之后,輸入連接命令后木缝,會(huì)提示選擇SSH保存地址便锨,我選擇一個(gè)路徑。最后在左側(cè)會(huì)看到成功添加一個(gè)SSH連接地址我碟。
接下來就可以連接服務(wù)器了放案,點(diǎn)擊左側(cè)那個(gè)連接符號(hào),會(huì)提示矫俺,輸入密碼吱殉,輸入服務(wù)器賬號(hào)密碼后。就連接成功了厘托。
下圖是連接成功的界面友雳。三鍵齊按 ctrl + shift + ` , 調(diào)出命令行終端铅匹。
密鑰登陸服務(wù)器
上面是用密碼輸入登錄服務(wù)器押赊,你會(huì)發(fā)現(xiàn)每次連接,或者打開文件夾包斑,都會(huì)要求輸入一遍密碼流礁。密碼簡(jiǎn)單不安全,復(fù)雜容易忘罗丰,輸入也很麻煩∩袼В現(xiàn)在我們使用密鑰進(jìn)行登錄。SSH密鑰登陸采用非對(duì)稱加密萌抵,需要公鑰和私鑰配合使用枕稀。
生成密鑰
在原來那個(gè)沒有連接服務(wù)器的vs code窗口, ctrl + shift + ` 調(diào)出終端
使用命令ssh-keygen
進(jìn)行密鑰生成,它有一些參數(shù)可以設(shè)置萎坷,比如-t 可以選擇加密算法凹联,這里就采用默認(rèn)設(shè)置。
命令運(yùn)行后哆档,一開始會(huì)提示密鑰的保存文件名蔽挠,id_rsa 是私鑰文件名,id_rsa.pub是公鑰文件名瓜浸,這里默認(rèn)澳淑,回車就行。
之后提醒第二個(gè)問題插佛,詢問是否對(duì)私鑰進(jìn)行密碼保護(hù)杠巡,這是進(jìn)一步做了安全保護(hù)。這里設(shè)置了密碼的話雇寇,每次密鑰登陸時(shí)氢拥,你還需要輸入密鑰密碼,也是有點(diǎn)麻煩锨侯,我這里就不進(jìn)行設(shè)置了嫩海,回車不設(shè)。
然后密鑰就生成了囚痴。
上傳公鑰
下一步叁怪,需要把本地生成的公鑰傳到服務(wù)器使用,打開公鑰深滚,復(fù)制其內(nèi)容(完整一行)
然后轉(zhuǎn)到已經(jīng)連接了服務(wù)器的vs code窗口, 打開文件奕谭,~/.ssh/authorized_keys
, 沒有的話,就手動(dòng)創(chuàng)建一個(gè)
然后在里面添加剛才復(fù)制的公鑰痴荐,保存展箱。我這里有兩個(gè)公鑰,因?yàn)橹疤砑舆^一個(gè)蹬昌。
之后再次連接,就會(huì)發(fā)現(xiàn)不要密碼攀隔,直接就可以登陸了