安全外殼協議
出自 MBA智库百科(https://wiki.mbalib.com/)
- 安全外殼協議(Secure Shell Protocol,SSH)
目錄 |
什麼是安全外殼協議[1]
安全外殼協議(以下簡稱SSH協議)是一種在不安全網路上用於安全遠程登錄和其他安全網路服務的協議。它提供了對安全遠程登錄、安全文件傳輸和安全TCP/IP和X Window系統通信量進行轉發的支持。它可以自動加密、認證並壓縮所傳輸的數據。正在進行的定義SSH協議的工作確保SSH協議可以提供強健的安全性,防止密碼分析和協議攻擊,可以在沒有全球密鑰管理或證書基礎設施的情況下工作得非常好,並且在可用時可以使用已有的證書基礎設施(例如DNSSEC和X.509)。
SSH協議的構成[2]
SSH協議由3個主要組件組成。
(1)傳輸層協議。它提供伺服器認證、保密性和完整性,並具有完美的轉發保密性:有時,它還可能提供壓縮功能。
(2)用戶認證協議。它負責從伺服器對客戶機的身份認證。
(3)連接協議。它把加密通道多路復用組成幾個邏輯通道。
SSH傳輸層是一種安全的低層傳輸協議。它提供了強健的加密、加密主機認證和完整性保護,SSH中認證是基於主機的,不執行用戶認證。
這種協議被設計成相當簡單而靈活,以允許參數協商並最小化來回傳輸的次數i密鑰交換方法、公鑰演算法、對稱加密演算法、消息認證演算法以及哈希演算法都需要協商。
數據完整性是通過在每個包中包括一個消息認證代碼(MAC)來保護的,這個MAC根據一個共用密鑰、包序列號和包的內容計算得到。
在UNIX、Windows和Macintosh系統上都可以找到SSH實現。它是一種被廣為接受的協議,使用公鑰演算法眾所周知的建立軟體,具有良好的加密、完整性和公鑰演算法。
SSH協議的優點[3]
SSH與TELNET相比有下述優點。
- SSH通過加密信息和驗證信息提供一種安全通信。
- SSH通過多通道多路傳輸為遠程登錄在相同的連接上提供幾種附加數據傳輸。
SSH通過公共考鋸勿考(public-keyencryption)實現客戶端和遠程伺服器之間的安全性。當一個用戶建立了一個到遠程伺服器的連接時,即使一個入侵者得到了通過SSH連接發送的數據包的拷貝,傳輸的數據仍處於保密狀態。SSH還在信息上實施了一個驗證過程,這樣伺服器可發現並查出該主機正試圖獲得一個連接。在通常隋況下,SSH需要用戶輸入一個私有口令。
一個簡單的SSH互動式會話從伺服器監聽安全傳輸的埠號開始,該埠是特定分配的。在一個口令被提交後,SSH開始關於會話的一個外殼進程。SSH可同時處理一個會話中的多個數據傳輸。這類遠程登錄服務是多路復用在一個SSH連接之上傳輸的。SSH還可在兩台機器上通過建立一個安全隧道來實施端臼轉發(port forwarding)。在SSH遠程登錄部分,用戶允許SSH通過一個隧道自動把一個剛到的TCP連接和一個新連接相連。在網際網路上發送的數據要確保其安全傳送,防止被竊聽和篡改。
SSH類似於一個隧道函數。例如,當客戶端為一個自己的埠k1,構造一個到遠程伺服器的SSH連接時,它可以確定此埠的TCP連接自動通過隧道轉發給伺服器,然後又會被連接到與第二個伺服器的埠恕的另外一個連接上。用這種方法,客戶端在它的機器上有一個已建立的TCP連接,並且第二個伺服器建立了一個到第一個伺服器的TCP連接。埠轉發的好處是應用數據可在兩個站點——客戶端和第二個伺服器之間進行傳送而不需要第二個客戶端和伺服器(第一個伺服器作為客戶端和第二個伺服器作為伺服器)。下圖給出了一個SSH包格式。
- 長度(1ength)指明瞭包的大小,並不包括長度欄位或長度欄位之後的可變長度的膳稅黃,掉段。
- 填充(Padding)使得入侵變得更加困難。
- 類型用於識別信息的類型。
- CRC或稱迴圈冗餘校驗,是一種差錯檢測欄位。
當數據加密有效時,除了長度之外的所有欄位被加密。SSH也允許數據的可選性壓縮,當在窄帶寬環境中使用SSH時,這種方法非常有用。在這些情況下,客戶端和伺服器間來協商壓縮的形式,並且只有類型和數據欄位被壓縮。
SSH 3.0介紹[2]
美國網際網路安全技術的開發者SSH Communications Security(SSH通訊安全公司)發佈的加密軟體產品SSH SecureShell 3.0主要防止黑客使用最普通的方法攻擊終端用戶、商業用戶以及開發者,從網際網路偷取用戶口令。
PKI和智能卡加密功能的集成將進一步提高公司用戶和個人用戶的Intemet通信安全?如今,像電子商務等基於Web頁面的應用軟體和移動電腦需要的不只是簡單的口令或者個人ⅡD數字來保證Intemet交易的安全:SSH Secure Shell 3.0使用最新的認證標準,提供簡單易用的SSH Secure Shell,進一步提高了用戶遠程登錄的安全性。
SSHSecure Shell 3.0最新功能包括為公共密鑰基礎設施(PKl)、智能卡和高級加密標準(Rijndael)演算法提供加密支持。Secure Shell 3.0通過驗證和加密Intemet終端的連接和文件轉移,為任何基於IP連接的客戶和服務端應用程式提供全透明、強健的安全保證。
SSH Secure Shell 3.0的最新特征有以下幾個。
(1)公共密鑰基礎設施支持。通過X.509數字認證支持,SSH Secure Shell 3.0容易集成到PKI環境中,提高登錄和認證過程的安全性。
(2)智能卡支持。隨著智能卡的日益普及,用戶的存儲安全將倍受關註,SSH Secure Shell 3.0為智能卡用戶的網路交易消除了後顧之憂。通過PKCS#15介面,SSH Secure Shell支持符合該標準的各種智能卡。
(3)高級加密標準支持。SSH Secure Shell 3.0支持這種最新的、被建議的加密演算法,它最初的設計目的是保護敏感的政府信息,但是現在它已經作為下一代加密演算法的標準廣泛地被公司和私人用戶所接受。這個提議一旦通過,靈活、易用、高性能以及高效率的AES將代替落後的數據加密標準(DES)。
(4)可插入認證模塊(PAM)。SSH Secure Shell 3.0為PAM增加了Windows支持,以前,PAM認證服務僅應用於Linux和Solaris平臺。PAM允許系統管理員定製一個靈活的安全管理策略。
(5)改進Kerberos 5。SSH Secure Shell在基於UNIX的客戶端伺服器上通過擴展用戶認證選項,為系統管理員增加靈活的網路認證協議Kerberos支持。