VPN即虛擬專用網,用于在公用網絡上構建私人專用虛擬網絡,并在此虛擬網絡中傳輸私網流量。VPN把現有的物理網絡分解成邏輯上隔離的網絡,在不改變網絡現狀的情況下實現安全、可靠的連接。
VPN具有以下兩個基本特征:
- 專用網絡:對于VPN用戶,使用VPN與使用傳統專網沒有區別。VPN與底層承載網絡之間保持資源獨立,即VPN資源不被網絡中非該VPN的用戶所使用,且VPN能夠提供足夠的安全保證,確保VPN內部信息不受外部侵擾。
- 虛擬 :用戶不再需要擁有實際的專用長途數據線路,而是利用Inte.NET的長途數據線路建立自己的私有網絡。VPN用戶內部的通信是通過公共網絡進行的,而這個公共網絡同時也可以被其他非VPN用戶使用,VPN用戶獲得的只是一個邏輯意義上的專網。
- 隧道技術:隧道兩端封裝、解封裝,用以建立數據通道
- 身份認證:保證接入VPN的操作人員的合法性、有效性
- 數據認證:數據在網絡傳輸過程中不被非法篡改
- 加解密技術:保證數據在網絡中傳輸時不被非法獲取
- 密鑰管理技術:在不安全的網絡中安全地傳遞密鑰
在VPN(Virtual Private Network)出現之前,跨越Internet的數據傳輸只能依靠現有物理網絡,具有很大的不安全因素。
如下圖所示,某企業的總部和分支機構位于不同區域(比如位于不同的國家或城市),當分支機構員工需訪問總部服務器的時候,數據傳輸要經過Internet。由于Internet中存在多種不安全因素,則當分支機構的員工向總部服務器發送訪問請求時,報文容易被網絡中的黑客竊取或篡改。最終造成數據泄密、重要數據被破壞等后果。
圖1 VPN出現前的報文傳輸
為了防止信息泄露,可以在總部和分支機構之間搭建一條物理專網連接,但其費用會非常昂貴,此時可以考慮采用VPN的方案進行解決。
VPN封裝原理
VPN的基本原理是利用隧道(Tunnel)技術,對傳輸報文進行封裝,利用VPN骨干網建立專用數據傳輸通道,實現報文的安全傳輸。
隧道技術使用一種協議封裝另外一種協議報文(通常是IP報文),而封裝后的報文也可以再次被其他封裝協議所封裝。
在上圖中展示的網絡中,如果存在VPN隧道,則數據傳輸如下圖所示。當分支機構員工訪問總部服務器時,報文封裝過程如下:
圖2 經過VPN封裝后的報文傳輸
- 報文發送到網關1時,網關1識別出該用戶為VPN用戶后,發起與總部網關即網關2的隧道連接,從而網關1和網關2之間建立VPN隧道。
- 網關1將數據封裝在VPN隧道中,發送給網關2。
- 網關2收到報文后進行解封裝,并將原始數據發送給最終接收者,即服務器。
- 反向的處理也一樣。VPN網關在封裝時可以對報文進行加密處理,使Internet上的非法用戶無法讀取報文內容,因而通信是安全可靠的。
VPN和傳統的數據專網相比具有如下優勢:
- 安全:在遠端用戶、駐外機構、合作伙伴、供應商與公司總部之間建立可靠的連接,保證數據傳輸的安全性。
- 廉價:利用公共網絡進行信息通訊,企業可以用更低的成本連接遠程辦事機構、出差人員和業務伙伴。
- 支持移動業務:支持駐外VPN用戶在任何時間、任何地點的移動接入,能夠滿足不斷增長的移動業務需求。
- 可擴展性:由于VPN為邏輯上的網絡,物理網絡中增加或修改節點,不影響VPN的部署。
VPN適用于以下基本場景,以及從以下場景中衍生的復雜場景。通過對比各種VPN的特點,可選擇適合的VPN類型。
site-to-site VPN
site-to-site VPN即兩個局域網之間通過VPN隧道建立連接。
如下圖所示,企業的分支和總部分別通過網關1和網關2連接到Internet。出于業務需要,企業分支和總部間經常相互發送內部機密數據。為了保護這些數據在Interner中安全傳輸,在網關1和網關2之間建立VPN隧道。
圖3 site-to-site VPN組網圖
這種場景的特點為:兩端網絡均通過固定的網關連接到Internet,組網相對固定。且訪問是雙向的,即分支和總部都有可能向對端發起訪問。適用于比如連鎖超市、政府機關、銀行等的業務通信。
此場景可以使用以下幾種VPN實現:IPSec、L2TP、L2TP over IPSec、GRE over IPSec、IPSec over GRE。
- 兩端相互訪問較頻繁,傳輸的數據為機密數據,且任何用戶都能訪問對端內網,無需認證時,可采用IPSec方式。
- 只有一端訪問另一端,且訪問的用戶必須通過用戶認證時,可采用L2TP方式。
- 如果只有一端訪問另一端,傳輸數據為機密數據,且訪問的用戶必須通過用戶認證,可采用L2TP over IPSec方式,安全性更高。
- GRE over IPSec隧道和IPSec over GRE隧道都可以用來安全的傳輸數據,兩者的區別在于對數據的封裝順序不同。GRE over IPSec在報文封裝時,是先GRE封裝然后再IPSec封裝;IPSec over GRE在報文封裝時,是先IPSec封裝再GRE封裝。
由于IPSec無法封裝組播報文,因此IPSec over GRE隧道也無法傳輸組播數據。如果隧道兩端要傳輸組播數據時,就要采用GRE over IPSec方式。
client-to-site VPN
client-to-site VPN即客戶端與企業內網之間通過VPN隧道建立連接。
如下圖所示,外出差員工(客戶端)跨越Internet訪問企業總部內網,完成向總部傳送數據、訪問內部服務器等需求。為確保數據安全傳輸,可在客戶端和企業網關之間建立VPN隧道。
圖4 client-to-site VPN組網圖
這種場景的特點為:客戶端的地址不固定。且訪問是單向的,即只有客戶端向內網服務器發起訪問。適用于企業出差員工或臨時辦事處員工通過手機、電腦等接入總部遠程辦公。
此場景可以使用以下幾種VPN實現:SSL、IPSec(IKEv2)、L2TP、L2TP over IPSec。
- 如果對客戶端沒有要求,但是待訪問的服務器要針對不同類型用戶開放不同的服務、制定不同的策略等,可采取SSL方式。
- 出差員工或臨時辦事處員工,如果需要頻繁訪問某幾個固定的總部服務器,且服務器功能對全部用戶都開放的情況下,可采取L2TP over IPSec方式。
BGP/MPLS IP VPN
BGP/MPLS IP VPN主要用于解決跨域企業互連等問題。當前企業越來越區域化和國際化,同一企業的不同區域員工之間需要通過服務提供商網絡來進行互訪。服務提供商網絡往往比較龐大和復雜,為嚴格控制用戶的訪問,確保數據安全傳輸,需在骨干網上配置BGP/MPLS IP VPN功能,實現不同區域用戶之間的訪問需求。
BGP/MPLS IP VPN為全網狀VPN,即每個PE和其他PE之間均建立BGP/MPLS IP VPN連接。服務提供商骨干網的所有PE設備都必須支持BGP/MPLS IP VPN功能。
圖5 BGP/MPLS IP VPN組網圖