《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > SSL VPN隧道技術(shù)研究與應(yīng)用
SSL VPN隧道技術(shù)研究與應(yīng)用
來(lái)源:微型機(jī)與應(yīng)用2012年第24期
董 輝1,,2,于潤(rùn)橋1,,沈 翀2
(1.南昌航空大學(xué) 測(cè)試與光電工程學(xué)院,,江西 南昌330063; 2.福建星網(wǎng)銳捷網(wǎng)絡(luò)有限公司,,福建
摘要: 闡述了SSL VPN隧道技術(shù)以及它在實(shí)際項(xiàng)目中的應(yīng)用,。介紹VPN技術(shù)的產(chǎn)生背景和采用的關(guān)鍵技術(shù),對(duì)新興的VPN解決方案——SSL VPN隧道協(xié)議原理進(jìn)行分析研究,;結(jié)合實(shí)際項(xiàng)目情況,,介紹了SSL VPN在教育城域網(wǎng)中的應(yīng)用實(shí)現(xiàn);對(duì)SSL VPN技術(shù)現(xiàn)有優(yōu)勢(shì)和適用范圍做出總結(jié),。
Abstract:
Key words :

摘  要: 闡述了SSL VPN隧道技術(shù)以及它在實(shí)際項(xiàng)目中的應(yīng)用,。介紹VPN技術(shù)的產(chǎn)生背景和采用的關(guān)鍵技術(shù),對(duì)新興的VPN解決方案——SSL VPN隧道協(xié)議原理進(jìn)行分析研究,;結(jié)合實(shí)際項(xiàng)目情況,,介紹了SSL VPN在教育城域網(wǎng)中的應(yīng)用實(shí)現(xiàn);對(duì)SSL VPN技術(shù)現(xiàn)有優(yōu)勢(shì)和適用范圍做出總結(jié),。
關(guān)鍵詞: 虛擬專用網(wǎng),;隧道技術(shù),;隧道協(xié)議;SSL

    隨著現(xiàn)代企事業(yè)單位業(yè)務(wù)的多樣化發(fā)展和單位本身需求的不斷增長(zhǎng),,單位總部與分部之間,、出差員工之間的聯(lián)系日趨緊密。怎樣利用公共互聯(lián)網(wǎng)建立一個(gè)安全的,、專用的網(wǎng)絡(luò)以實(shí)現(xiàn)單位,、員工之間的信息交流和信息共享已成為時(shí)代之需。專用線路(如幀中繼,、DDN,、ATM等)因其成本高、不靈活且資源不能合理利用而令很多企業(yè)望而卻步,,虛擬專用網(wǎng)VPN(Virtual Private Network)的出現(xiàn)可以從根本上滿足企事業(yè)用戶的低通信費(fèi)和高靈活性的雙重需求,,更重要的是它可以提供與專線相媲美的通信安全保障,是一種低成本,、安全,、靈活的遠(yuǎn)程網(wǎng)絡(luò)接入解決方案[1]。SSL VPN作為VPN新技術(shù)的一種,,因其簡(jiǎn)潔的Web登錄模式,、較低的維護(hù)管理費(fèi)用和良好的安全性逐漸被廣泛關(guān)注。
1 隧道技術(shù)
    隧道技術(shù)是實(shí)現(xiàn)VPN的關(guān)鍵技術(shù)之一,,也是VPN技術(shù)的核心,。VPN就是依靠隧道技術(shù)跨越基于IP協(xié)議的公用網(wǎng)絡(luò)建立起來(lái)的一條透明的虛擬通道,可達(dá)到公網(wǎng)虛擬專用的目的,,這個(gè)虛擬通道即稱為一個(gè)隧道,。
    隧道技術(shù)的核心是隧道協(xié)議[1]。為建立一個(gè)隧道,,隧道兩端的客戶機(jī)和服務(wù)器必須使用相同的隧道協(xié)議,。隧道協(xié)議用附加的帶有路由信息的報(bào)頭封裝數(shù)據(jù)幀,,它規(guī)定了隧道建立,、維護(hù)、刪除規(guī)則以及數(shù)據(jù)在隧道中的封裝及傳輸原理,。隧道可以在TCP/IP網(wǎng)絡(luò)模型的任何一層上建立,。按照封裝后的數(shù)據(jù)包在OSI參考模型傳輸層次的不同,隧道協(xié)議可分為第二層協(xié)議,、第三層協(xié)議以及上層(Upper Layer)隧道協(xié)議,。VPN技術(shù)各層隧道協(xié)議與OSI參考模型對(duì)應(yīng)關(guān)系如圖1所示[2]。

    第二層隧道協(xié)議也稱數(shù)據(jù)鏈路層隧道協(xié)議,,在網(wǎng)絡(luò)中的數(shù)據(jù)鏈路層運(yùn)行,。先把各種網(wǎng)絡(luò)協(xié)議封裝到PPP包中,,再把整個(gè)數(shù)據(jù)包裝入隧道協(xié)議中,這種經(jīng)過(guò)兩層封裝的數(shù)據(jù)包由第二層協(xié)議進(jìn)行傳輸,。第二層隧道協(xié)議有L2F,、PPTP、L2TP等,。
    第三層隧道協(xié)議也稱網(wǎng)絡(luò)層隧道協(xié)議,,在網(wǎng)絡(luò)層運(yùn)行。把各種網(wǎng)絡(luò)協(xié)議直接裝入隧道協(xié)議中,,形成的數(shù)據(jù)包依靠第三層協(xié)議進(jìn)行傳輸,。第三層隧道協(xié)議主要有GRE和IPSec等。
    上層(Upper Layer)隧道協(xié)議在傳輸層或其上層運(yùn)行,。把上層傳來(lái)的數(shù)據(jù)進(jìn)行加密等處理后,,由傳輸層把數(shù)據(jù)傳輸出去。在這一層工作的協(xié)議主要是安全套接協(xié)議SSL(Secure Socket Layer),。SSL是一種新興的VPN解決方案,,與其他VPN相比其主要優(yōu)點(diǎn)是用戶使用網(wǎng)頁(yè)瀏覽器登錄而不需要安裝任何專門的客戶端軟件[3]。
2 SSL 隧道協(xié)議[1,,4]
    SSL是Netscape公司設(shè)計(jì)的主要用于Web的安全傳輸協(xié)議,。SSL技術(shù)位于OSI參考模型的傳輸層和應(yīng)用層之間,最初主要是為TCP提供一個(gè)可靠的端到端的安全服務(wù),。同IPSec協(xié)議類似,,它不是一個(gè)單獨(dú)的協(xié)議,而是由多個(gè)協(xié)議組成的一個(gè)兩層的協(xié)議體系,,包括SSL握手協(xié)議(SSL Handshake Protoco1),、SSL修改密文規(guī)約協(xié)議(SSL Change Cipher SpecProtoco1)、SSL警告協(xié)議(SSL Alert Protoco1)和SSL記錄協(xié)議(SSL Record Protoco1),。如圖2所示,。圖示體系結(jié)構(gòu)分為兩層:握手層協(xié)議層和記錄層協(xié)議層。其中握手層協(xié)議層包含3個(gè)協(xié)議,,即SSL握手協(xié)議,、SSL密鑰更改協(xié)議和SSL告警協(xié)議。

2.1 握手層協(xié)議
    握手層協(xié)議用來(lái)在客戶端和服務(wù)器端傳輸應(yīng)用數(shù)據(jù)之前建立安全通信機(jī)制,,并保持通信雙方進(jìn)行安全通信所需的安全參數(shù)及狀態(tài)信息,。它使得服務(wù)器和客戶機(jī)能夠進(jìn)行雙向的身份認(rèn)證,并協(xié)商加密算法,、MAC(消息認(rèn)證代碼)算法以及SSL記錄中所用的加密密鑰,。
    首次通信時(shí),雙方通過(guò)握手層協(xié)議協(xié)商密鑰加密算法、數(shù)據(jù)加密算法和報(bào)文摘要算法,;然后互相驗(yàn)證對(duì)方身份,,最后使用協(xié)商好的密鑰交換算法產(chǎn)生一個(gè)只有雙方知道的秘密信息,客戶端和服務(wù)器端各自根據(jù)這個(gè)秘密信息確定數(shù)據(jù)加密算法的參數(shù)(一般是密鑰),。
    握手層協(xié)議過(guò)程分為如下4個(gè)階段:
    (1)建立安全能力,。主要包括協(xié)商壓縮算法、報(bào)文摘要算法,、加密算法以及SSL版本,、會(huì)話標(biāo)識(shí)符等安全參數(shù)與狀態(tài)信息。
    (2)服務(wù)器認(rèn)證和密鑰交換,。此時(shí)服務(wù)器向客戶發(fā)送其數(shù)字證書(shū),,利用該證書(shū)對(duì)服務(wù)器進(jìn)行認(rèn)證。
    (3)客戶認(rèn)證和密鑰交換,。此時(shí)客戶向服務(wù)器發(fā)送其數(shù)字證書(shū),,利用該證書(shū)對(duì)客戶進(jìn)行鑒別。
    (4)握手結(jié)束階段,。握手建立過(guò)程如圖3所示,。

 

 

    首先客戶端啟動(dòng)握手請(qǐng)求,發(fā)送Client Hello消息給服務(wù)器端,,消息中包括客戶端支持的各種算法,。若對(duì)端服務(wù)器不能支持,則本次會(huì)話失敗,,握手協(xié)議不能建立,。
    服務(wù)器收到客戶端發(fā)來(lái)的Hello消息后發(fā)送Server Hello消息進(jìn)行回復(fù),并向客戶端發(fā)送Server Certificate證書(shū)消息,,證書(shū)類型一般為x.509v3(若此階段服務(wù)器不使用證書(shū),,或證書(shū)中提供簽名而不提供密鑰時(shí),服務(wù)器發(fā)送密鑰交換信息Server Key Exchange),。Certificate Request消息用于服務(wù)器向客戶端要求一個(gè)客戶證書(shū),。Server Hello Done消息表示服務(wù)器端的握手請(qǐng)求報(bào)文已經(jīng)發(fā)送結(jié)束,正等待客戶端的回應(yīng)信息,。
    客戶端收到Server Hello Done消息時(shí)檢查服務(wù)器提供的證書(shū)以及其他參數(shù)是否有效,。Client Certificate是客戶端對(duì)服務(wù)器Certificate Request消息的響應(yīng),只有在服務(wù)器端要求客戶證書(shū)時(shí)使用,。一般該消息是客戶端收到Server Hello Done消息后所發(fā)送的第一條消息,。若客戶端沒(méi)有合適的證書(shū),,則向服務(wù)器端發(fā)送No Certificate的告警消息(無(wú)證書(shū)可能導(dǎo)致握手失敗,。當(dāng)客戶不使用證書(shū),或其證書(shū)中僅提供簽名而不提供密鑰時(shí),,使用Client Key Exchange消息來(lái)交換密鑰),。Certificate Verify消息用于向服務(wù)器提供對(duì)客戶證書(shū)的驗(yàn)證,。
    當(dāng)客戶端發(fā)出修改密鑰協(xié)議(Change Cipher Spec)消息之后,發(fā)出Finished消息,,至此完整的握手消息交換已經(jīng)全部完成,。
    握手協(xié)議完成之后,客戶端與服務(wù)器端傳輸應(yīng)用加密數(shù)據(jù),。應(yīng)用加密數(shù)據(jù)一般為密鑰協(xié)商時(shí)確定的對(duì)稱加解密密鑰,,如DES、3DE等,。SSL中的握手協(xié)議將公鑰加密技術(shù)與對(duì)稱密鑰加密技術(shù)的應(yīng)用有效,、巧妙地結(jié)合在一起,有機(jī)地組成了互聯(lián)網(wǎng)(或其他網(wǎng)絡(luò))上信息安全傳輸?shù)耐ǖ馈?br /> 2.2 記錄層協(xié)議
    記錄層協(xié)議定義了要傳輸數(shù)據(jù)的格式,,它位于可靠的傳輸協(xié)議TCP之上,,用于各種更高層協(xié)議的封裝。主要提供數(shù)據(jù)分塊,、壓縮,、添加MAC、加密以及完整性服務(wù),,把應(yīng)用數(shù)據(jù)封裝成多條記錄進(jìn)行傳輸,。協(xié)議數(shù)據(jù)采用SSL握手協(xié)議中協(xié)商好的加密算法及MAC算法進(jìn)行保護(hù)。記錄層協(xié)議傳送的數(shù)據(jù)包括一個(gè)序列號(hào),,這樣就可以檢測(cè)消息的丟失,、改動(dòng)或重放。協(xié)商好壓縮算法后,,SSL記錄協(xié)議還可以執(zhí)行壓縮功能,。如圖4所示。

    發(fā)送數(shù)據(jù)時(shí),,將數(shù)據(jù)分成可操作的塊,,對(duì)各分塊單元進(jìn)行壓縮,接著再添加上由HASH算法得出的MAC值并加密,,最后加上記錄協(xié)議頭部進(jìn)行傳輸,;接收方接收數(shù)據(jù)后,首先對(duì)其進(jìn)行解密,,接著校驗(yàn)MAC,,然后對(duì)各單元解壓并重新組合,把結(jié)果提供給相應(yīng)的應(yīng)用程序協(xié)議,。
3 SSL VPN技術(shù)特點(diǎn)[5-6]
    SSL運(yùn)行于網(wǎng)絡(luò)體系結(jié)構(gòu)中的傳輸層和應(yīng)用層之間,,它獨(dú)立于應(yīng)用,因此任何一個(gè)應(yīng)用程序都可以利用它的安全性而不必考慮執(zhí)行細(xì)節(jié)。另外,,SSL本身可以被幾乎所有的Web瀏覽器支持,,這意味著客戶端不需要為了支持SSL連接而安裝額外的軟件。這兩個(gè)特征就是SSL能應(yīng)用于VPN的關(guān)鍵原因,。SSL VPN技術(shù)的發(fā)展是對(duì)現(xiàn)有SSL應(yīng)用的一個(gè)補(bǔ)充,,它增加了企業(yè)執(zhí)行訪問(wèn)控制和安全性的級(jí)別和能力。到目前為止,,SSL VPN是解決遠(yuǎn)程用戶訪問(wèn)單位內(nèi)部數(shù)據(jù)最簡(jiǎn)單且安全的解決方案,。與復(fù)雜的IPsec VPN 相比,SSL VPN通過(guò)簡(jiǎn)單易用的方法實(shí)現(xiàn)了信息的遠(yuǎn)程連通,。SSL VPN主要有以下技術(shù)特點(diǎn):
    (1)部署與應(yīng)用:SSL VPN設(shè)備部署靈活方便,,以橋接或側(cè)掛方式接入對(duì)原網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)不會(huì)造成影響。在終端,,用戶可以在任何安裝了Web瀏覽器的PC上進(jìn)行SSL VPN撥號(hào)登錄訪問(wèn)內(nèi)部網(wǎng)絡(luò)資源,。這也是無(wú)需安裝客戶端軟件的SSL VPN的主要優(yōu)勢(shì)。
    (2)訪問(wèn)控制:SSL VPN能對(duì)加密隧道進(jìn)行細(xì)化,,使終端用戶能夠同時(shí)接入Internet和訪問(wèn)內(nèi)部企業(yè)網(wǎng)資源,。另外, SSL VPN還可以對(duì)接入控制功能進(jìn)行分級(jí),提供不同等級(jí)的用戶權(quán)限, 依據(jù)安全策略授權(quán)不同權(quán)限的用戶訪問(wèn)不同的內(nèi)部網(wǎng)絡(luò)資源,。
    (3)安全性:SSL安全通道建立于客戶與所訪問(wèn)的資源之間,,客戶對(duì)資源的每一次操作都需要經(jīng)過(guò)身份驗(yàn)證和數(shù)據(jù)加密,保障了遠(yuǎn)程連接過(guò)程中傳輸數(shù)據(jù)的安全,。
    (4)遠(yuǎn)程連接:SSL VPN工作在傳輸層之上,,能夠遍歷所有的NAT/PAT設(shè)備以及防火墻設(shè)備,這使得用戶可以從任何遠(yuǎn)程網(wǎng)絡(luò)訪問(wèn)到內(nèi)網(wǎng)資源,,極大地方便了出差用戶的遠(yuǎn)程辦公,。
4 SSL VPN應(yīng)用實(shí)例
    為滿足L市教育城域網(wǎng)各校區(qū)教職工遠(yuǎn)程辦公的需要,該網(wǎng)絡(luò)建設(shè)之初便設(shè)計(jì)SSL VPN遠(yuǎn)程訪問(wèn)解決方案,。出差教職工利用當(dāng)?shù)豂SP提供的VPN服務(wù), 就可以與學(xué)校的VPN網(wǎng)關(guān)建立私有的隧道連接, 使遠(yuǎn)程用戶隨時(shí)隨地地以其所需的方式訪問(wèn)學(xué)校內(nèi)部網(wǎng)絡(luò)資源,,實(shí)現(xiàn)遠(yuǎn)程辦公或者家庭辦公。
4.1 L市教育城域網(wǎng)特點(diǎn)
    L市教育城域網(wǎng)共有3個(gè)大校區(qū),,分別為東區(qū)高校區(qū),、西區(qū)中學(xué)和北區(qū)中學(xué),每個(gè)區(qū)下屬15~40個(gè)中學(xué),。為實(shí)現(xiàn)各校區(qū)之間的高速互聯(lián),,在核心配置了兩臺(tái)S12000系列核心路由交換機(jī),每個(gè)大校區(qū)各放置了一臺(tái)S8610交換機(jī),。全網(wǎng)采用網(wǎng)狀組網(wǎng)類型,,物理接口采用萬(wàn)兆或千兆光口高速互聯(lián),。L市教育城域網(wǎng)設(shè)計(jì)有兩個(gè)出口,分別為中國(guó)聯(lián)通出口和CERNET教育網(wǎng)出口,。SSL VPN網(wǎng)關(guān)設(shè)備采用側(cè)掛的方式與核心交換機(jī)相連接,如圖5所示,。


4.2 SSL VPN接入平臺(tái)
    L市教育城域網(wǎng)建設(shè)的SSL VPN主要應(yīng)用是內(nèi)部網(wǎng)頁(yè)瀏覽,、電子郵件以及文件傳輸?shù)葮I(yè)務(wù)。通過(guò)一個(gè)擁有與專用網(wǎng)絡(luò)相同策略的共享基礎(chǔ)設(shè)施,,可以對(duì)校園內(nèi)網(wǎng)資源隨時(shí)隨地進(jìn)行遠(yuǎn)程訪問(wèn),。能隨時(shí)使用包括如模擬撥號(hào)Modem、ISDN,、數(shù)字用戶線路(xDSL)無(wú)線上網(wǎng)等撥號(hào)技術(shù),,安全方便地連接遠(yuǎn)程工作者。其接入平臺(tái)拓?fù)淙鐖D6所示,。

    L市教育城域網(wǎng)的SSL VPN平臺(tái)由一臺(tái)高性能防火墻,、VPN網(wǎng)關(guān)RG-FW1600V、線路負(fù)載均衡設(shè)備RG-NPE組成,。通過(guò)網(wǎng)絡(luò)出口的負(fù)載均衡設(shè)備與電信運(yùn)營(yíng)商提供的互聯(lián)網(wǎng)線路相連,,出口租用聯(lián)通200 M、教育網(wǎng)100 M的線路以保障帶寬需求及鏈路熱備,。通過(guò)運(yùn)營(yíng)商與VPN接入平臺(tái)的接口線路構(gòu)建VPN隧道接入辦公網(wǎng),。
4.3 SSL VPN登錄
    SSL VPN技術(shù)幫助用戶使用標(biāo)準(zhǔn)的Web 瀏覽器就可以通過(guò)公共網(wǎng)絡(luò)平臺(tái)接入所要訪問(wèn)的遠(yuǎn)程資源。在用戶終端上,,不需要安裝客戶端軟件及進(jìn)行復(fù)雜的配置,,大大方便了用戶,僅僅通過(guò)一臺(tái)接入了Internet的計(jì)算機(jī)就能訪問(wèn)遠(yuǎn)程資源,。
    用戶使用Web界面進(jìn)行SSL VPN撥號(hào)登錄,,與SSL VPN 網(wǎng)關(guān)協(xié)商完畢,建立VPN 隧道后,,用戶并沒(méi)有獲得校內(nèi)資源外網(wǎng)的地址,,用戶所獲得的是VPN網(wǎng)關(guān)通過(guò)DHCP方式所分配的虛擬IP地址。每個(gè)用戶所獲得的虛擬IP是不同的,,VPN網(wǎng)關(guān)用虛擬IP來(lái)區(qū)分不同用戶的VPN隧道,。
    當(dāng)多個(gè)用戶同時(shí)登錄時(shí),VPN網(wǎng)關(guān)的支持情況如圖7所示,。

    用戶在獲得虛擬地址后訪問(wèn)校園內(nèi)部資源時(shí),,經(jīng)過(guò)VPN網(wǎng)關(guān)時(shí)要進(jìn)行地址轉(zhuǎn)換,轉(zhuǎn)換為VPN網(wǎng)關(guān)的內(nèi)口地址,,由于VPN網(wǎng)關(guān)的內(nèi)口地址只有一個(gè),,多用戶登錄轉(zhuǎn)換完畢后,,不同的虛擬IP轉(zhuǎn)換成內(nèi)網(wǎng)地址并對(duì)應(yīng)不同的端口號(hào)。也就是說(shuō),,在訪問(wèn)校園網(wǎng)內(nèi)部資源時(shí)用VPN網(wǎng)關(guān)的內(nèi)口地址和端口號(hào)來(lái)對(duì)接入用戶進(jìn)行區(qū)分,。
    至此,SSL VPN連接成功,。用戶可以像在單位一樣使用本地的IP地址訪問(wèn)內(nèi)網(wǎng)資源,,方便快捷地處理日常辦公事務(wù)。
    SSL VPN技術(shù)以其簡(jiǎn)潔,、低成本和良好的網(wǎng)絡(luò)安全管理措施將逐漸成為首選的遠(yuǎn)程訪問(wèn)解決方案,,同時(shí)SSL協(xié)議所采用的加密算法和認(rèn)證算法也使它具有較高的安全性。但是,,由于SSL VPN只對(duì)通信雙方單個(gè)應(yīng)用通道進(jìn)行加密,,不是對(duì)通信雙方主機(jī)之間的整個(gè)通道加密,所以對(duì)安全性要求較高的行業(yè)遠(yuǎn)程系統(tǒng)建設(shè)建議采用IPSec VPN技術(shù)或IPSec VPN和SSL VPN混合接入的方式進(jìn)行安全防護(hù),。
參考文獻(xiàn)
[1] 王達(dá).虛擬專用網(wǎng)(VPN)精解[M].北京:清華大學(xué)出版社,,2004.
[2] CARMOUCHE J H.IPsec virtual private network fundamentals[M].Cisco Press,2006.
[3] DEAL R.The complete cisco VPN configuration guide[M]. Cisco Press,,2005.
[4] 張學(xué)杰,,李大興.SSL技術(shù)在構(gòu)建VPN中的應(yīng)用[J].計(jì)算機(jī)應(yīng)用,2006,,26(8):1827-1830.
[5] 馬淑文.SSL VPN技術(shù)在校園網(wǎng)中的應(yīng)用與研究[J].計(jì)算機(jī)工程與設(shè)計(jì),,2008(11):5137-5143.
[6] 何亞輝.基于SSL協(xié)議的VPN技術(shù)研究及在校園網(wǎng)中的應(yīng)用[J].重慶理工大學(xué)學(xué)報(bào)(自然科學(xué)版),2011,,25(2):86-90.

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。