首頁 > 科技

想要玩轉網路 SSH必須瞭解下

2021-06-22 17:40:12

經常看到各種高階的網路應用教程,比如穿透內網、跨系統網路連線等,會提到一個單詞——SSH。尤其是在Linux類的裝置或相關設定中,要修改網路、遠端控制之類的操作,幾乎都會涉及到SSH操作。那麼這個SSH究竟是什麼呢?

這事兒就得說到網際網路上的裝置通訊了,它們既需要保密,又需要方便,還得互相相容,所以對加密處理有一定的要求。解決方式就是使用各個平臺都支援得協議,它們既能加密又帶有快捷的內建認證技術,例如rlogin、Telnet、FTP或者rsh之類的,SSH也是這種協議,而且安全性比較突出。

由於優勢突出,所以SSH目前已經成為了Linux系統和很多裝置,比如路由器作業系統的標準配置。它既可以用於計算機之間的加密登入,也支援隧道協議、埠對映和X11連線,藉助SFTP或SCP協議還可以傳輸檔案,應用範圍特別廣。所以我們只要進行網路設定,就經常會碰到SSH協議,比如很多小夥伴進行遠端控制時需要「穿透」內網的時候。

SSH的工作原理在不同的應用中有所區別,不過大致方式差不多,就是伺服器啟動的時候自己產生一個金鑰(768bit公鑰),本地的SSH客戶端傳送連線請求到SSH伺服器,伺服器檢查連線客戶端傳送的資料和IP地址,確認合法後傳送金鑰給客戶端,此時客戶端將本地私鑰(256bit)和伺服器的公鑰結合成金鑰對key(1024bit)併發回給伺服器端。

具體來說,在使用SSH登入工具時,SSH客戶端的登入方式是這樣的:

ssh user@remote -p port

其中「user」是你在遠端機器上的使用者名,如果不指定的話預設為當前使用者;「remote」則是遠端機器的地址,可以是IP地址(區域網)、域名(區域網、廣域網);最後的「port」是指SSH伺服器端監聽埠,如果不指定的話就為預設值22(SSH協議專用埠)。這樣的登入命令執行後,再依據提示確認公鑰、輸入私鑰就可以了。

從安全性角度上看這樣的「雙保險」可以最大限度確保SSH的安全性連線,但是它也造成了不必要的麻煩——驗證公鑰,輸入私鑰這樣繁瑣的操作。其實,這些也可以通過SSH的客戶端軟體實現免金鑰登入的。我們就以Windows平臺下的Putty(SSH登入工具)舉例說明。

除了開啟putty的介面外,我們還可以新建一個Putty的快捷方式,然後右鍵單擊該快捷方式,然後選擇「屬性」,在「目標」欄中新增「 -ssh -l root -P 22 123.123.123.123 -pw 456」。注意新增時要在putty.exe後連線一個空格,埠號「22」,其後的IP地址或域名都可根據實際情況修改;最後在-pw後輸入目標電腦的SSH密碼就行了。

設定完畢點選確定,並雙擊這個快捷方式,它便可以自動連線到指定好的目標主機SSH上,再確認儲存一下公鑰,日後使用就完全不需要輸入使用者名密碼了,非常方便。當然,這只是SSH最基本的登入方法,具體要實現何種操作,則是根據你輸入的命令來決定的,有興趣的小夥伴不妨多多摸索。


IT145.com E-mail:sddin#qq.com