VPN的實現技術主要包括:
- L2TP協議
L2TP是一種基于PPP的二層隧道協議。在由L2TP構建的VPN中,有兩種類型的服務器,一是L2TP訪問集中器LAC(L2TP Access Concentrator),附屬在網絡上的具有PPP端系統和L2TP協議處理能力的設備,為用戶提供認證的網絡接入服務器;二是L2TP 網絡服務器LNS(L2TP Network Server),PPP端系統上用于處理L2TP協議服務器端部分的軟件。
LNS和LAC存在兩種連接類型,Tunneling連接和會話(Session)連接。
前者定義一個 LNS和LAC對;后者復用在隧道連接之上,表示隧道連接的每個PPP會話過程。
L2TP連接維護和PPP數據傳送通過L2TP消息交換完成,L2TP消息分為兩種:控制消息和數據消息。
控制消息用于隧道連接、會話連接建立與維護,數據消息用于承載用戶PPP的數據包。消息通過UDP的1701端口承載于TCP/IP之上,圖5-34所示應用L2PT構建的VPN服務。
在L2TP構建的VPN中,L2TP協議網絡組件包括三部分:
①遠端系統,是接入VPDN網絡的遠地用戶和分支機構,通常是撥號用戶的一臺主機或私有網絡的路由設備。
②LAC,是附屬在交換網絡上的具有PPP端系統和L2TP協議處理能力的設備,通常是當地ISP的一個NAS,為PPP類型的用戶提供接入服務。
LAC位于LNS和遠端系統之間,用于LNS和遠端系統之間傳遞信息包。
LAC從遠端系統收到信息包按照L2TP協議封裝發送LNS,同時從LNS收到信息包解封裝發送遠端系統。
LAC與遠端系統采用本地連接或PPP鏈路,VPN應用為PPP鏈路。
③LNS,既是PPP端系統又是L2TP協議服務器端,通常作為企業內部網的一個邊緣設備。
LNS作為L2TP隧道的另一側端點即LAC的對端設備,LAC進行隧道傳輸的PPP會話邏輯終止端點。
通過在公網中建立L2TP隧道,將遠端系統PPP連接的另一端延伸至企業網內部LNS。
- IPSec協議
IPSec(Internet Protocol Security)是一種開放標準的框架結構,使用加密服務確保Internet通訊安全而順暢。L2TP沒有解決隧道加密和數據加密問題,IPSec協議集多種安全技術,可以建立一個安全、可靠的隧道。
安全技術包括:Diffie Hellman密鑰交換技術,DES、RC4、IDEA數據加密技術,哈希散列算法Hmac、MD5、SHA,數字簽名技術。
IPSec是一個應用于IP層上網絡數據安全的用于認證、機密性和完整性的標準協議包,包括認證協議(Authentication Header,AH)、封裝安全載荷協議(Encapsulating Security Payload,ESP)、密鑰管理協議(Internet Key Exchange,IKE)和用于認證與加密的算法如DES、IDEA等。
IPSec是一個第三層VPN協議,定義了如何在對等層之間選擇安全協議、安全算法和密鑰交換,向上層提供訪問控制、數據源驗證、數據加密等安全服務;各協議之間的關系如圖5-35所示。
①AH為IP數據包提供無連接的數據完整性和數據源身份認證,具有防重放攻擊的能力。數據完整性校驗通過消息認證碼(如MD5)產生的校驗值來保證;數據源身份認證通過在待認證數據中加入一個共享密鑰實現;AH報頭中可以防止重放攻擊。
②ESP為IP數據包提供數據保密性、無連接的數據完整性、數據源身份認證以及防重放攻擊保護。與AH相比,數據保密性是ESP的新增功能,數據源身份認證、數據完整性檢驗以及重放保護都是AH可以實現的。
③AH和ESP可以單獨使用,也可以配合使用。通過這些組合模式,可以在兩臺主機、兩臺安全網管(防火墻和路由器)或主機與安全網關之間配置多種靈活的安全機制。
④解釋域DOI將所有的IPSec協議捆綁在一起,是IPSec安全參數的主要數據庫。
⑤密鑰管理包括IKE協議和安全聯盟(SA)等部分。IKE在通信系統之間建立安全聯盟,提供密鑰管理和密鑰確定機制,是一個產生和交換密鑰材料并協調IPSec參數的框架。IKE將密鑰協商的結果保留在SA中,供AH和ESP以后通信時使用。
AH和ESP都支持兩種模式:傳輸模式和隧道模式。傳輸模式IPSec對上層協議提供保護,用于兩個主機之間的端到端通信。
隧道模式IPSec對所有IP包保護,用于安全網關之間,可以在Internet上構建VPN。使用隧道模式,在防火墻之后,內部網的一組主機不實現IPSec參加安全通信。
局域網邊界的防火墻IPSec軟件建立隧道模式SA,主機產生的未保護數據包通過隧道連接外部網絡。
IPSec提供了兩種安全機制,認證和加密。
認證機制使IP通信的數據接收方能夠確認數據發送方的真實身份以及數據在傳輸過程中是否遭篡改;加密機制通過對數據進行編碼來保證數據的機密性,以防數據在傳輸過程中被竊聽。
AH定義了認證的應用方法,提供數據源和完整性認證;ESP定義了加密和可選認證的應用方法,提供可靠性保證。
在實際IP通信時,根據安全需求同時應用兩種協議或選擇一種。AH和ESP都提供認證服務,AH認證服務強于ESP,IKE用于密鑰交換。
AH協議為IP通信提供數據源認證、數據完整性和反回放保證,保護通信免受篡改,不能防止竊聽,適用于傳輸非機密數據、不提供機密性保護。
AH有傳輸、隧道兩種工作模式。圖5-36顯示了兩種IPSec鑒別服務的模式。
一種是在服務器和客戶機之間直接提供鑒別服務,工作站和服務器共享受保護的密鑰,使用傳輸模式的SA,鑒別處理是安全的。
另一種是工作站向公司防火墻鑒別自己身份,使用隧道模式的SA,訪問整個內部網絡或服務器不支持鑒別特征。
ESP協議為IP數據包提供數據保密性、無連接的數據完整性、數據源身份認證和防重放攻擊保護,數據保密性是基本功能,數據源身份認證、數據完整性檢驗以及重放保護是可選功能。ESP可以單獨使用,也可以和AH結合使用。
一般ESP不加密整個數據包,只加密IP包的有效載荷部分,不包括IP頭;在端到端的隧道通信中ESP加密整個數據包。
ESP有傳輸、隧道兩種工作模式,圖5-37顯示了ESP服務的傳輸模式,圖5-38顯示了ESP服務的隧道模式,前者在兩個主機之間提供加密和鑒別服務,后者使用隧道模式建立VPN。
圖5-39顯示了ESP隧道模式的一個例子,一個組織有4個專用網絡通過Internet連接起來。
內部網絡主機使用Internet傳輸數據,不是同基于Internet的其它主機交互。在每個內部網絡的安全網關上終止隧道,允許主機避免安全能力。
- SSL協議
最新研究表明,90%的企業利用VPN訪問Web和電子郵件通信,10%的用戶用于聊天協議和私有客戶端應用。
90%的應用可以利用簡單、低成本的VPN技術------SSL VPN提供安全服務。
SSL安全套接層協議層(Secure Sockets Layer)是一種在Web服務協議(HTTP)和TCP/IP之間提供數據連接安全性的協議,為TCP/IP連接提供數據加密、用戶與服務器身份驗證和消息完整性驗證。
SSL被視為因特網上Web瀏覽器和服務器的安全標準。
SSL安全協議提供三方面的安全服務:
①用戶和服務器的合法性認證。
認證用戶和服務器的合法性,使得它們確信數據被發送到正確的客戶機和服務器;客戶機和服務器都有各自的識別號,由公開密鑰編號,SSL協議在握手交換數據時進行數字認證,以此確保用戶的合法性。
②數據以加密方式被傳送。
SSL采用的加密方式既有對稱密鑰技術、也有公開密鑰技術。
客戶機與服務器交換數據之前,交換SSL初始握手信息,SSL握手信息采用了各種加密技術,保證其機密性和完整性,并且用數字證書鑒別,防止非法用戶破譯。
③保護數據的完整性。
SSL采用Hash函數和機密共享的方法提供信息的完整性服務,建立客戶機與服務器之間的安全通道,SSL處理的業務在傳輸過程中完整、準確無誤到達目的地。
SSL 安全協議包括兩個工作階段:
①握手階段,客戶端和服務器用公鑰加密算法計算出私鑰。
②數據傳輸階段,客戶端和服務器都用私鑰加密、解密傳輸過來的數據。
③在TCP連接建立之后,SSL客戶端發出一個Hello消息握手,消息包括自己可實現的算法列表和其它需要的消息。
④SSL服務器回應一個類似Hello消息,確定通信需要的算法,并發送自己的證書。
⑤SSL客戶端收到消息后生成一個消息,用SSL服務器公鑰加密后傳送過去,SSL服務器用自己私鑰解密,會話密鑰協商成功,雙方用私鑰算法進行通信。
SSL安全協議認證工作流程:
①服務器認證階段
客戶端向服務器發送一個Hello信息開始一個新的會話連接;
服務器根據客戶信息確定是否生成新的主密鑰,若需要,服務器在響應客戶Hello信息時包含生成主密鑰所需信息;
客戶根據收到的服務器響應信息,產生一個主密鑰,用服務器公開密鑰加密后傳送給服務器;
服務器恢復主密鑰,返回給客戶一個用主密鑰認證的信息,讓客戶認證服務器。
②用戶認證階段
在此之前,服務器已經通過了客戶認證,這一階段主要完成對客戶的認證;
經認證的服務器發送一個提問給客戶,客戶則返回數字簽名后的提問和其公開密鑰,從而向服務器提供認證。
SSL有限支持windows應用或非Web系統,大多數SSL VPN都是基于Web瀏覽器工作,遠程用戶不能在Windows,、UNIX、linux、AS400 或大型系統上進行非Web應用。
SSL為訪問資源提供有限安全保障,基于SSL的Web瀏覽器進行VPN通信,對用戶來說外部環境并不安全;
因為SSL VPN只對通信雙方某個應用通道加密,不對通信雙方主機之間的整個通道加密。
圖5-40顯示應用SSL構建的VPN服務,為HTTP服務通道加密
我是木子雨辰,一位信息安全領域從業者,@木子雨辰將一直帶給大家信息安全知識,每天兩篇安全知識、由淺至深、采用體系化結構逐步分享,大家有什么建議和問題,可以及留言,多謝大家點擊關注、轉發、評論,謝謝大家。
大家如果有需要了解安全知識內容需求的可以留言,溝通,愿與大家攜手前行。