密碼學 - SSH 協議



安全外殼 (SSH) 協議是一種透過網路安全地傳送命令到計算機的方法,即使是在不安全的網路上。它使用特殊的程式碼來確保連線安全和私密。使用 SSH,您可以遠端控制計算機,就像商店老闆在旅行時可能會向員工發出指示一樣。

在 SSH 之前,像 Telnet 這樣的舊方法可以讓任何人都看到正在傳送的指令。就像把商店老闆放在擴音電話上,店裡的每個人都能聽到私人談話。但是 SSH 保持一切秘密和安全,就像在您的對話周圍有一個安全的殼一樣。

SSH 的歷史背景和發展

Tatu Ylonen 於 1995 年開始開發安全外殼,因為他需要一個比 Telnet 更安全的替代方案來管理他大學的網路。SSH 的初始版本稱為“安全外殼 v1”,但它存在重大的安全問題,後來在“安全外殼 v2”中得到了修復。

它是如何工作的?

SSH 客戶端連線到 SSH 伺服器以建立連線,因為該協議在客戶端-伺服器系統上工作。SSH 客戶端啟動連線設定過程,並使用公鑰密碼術對 SSH 伺服器的身份進行身份驗證。SSH 協議在設定後使用強大的對稱加密和雜湊方法,以確保在客戶端和伺服器之間傳輸的資料的機密性和完整性。

下圖顯示了建立安全外殼連線的簡化過程。

SSH Connection

關鍵元件

SSH 連線需要三個基本要素:金鑰、伺服器和客戶端。一般來說,客戶端是由使用者安裝的計算機軟體,它發出連線請求。

伺服器軟體安裝在另一臺計算機上,接收來自客戶端的傳入請求。稱為金鑰的數字檔案儲存兩端安全連線和身份驗證所需的資料。

SSH 的屬性

以下是我們需要考慮的 SSH 的一些屬性:

  • 加密 - 為了維護機密性並阻止對系統的未經授權的攻擊,客戶端和伺服器之間傳輸的加密資料。
  • 身份驗證 - SSH 使用公鑰和私鑰對進行身份驗證,這比傳統的密碼身份驗證提供了更高的安全級別。
  • 資料完整性 - 在通訊期間,SSH 確保傳送的訊息的資料完整性。
  • 隧道 - 為了透過加密通道轉發網路通訊,我們可以使用 SSH 建立安全的隧道。

SSH 埠轉發

SSH 埠轉發是一種保護 TCP/IP 連線的方法。TCP/IP 資料包可以透過 SSH 連結進行隧道傳輸,隱藏資料並保護通道免受攻擊者的攻擊。SSH 埠轉發也可以被視為一種虛擬專用網路。

SSH 埠轉發的型別

您可以透過使用 SSH 埠轉發透過加密連線安全地連線到遠端資源。有三種類型的 SSH 埠轉發:

  • 本地埠轉發 - 透過這種型別的埠轉發,您可以將本地工作站上的埠的流量重定向到網路上或外部網路上的另一臺機器上的埠,透過安全的 SSH 隧道。
  • 遠端埠轉發 - 透過此型別,您可以將一臺機器上的埠的流量重定向到另一臺機器,透過 SSH 隧道和加密連線。
  • 動態埠轉發 - 透過這種形式的埠轉發,流量透過 SSH 伺服器和本地 SOCKS 代理伺服器傳送到網路上的其他機器。透過這樣做,您可以越過防火牆並使用遠端網路提供的每項服務。

SSH 的用途

安全外殼 (SSH) 協議是一種安全地從一臺計算機遠端登入到另一臺計算機的方法。它為強大的身份驗證提供了多種選擇,並使用強大的加密來保護對話的安全性和完整性。它是 FTP 等不安全的檔案傳輸技術和 telnet 和 rlogin 等不受保護的登入協議的安全替代方案。

企業網路使用該協議用於:

  • 授予人員和自動化流程安全訪問許可權。
  • 自動和互動式檔案傳輸。
  • 遠端傳送命令。
  • 監控網路基礎設施和其他關鍵系統元件。

SSH 的應用

安全外殼的應用如下:

1. 對伺服器和裝置的安全遠端訪問

SSH(安全外殼協議)建立了一條安全的加密路由,用於遠端訪問伺服器和裝置。當伺服器或裝置位於不同的物理位置(例如資料中心或雲網絡)時,這非常有用。

2. 透過 SSH 連線使用 SCP 或 SFTP 協議進行安全檔案傳輸

除了遠端訪問之外,SSH 還可以透過 SCP(安全複製協議)或 SFTP(SSH 檔案傳輸協議)安全地透過網路傳輸檔案。這兩種協議都透過加密客戶端和伺服器之間傳送的資料來提供安全的檔案傳輸。

3. 使用埠轉發透過加密通道隧道傳輸流量

SSH 隧道允許使用者透過加密通道路由通訊,在兩個目的地之間建立安全連線。這可以透過設定埠轉發規則來實現,該規則將本地機器上的一個埠的流量路由到遠端機器上的另一個埠。

SSH 連線常見問題的故障排除

與任何其他技術一樣,SSH 連線也可能無法正常工作。這些問題可能從基本的連線問題到複雜的配置或安全問題不等。

常見的錯誤訊息和解決方案

SSH 最常見的問題之一是收到指示連線問題的錯誤訊息。最常見的問題包括“連線超時”、“許可權被拒絕”和“主機金鑰驗證失敗”。這些問題的解決方案因來源而異,但通常涉及檢查網路連線、驗證憑據或許可權,或監控配置設定。

診斷連線問題的除錯技巧

診斷 SSH 連線問題可能很困難,尤其是在您不熟悉其背後的技術或對診斷工具的訪問有限的情況下。值得慶幸的是,有很多方法可以識別和解決網路連線問題。解決 SSH 連線問題的第一步是確保客戶端和伺服器工作站之間的基本網路連線。

諸如 ping 和 traceroute 之類的工具可用於識別網路路由問題或防火牆阻止。如果基本連線正常,但您仍然遇到 SSH 連線問題,則可能需要評估您的身份驗證設定或檢視日誌以獲取有關導致問題原因的更多資訊。

SSH 的優點

使用 SSH 的優點如下:

  • 安全性 - 使用 SSH 的主要優點是能夠透過不受信任的網路建立安全連線。
  • 簡單性 - 設定 SSH 連線有時就像在雙方安裝軟體一樣簡單。
  • 靈活性 - 透過 SSH 連線後,使用者可以遠端執行各種操作,而無需物理訪問伺服器。

SSH 的缺點

使用 SSH 的缺點如下:

  • 效能開銷 - 加密過程可能會導致一些效能成本,尤其是在透過網路傳送大量資料時。
  • 複雜性 - 配置 SSH 連線可能很困難,需要對底層原理和協議有紮實的瞭解。
  • 安全風險 - SSH 連線的安全程度與其用於身份驗證的金鑰一樣安全。如果金鑰被駭客入侵或被盜,未經授權的人員可以訪問關鍵資訊。

SSH 與 SSL

SSH(安全外殼)和 SSL(安全套接字層)之間的主要區別如下:

序號 SSH(安全外殼) SSL(安全套接字層)
01 SSH 是一種隧道協議,具有使用者名稱/密碼身份驗證系統。 SSL 沒有使用者名稱或密碼身份驗證系統。
02 通常 SSH 在 22 埠號上工作。 它在 443 埠號上工作。
03 SSH 依賴於網路隧道。 SSL 依賴於證書。
04 這是一個用於伺服器和客戶端身份驗證過程的三階段過程。 它是用於伺服器和客戶端身份驗證的數字證書。
05 它加密網際網路上兩臺計算機之間的通訊。 SSL 加密瀏覽器和伺服器之間的通訊。
06 SSH 適用於安全地在網際網路上執行命令。 它安全地傳輸信用卡和銀行業務中的關鍵資料。
07 SSH 使用對稱金鑰演算法來提供資料機密性。 SSL 使用對稱和非對稱加密演算法來提供資料隱私。
廣告

© . All rights reserved.