天天看點

VPN(虛拟專用網)攻略大全

作者:老李講安全

大家好,我是老李。今天我們聊聊VPN技術,但絕對不是要教大家翻牆哦。

在VPN出現之前,企業分支之間的資料傳輸隻能依靠現有實體網絡(例如Internet)。由于Internet中存在多種不安全因素,封包容易被網絡中的黑客竊取或篡改,最終造成資料洩密、重要資料被破壞等後果。除了通過Internet,還可以通過搭建一條實體專網連接配接保證資料的安全傳輸。

VPN(虛拟專用網)攻略大全

VPN簡介

VPN即虛拟專用網,泛指通過VPN技術在公用網絡上建構的虛拟專用網絡。VPN使用者在此虛拟網絡中傳輸私網流量,在不改變網絡現狀的情況下實作安全、可靠的連接配接。

VPN(虛拟專用網)攻略大全

VPN和傳統的資料專網相比具有如下優勢:

▫安全:在遠端使用者、駐外機構、合作夥伴、供應商與公司總部之間建立可靠的連接配接,保證資料傳輸的安全性。這對于實作電子商務或金融網絡與通訊網絡的融合特别重要。

▫廉價:利用公共網絡進行資訊通訊,企業可以用更低的成本連接配接遠端辦事機構、出差人員和業務夥伴。

▫支援移動業務:支援駐外VPN使用者在任何時間、任何地點的移動接入,能夠滿足不斷增長的移動業務需求。▫可擴充性:由于VPN為邏輯上的網絡,實體網絡中增加或修改節點,不影響VPN的部署。

公共網絡又經常被稱為VPN骨幹網(VPN Backbone),公共網絡可以是Internet,也可以是企業自建專網或營運商租賃專網。

VPN分類 - 根據建設機關不同

VPN(虛拟專用網)攻略大全

VPN分類 - 根據組網方式不同

VPN(虛拟專用網)攻略大全

VPN分類 - 根據實作的網絡層次

VPN(虛拟專用網)攻略大全

工作在網絡層和資料鍊路層的VPN又被稱為三層VPN和二層VPN。

VPN關鍵技術 - 隧道技術

VPN技術的基本原理是利用隧道(Tunnel)技術,對傳輸封包進行封裝,利用VPN骨幹網建立專用資料傳輸通道,實作封包的安全傳輸。

位于隧道兩端的VPN網關,通過對原始封包的“封裝”和“解封裝”,建立一個點到點的虛拟通信隧道。

VPN(虛拟專用網)攻略大全

隧道的功能就是在兩個網絡節點之間提供一條通路,使資料能夠在這個通路上透明傳輸。VPN隧道一般是指在VPN骨幹網的VPN節點之間建立的用來傳輸VPN資料的虛拟連接配接。隧道是建構VPN不可或缺的部分,用于把VPN資料從一個VPN節點透明傳送到另一個上。

隧道通過隧道協定實作。目前已存在不少隧道協定,如GRE(Generic Routing Encapsulation)、L2TP(Layer 2 Tunneling Protocol)等。隧道協定通過在隧道的一端給資料加上隧道協定頭,即進行封裝,使這些被封裝的資料能都在某網絡中傳輸,并且在隧道的另一端去掉該資料攜帶的隧道協定頭,即進行解封裝。封包在隧道中傳輸前後都要通過封裝和解封裝兩個過程。

部分隧道可以混合使用,如GRE Over IPSec隧道。

VPN關鍵技術 - 身份認證、資料加密與驗證

身份認證、資料加密和認證技術可以有效保證VPN網絡與資料的安全性:

▫身份認證:可用于部署了遠端接入VPN的場景,VPN網關對使用者的身份進行認證,保證接入網絡的都是合法使用者而非惡意使用者。也可以用于VPN網關之間對對方身份的認證。

▫資料加密:将明文通過加密變成密文,使得資料即使被黑客截獲,黑客也無法擷取其中的資訊。

▫資料驗證:通過資料驗證技術對封包的完整性和真僞進行檢查,丢棄被僞造和被篡改的封包。

VPN(虛拟專用網)攻略大全
VPN(虛拟專用網)攻略大全

常見VPN技術

IPSec概述

IPSec(IP Security) VPN一般部署在企業出口裝置之間,通過加密與驗證等方式,實作了資料來源驗證、資料加密、資料完整性保證和抗重放等功能。

VPN(虛拟專用網)攻略大全
  • 資料來源驗證:接收方驗證發送方身份是否合法。
  • 資料加密:發送方對資料進行加密,以密文的形式在Internet上傳送,接收方對接收的加密資料進行解密後處理或直接轉發。
  • 資料完整性:接收方對接收的資料進行驗證,以判定封包是否被篡改。
  • 抗重放:接收方拒絕舊的或重複的資料包,防止惡意使用者通過重複發送捕獲到的資料包所進行的攻擊。

IPSec協定體系

IPSec不是一個單獨的協定,它給出了IP網絡上資料安全的一整套體系結構,包括AH(Authentication Header)、ESP(Encapsulating Security Payload)、IKE(Internet Key Exchange)等協定。

VPN(虛拟專用網)攻略大全

IPSec使用認證頭AH(Authentication Header)和封裝安全載荷ESP(Encapsulating Security Payload)兩種安全協定來傳輸和封裝資料,提供認證或加密等安全服務。

▫AH和ESP協定提供的安全功能依賴于協定采用的驗證、加密算法。

▫AH僅支援認證功能,不支援加密功能。ESP支援認證和加密功能。

▫安全協定提供認證或加密等安全服務需要有秘鑰的存在。

秘鑰交換的方式有兩種:

▫帶外共享密鑰:在發送、接收裝置上手工配置靜态的加密、驗證密鑰。雙方通過帶外共享的方式(例如通過電話或郵件方式)保證密鑰一緻性。這種方式的缺點是可擴充性差,在點到多點組網中配置密鑰的工作量成倍增加。另外,為提升網絡安全性需要周期性修改密鑰,這種方式下也很難實施。

▫通過IKE協定自動協商密鑰:IKE建立在Internet安全聯盟和密鑰管理協定ISAKMP定義的架構上,采用DH(Diffie-Hellman)算法在不安全的網絡上安全地分發密鑰。這種方式配置簡單,可擴充性好,特别是在大型動态的網絡環境下此優點更加突出。同時,通信雙方通過交換密鑰交換材料來計算共享的密鑰,即使第三方截獲了雙方用于計算密鑰的所有交換資料,也無法計算出真正的密鑰。

IPSec基本原理

IPSec隧道建立過程中需要協商IPSec SA(Security Association,安全聯盟),IPSec SA一般通過IKE協商生成。

VPN(虛拟專用網)攻略大全

SA由一個三元組來唯一辨別,這個三元組包括安全參數索引SPI(Security Parameter Index)、目的IP位址和使用的安全協定号(AH或ESP)。其中,SPI是為唯一辨別SA而生成的一個32位比特的數值,它在AH和ESP頭中傳輸。在手工配置SA時,需要手工指定SPI的取值。使用IKE協商産生SA時,SPI将随機生成。

SA是單向的邏輯連接配接,是以兩個IPSec對等體之間的雙向通信,最少需要建立兩個SA來分别對兩個方向的資料流進行安全保護。

KE作為秘鑰協商協定,存在兩個版本:IKEv1和IKEv2,本課程采用IKEv1為例進行介紹,IKEv2内容可參考産品文檔對應内容。

▫IKEv1協商階段1的目的是建立IKE SA。IKE SA建立後對等體間的所有ISAKMP消息都将通過加密和驗證,這條安全通道可以保證IKEv1第二階段的協商能夠安全進行。IKE SA是一個雙向的邏輯連接配接,兩個IPSec對等體間隻建立一個IKE SA。

▫IKEv1協商階段2的目的就是建立用來安全傳輸資料的IPSec SA,并為資料傳輸衍生出密鑰。該階段使用IKEv1協商階段1中生成的密鑰對ISAKMP消息的完整性和身份進行驗證,并對ISAKMP消息進行加密,故保證了交換的安全性。

IKE協商成功意味着雙向的IPSec隧道已經建立,可以通過ACL方式或者安全架構方式定義IPSec“感興趣流”,符合感興趣流流量特征的資料都将被送入IPSec隧道進行處理。

感興趣流:需要被IPSec保護的資料流。

GRE概述

通用路由封裝協定(General Routing Encapsulation,GRE)是一種三層VPN封裝技術。GRE可以對某些網絡層協定(如IPX、IPv4、IPv6等)的封包進行封裝,使封裝後的封包能夠在另一種網絡中(如IPv4)傳輸,進而解決了跨越異種網絡的封包傳輸問題。

VPN(虛拟專用網)攻略大全

如圖所示,通過在IPv4網絡上建立GRE隧道,解決了兩個IPv6網絡的通信問題。

GRE還具備封裝多點傳播封包的能力。由于動态路由協定中會使用多點傳播封包,是以更多時候GRE會在需要傳遞多點傳播路由資料的場景中被用到,這也是GRE被稱為通用路由封裝協定的原因。

GRE基本原理

GRE構成要素分為3個部分:乘客協定、封裝協定和運輸協定。

▫乘客協定是指使用者在傳輸資料時所使用的原始網絡協定。

▫封裝協定的作用就是用來“包裝”乘客協定對應的封包,使原始封包能夠在新的網絡中傳輸。

▫運輸協定是指被封裝以後的封包在新網絡中傳輸時所使用的網絡協定。

VPN(虛拟專用網)攻略大全

隧道接口(Tunnel Interface)是為實作封包的封裝而提供的一種點對點類型的虛拟接口,與Loopback接口類似,都是一種邏輯接口。

如圖所示,乘客協定為IPv6,封裝協定為GRE,運輸協定為IPv4。整體轉發流程如下:

  1. 當R1收到IP1發來的IPv6資料包,查詢裝置路由表,發現出接口是隧道接口,則将此封包發給隧道接口處理。
  2. 隧道接口給原始封包添加GRE頭部,然後根據配置資訊,給封包加上IP頭。該IP頭的源位址就是隧道源位址,IP頭的目的位址就是隧道目的位址。
  3. 封裝後的封包在IPv4網絡中進行普通的IPv4路由轉發,最終到達目的地R2。
  4. 解封裝過程和封裝過程相反,這裡不再贅述。

GRE Over IPSec

GRE的主要缺點是不支援加密和認證,資料的安全傳輸得不到很好的保障。

IPSec的主要缺點是隻支援IP協定,且不支援多點傳播。

可通過部署GRE Over IPSec結合兩種VPN技術的優點。

VPN(虛拟專用網)攻略大全

L2TP概述

L2TP是虛拟私有撥号網VPDN(Virtual Private Dial-up Network)隧道協定的一種,它擴充了點到點協定PPP的應用,是一種在遠端辦公場景中為出差員工或企業分支遠端通路企業内網資源提供接入服務的VPN。

L2TP組網架構中包括LAC(L2TP Access Concentrator,L2TP通路集中器)和LNS(L2TP Network Server,L2TP網絡伺服器)

VPN(虛拟專用網)攻略大全

VPDN是指利用公共網絡(如ISDN和PSTN)的撥号功能及接入網來實作虛拟專用網,為企業、小型ISP、移動辦公人員提供接入服務。VPDN采用專用的網絡加密通信協定,在公共網絡上為企業建立安全的虛拟專網。企業駐外機構和出差人員可從遠端經由公共網絡,通過虛拟加密隧道實作和企業總部之間的網絡連接配接,而公共網絡上其它使用者則無法穿過虛拟隧道通路企業網内部的資源。VPDN隧道協定有多種,目前使用最廣泛的是L2TP。

LAC是網絡上具有PPP和L2TP協定處理能力的裝置。LAC負責和LNS建立L2TP隧道連接配接。在不同的組網環境中,LAC可以是不同的裝置,可以是一台網關裝置,也可以是一台終端裝置。LAC可以發起建立多條L2TP隧道使資料流之間互相隔離。

LNS是LAC的對端裝置,即LAC和LNS建立了L2TP隧道;LNS位于企業總部私網與公網邊界,通常是企業總部的網關裝置。

L2TP消息

L2TP協定包含兩種類型的消息,控制消息和資料消息,消息的傳輸在LAC和LNS之間進行。

▫控制消息用于L2TP隧道和會話連接配接的建立、維護和拆除。

▫資料消息用于封裝PPP資料幀并在隧道上傳輸。

VPN(虛拟專用網)攻略大全

控制消息

▫用于L2TP隧道和會話連接配接的建立、維護和拆除。在控制消息的傳輸過程中,使用消息丢失重傳和定時檢測隧道連通性等機制來保證控制消息傳輸的可靠性,支援對控制消息的流量控制和擁塞控制。

▫控制消息承載在L2TP控制通道上,控制通道實作了控制消息的可靠傳輸,将控制消息封裝在L2TP報頭内,再經過IP網絡傳輸。

資料消息

▫用于封裝PPP資料幀并在隧道上傳輸。資料消息是不可靠的傳輸,不重傳丢失的資料封包,不支援對資料消息的流量控制和擁塞控制。

▫資料消息攜帶PPP幀承載在不可靠的資料通道上,對PPP幀進行L2TP封裝,再經過IP網絡傳輸。

L2TP工作過程

L2TP主要可分為以下三種工作場景,其工作過程并不相同:

▫NAS-Initiated場景:撥号使用者通過NAS通路企業内網 ▫Client-Initiated場景:移動辦公使用者通路企業内網 ▫Call-LNS場景:通過LAC自主撥号實作企業内網互連

VPN(虛拟專用網)攻略大全

NAS-Initiated場景:由遠端撥号使用者發起,遠端系統通過PSTN/ISDN撥入LAC,由LAC通過Internet向LNS發起建立隧道連接配接請求。撥号使用者位址由LNS配置設定;對遠端撥号使用者的驗證與計費既可由LAC側的代理完成,也可在LNS完成。

▫使用者必須采用PPP的方式接入到Internet,也可以是PPPoE等協定。

▫營運商的接入裝置(主要是BAS裝置)需要開通相應的VPN服務。使用者需要到營運商處申請該業務。

▫L2TP隧道兩端分别駐留在LAC側和LNS側,且一個L2TP隧道可以承載多個會話。

Client-Initialized場景:直接由LAC客戶(指可在本地支援L2TP協定的使用者)發起。客戶需要知道LNS的IP位址。LAC客戶可直接向LNS發起隧道連接配接請求,無需再經過一個單獨的LAC裝置。在LNS裝置上收到了LAC客戶的請求之後,根據使用者名、密碼進行驗證,并且給LAC客戶配置設定私有IP位址。

▫使用者需要安裝L2TP的拔号軟體。部分作業系統自帶L2TP用戶端軟體。

▫使用者上網的方式和地點沒有限制,不需ISP介入。▫L2TP隧道兩端分别駐留在使用者側和LNS側,一個L2TP隧道承載一個L2TP會話。

▫該場景建立過程如下:

  1. 移動辦公使用者與LNS建立L2TP隧道。
  2. 移動辦公使用者與LNS建立L2TP會話:移動辦公使用者在第3步會與LNS間建立PPP連接配接,L2TP會話用來記錄和管理它們之間的PPP連接配接狀态。是以,在建立PPP連接配接以前,隧道雙方需要為PPP連接配接預先協商出一個L2TP會話。會話中攜帶了移動辦公使用者的LCP協商資訊和使用者認證資訊,LNS對收到的資訊認證通過後,通知移動辦公使用者會話建立成功。L2TP會話連接配接由會話ID進行辨別。
  3. 移動辦公使用者與LNS建立PPP連接配接。移動辦公使用者通過與LNS建立PPP連接配接擷取LNS配置設定的企業内網IP位址。
  4. 移動辦公使用者發送業務封包通路企業總部伺服器

Call-LNS場景:L2TP除了可以為出差員工提供遠端接入服務以外,還可以進行企業分支與總部的内網互聯,實作分支使用者與總部使用者的互訪。一般是由分支路由器充當LAC與LNS建立L2TP隧道,這樣就可實作分支與總部網絡之間的資料通過L2TP隧道互通。

L2TP Over IPSec

當企業對資料和網絡的安全性要求較高時,L2TP無法為封包傳輸提供足夠的保護。這時可以和IPSec功能結合使用,保護傳輸的資料,有效避免資料被截取或攻擊。

VPN(虛拟專用網)攻略大全

企業出差使用者和總部通信,使用L2TP功能建立VPN連接配接,總部部署為LNS對接入的使用者進行認證。當出差使用者需要向總部傳輸高機密資訊時,L2TP無法為封包傳輸提供足夠的保護,這時可以和IPSec功能結合使用,保護傳輸的資料。在出差使用者的PC終端上運作撥号軟體,将資料封包先進行L2TP封裝,再進行IPSec封裝,發往總部。在總部網關,部署IPSec政策,最終還原資料。這種方式IPSec功能會對所有源位址為LAC、目的位址為LNS的封包進行保護。

MPLS VPN概述

MPLS是一種利用标簽(Label)進行轉發的技術,最初為了提高IP封包轉發速率而被提出,現主要應用于VPN和流量工程、QoS等場景。

根據部署的不同,MPLS VPN可分為MPLS L2 VPN或者MPLS L3 VPN。

企業可以自建MPLS專網也可以通過租用營運商MPLS專網的方式獲得MPLS VPN接入服務。

VPN(虛拟專用網)攻略大全

MPLS VPN網絡一般由營運商搭建,VPN使用者購買VPN服務來實作使用者網絡之間(圖中的分公司和總公司)的路由傳遞、資料互通等。

基本的MPLS VPN網絡架構由CE(Customer Edge)、PE(Provider Edge)和P(Provider)三部分組成:

▫CE:使用者網絡邊緣裝置,有接口直接與營運商網絡相連。CE可以是路由器或交換機,也可以是一台主機。通常情況下,CE“感覺”不到VPN的存在,也不需要支援MPLS。

▫PE:營運商邊緣路由器,是營運商網絡的邊緣裝置,與CE直接相連。在MPLS網絡中,對VPN的所有處理都發生在PE上,對PE性能要求較高。

▫P:營運商網絡中的骨幹路由器,不與CE直接相連。P裝置隻需要具備基本MPLS轉發能力,不維護VPN相關資訊。

更多MPLS及MPLS VPN的相關内容,參考HCIP-Datacom-Advance相應課程。

小總結

VPN技術擁有安全、廉價、支援移動業務、靈活等一系列優勢,已經成為現網中部署最為廣泛的一類技術。

本文從VPN基本概念與分類出發,簡單介紹了如下幾類常見VPN技術:

▫IPSec VPN:是一系列為IP網絡提供安全性的協定和服務的集合,為IP網絡提供安全的傳輸。

▫GRE VPN:提供了将一種協定的封包封裝在另一種協定封包中的機制,解決異種網絡的傳輸問題。

▫L2TP VPN:是一種能夠提供移動使用者遠端接入服務的二層VPN技術。

▫MPLS VPN:一種通過标簽交換技術,實作站點與站點之間互聯的VPN技術。

來源:網絡技術平台

繼續閱讀