基于SSL的虛擬專用網研究
來源:用戶上傳
作者: 余曉莉 趙建新
[摘要]研究基于以太幀轉發的SSL VPN如何實現內網資源的遠程訪問,并且在遠程安全接入上從各個方面對SSL VPN系統進行安全性設計。
[關鍵詞]SSL虛擬專用網網絡安全
中圖分類號:TP3文獻標識碼:A文章編號:1671-7597(2009)1110089-01
虛擬專用網技術可以擴展企業的內部網絡,使在外工作的員工和合作伙伴可以通過標準、公用的因特網訪問企業的內部網絡。基于安全套接字層協議的VPN遠程訪問方案以其方便、安全、快捷、靈活的特性成為遠程用戶快速訪問企業內部網絡的首要選擇。
一、SSL VPN部署架構設計
當今世界瞬息萬變,全球化的商業環境使分布在世界各地的企業各分支機構員工、合作伙伴和客戶之間的聯系更加緊密。企業的各分支、合作伙伴、客戶與企業總部使用什么樣的接入模式共享內網資源,需隨著具體的網絡環境和相應的權限而定。根據網絡應用環境的不同,VPN客戶端的接入模式總體上可分為兩種模式:端到邊(End-to-Border)模式和邊對邊(Border-to-Border)模式。
(一)端到邊接入模式
端到邊的接入模式適合于任何地點的遠程用戶接入企業內網,共享企業內部資源和進行遠程辦公。在端到邊的接入模式中,由于遠程用戶接入的地點是不確定的,所以需要提供一種既方便又安全的遠程接入VPN。方便快捷地接入企業內網是此種接入模式的首要需求。由于此種模式的特點,不可能滿足在每個遠程接入點都加入接入設備,而且也不可能滿足每個遠程用戶都熟悉遠程接入技術,這就需要此種模式的接入程序不需任何其它設備和滿足零配置。在使用方便之外,由于接入用戶的多樣性,必須給遠程用戶提供可控區域的接入,使其只能訪問角色權限范圍內的內網服務資源。同時,為了防止非授權用戶利用VPN接入內網竊取商業秘密,必須提供高強度的身份認證和訪問控制策略。
(二)邊對邊接入模式
邊到邊的接入模式適合于企業內部各分支機構、合作伙伴的互聯。在企業總部的網關處架設VPN的服務器,在企業各分支的網關處架設VPN的客戶端。由于此種模式的接入地點相對比較確定,而且資源的共享都是在企業內部之間,其安全性比較好(假設企業內網是可信任的),這種接入模式的首要要求是遠程接入的性能,安全性主要是針對安全隧道的安全。由于地點的確定性,所以可以在各個網關處使用硬件手段來實現加密和傳輸。本文研究的基于以太幀轉發的虛擬專用網可以實現上述兩種模式的遠程接入。由于端到邊的接入模式同樣也可以在邊到邊的網絡環境下使用。而且端到邊的接入模式更適合普遍SSL VPN的要求,可以完全做到利用ActiveX控件嵌入到Web里,從Web服務器下載使用,無需遠程接入用戶做任何配置,完全實現無客戶端性(clientless)?;谏鲜隹紤],本文主要研究、設計和實現端到邊的遠程接入。
二、SSL VPN系統工作原理
傳統的SSL VPN支持的應用局限在基于Web的應用,文件共享和E-mail等和瀏覽器相關的一些網絡應用服務。對于一些基于點對點和反向連接的網絡服務都不能提供很好的支持。本文設計和實現了一種基于以太幀轉發的SSL VPN的構架。其基本原理是利用IP層的路由機制,將與內網通信的以太幀路由到客戶端上的虛擬網卡中,然后通過設備I/O讀寫接口將以太幀轉發到應用層,接著SSL VPN客戶端程序將以太幀寫入建立好的SSL安全通道中,服務端在收到以太幀后,將其寫入服務端虛擬網卡設備中,虛擬網卡將以太幀自下而上壓出TCP/IP協議棧,在IP層查詢路由表,根據以太幀的目的地址將其路由轉發到連接內網的網絡接口,最后以太幀到達真正的內網服務端。
以太幀從客戶端到內網服務器的工作流程如下:從內網服務器發往客戶端的以太幀也可以經VPN網關服務器通過SSL安全隧道傳送給客戶端。首先因VPN客戶端虛擬網卡的IP地址不在內網網段內,內網服務器會將以太幀發給默認路由――VPN網關,VPN網關在收到以太幀后,將幀自下而上壓出協議棧,到達IP層時,根據幀的目的IP地址比較路由表得知幀的下一跳出口為虛擬網卡,以太幀到達虛擬網卡后,VPN服務器通過虛擬網卡的設備接口將以太幀讀出,接著將其通過SSL安全隧道發送給VPN客戶端,同樣VPN客戶端將收到的幀送入虛擬網卡,最后虛擬網卡將幀自下而上送給客戶端服務程序。
整個SSL VPN的工作原理如上所述。因為客戶端與服務端轉發的是以太幀,所以可以支持點到點和基于反向連接的網絡服務。同樣因為是基于以太幀轉發的,所以在訪問控制中需要對每個以太幀進行訪問權限檢測,相對于基于連接轉發和基于Web應用的SSL VPN來說實現起來比較困難。
三、SSL VPN遠程接入的安全設計
SSL協議本身為我們提供了消息的保密性,消息的完整性等安全特性。為了更進一步提高SSL VPN遠程接入的安全性,本文還采用了基于PKI的身份認證機制,基于會話流的連接超時控制,基于角色資源的訪問控制策略和遠程接入點會話數據清除等安全策略來提高SSL VPN遠程接入的安全性。最普通的身份認證形式是用戶標識(ID)和密碼(Password)的組合,這種方式的認證是基于用戶知道什么的身份認證,系統的安全性依賴于用戶密碼的保密性。
在本文采用的基于PKI的身份認證當中,CA機構的角色由受信任的CA根證書擔當,所有客戶端和服務端的證書都有CA根證書簽名頒發,在SSL VPN服務器上存放受信任CA根證書的數字證書,而客戶端證書、服務端證書和證書吊銷列表的生成頒發機構由本文提供一整套解決方案。SSL VPN系統的管理員能分別向每個遠程接入用戶頒發識別用戶身份的個人數字證書,在需要撤銷客戶端證書時由系統管理員生成證書吊銷列表,并及時更新SSL VPN服務器的CRL(證書吊銷列表),拒絕被吊銷證書的遠程接入用戶登錄VPN服務器。遠程用戶登錄SSL VPN服務器的整個過程為:首先遠程接入用戶輸入用戶名/密碼進行最基本的身份認證,在連接服務器時,會用存放在客戶端的CA根證書驗證服務端證書的有效性,驗證通過后會彈出服務端數字證書信息對話框供用戶選擇是否信任,選擇信任后,服務器將對通過SSL安全通道傳送過來得用戶名/密碼進行認證,在認證成功后,根據用戶的登陸權限判斷是否需要客戶端證書認證,如果需要則在客戶端程序中彈出導入個人數字證書的對話框,在用戶選擇導入數字證書時需要用戶輸入個人證書的私鑰密碼,輸入結束后SSL VPN服務器將對客戶端證書的有效性、是否撤銷進行檢測判斷,一切認證通過后就可以進行SSL遠程通信了。
參考文獻:
[1]羅明宇、盧錫城,計算機網絡安全技術,計算機科學,2000,27(10):63-65.
[2]馬英杰、肖麗萍、何文才、李彥兵,SSL協議分析及其在Web服務應用中的改進,微處理機,2005(6):30-33.
[3]金侖、謝俊元,基元SSL協議的可信應用與實現,計算機應用研究,2006(1):103-105.
轉載注明來源:http://www.hailuomaifang.com/8/view-1067399.htm