李長春
(滁州職業技術學院,安徽滁州 239000)
隨著經濟的全球化,企業的規模不斷擴大,分支機構、商業伙伴、外出員工隨時隨地都要和企業進行數據的傳輸,這就需要某種技術機制來保證在網絡中傳輸數據的安全性.在傳統的網絡建設方案中,可以通過自己建設一個專用網絡或租用一條專線,實現處于不同區域位置的機構、員工通信.前者操作起來幾乎是不可行的,后者需要支付比較昂貴的專線租金.在這種的背景下,可以采用基于IP的VPN技術,在公用通信網上建立隧道的方式虛擬出專線來解決這個問題.
VPN(Virtual Private Network)又稱虛擬專用網,其實就是通過一個公用網絡(Internet)使用一系列安全技術建立一個臨時且安全的專用網絡,它是可以穿過混亂公用網絡的一條隧道,其具有一定安全性和穩定性.可以在不可信任的公共網絡上使分布在不同地方的專用網絡進行安全的通信,在遠程公司和客戶之間,供應商及合作伙伴同公司的內部之間,建立一條信任可靠的安全通道,使傳輸中的數據得到更好的安全保護[1].
在網絡的組建中VPN技術展現出了其低成本性、組網靈活性、可擴展性的優勢,相信未來VPN技術將會得到較多用戶的重視和廣泛應用.VPN技術與其他網絡技術相比有著無可擬比的優勢:
(1)用戶可以通過ISP提供的公用網絡建立VPN網絡,這樣可以節省一定的通信費用降低使用成本.另外,對于VPN網絡的相關設備維護全部由ISP完成.
(2)用戶可以在目前具有IPsec功能的防火墻設備基礎上建立VPN,在軟硬件不受影響前提下,最大限度的保護了前期設備投資.如要擴展其VPN的服務范圍,只需要和ISP協商簽訂協議,用戶無需進行其他任何操作.
(3)用戶雖然利用ISP的網絡設備和技術服務組建使用VPN網絡,但是用戶可以自己完全掌握和控制,對網絡的安全性、訪問權、網絡地址配置等都能夠有效方便的管理.
目前VPN安全技術主要采用隧道技術、加解密技術、密鑰管理技術、使用者與設備身份認證技術[2].VPN技術主要是利用隧道封裝技術以及用戶身份認證、數據信息加密等技術在通信終端實體的雙方建立鏈路,具有與專用網絡同樣的安全性和可管理性,以保證用戶的安全通信服務.其中實現VPN功能的核心技術是隧道技術.
(1)隧道技術.隧道技術是通過使用互聯網絡的基礎設施在網絡之間傳遞數據的一種方式.隧道協議分為二層隧道協議和三層隧道協議.二層隧道協議對數據封裝在數據鏈路層完成(如:PPTP、L2TP、L2F),主要用來對遠程用戶提供撥號接入的服務.三層隧道協議對數據封裝在網絡層完成(如:GRE、IPsec),主要用于VPN的用戶在Internet上構建一個對等的虛擬專網絡.
二層隧道協議僅僅保證在隧道終端實體進行認證和加密,而對在隧道傳輸過程中每個數據報文未能進行認證.其無法抵御插入、拒絕服務和地址欺騙等攻擊行為[3],因此不能完全保證通信過程的安全.IPSec是可以在隧道的外面進行加密封裝,有效地保證了隧道在傳輸過程中的安全性.IP-sec是把幾種安全技術融合在一起形成了比較完整的安全體系,更加有效地在IP層提供安全保障.
(2)加解密技術.在VPN隧道上傳輸的數據是經過加密處理的,在數據發送前發送者對數據加密,接收者在數據到達時對數據進行解密.加密技術可以增強信息系統及數據的完整性、私有性和保密性,有效防止數據被第三方截獲和破析[4].
(3)密鑰管理技術.由于在IPsec中所使用的密碼算法都是眾所周知的公開算法,實現信息的安全就不能完全依靠密碼算法,這要求通信終端實體密鑰生成時具有安全性和機密性.對于密鑰的產生、分發、存儲、使用、銷毀的管理過程,IPsec要求使用自動密鑰管理協議.IPsec定義的密鑰交換協議是IKE,IKE具有一套自身的安全機制,可以在非安全的網絡中確保密鑰安全的分發.
IKE是基于ISAKMP框架上的使用OAKLEY和ISAKMP的“混合型”協議[1].IKE協議通過Diffie-Hellman算法進行一系列信息的交換,為通信雙方計算出共享密鑰,密鑰不需要在網絡上傳送而泄露.由于IPSec是基于通信端實體或操作系統內核IP層的實現,因此IPSec的密鑰管理協議還需要進一步完善.
(4)用戶身份認證技術.在隧道連接時需要通過對用戶的身份進行認證,便于系統對資源訪問控制和用戶授權的實施.如遠程訪問需要對用戶身份進行認證,當撥號用戶要求建立會話時,就要鑒定用戶的身份,確定用戶是否合法以及能夠使用哪些資源.常見的有基于用戶名/口令認證、卡片式認證、基于PKI的認證等認證方式.
由于IPv4協議開始設計的問題,缺乏相應的安全性.IETF在開發IPv6時研究制定了一套用于保護IP數據包通信的IP安全協議(IPsec),是IPv6協議的一個組成部分,也是IPv4的可選的擴展協議.IPsec提供較強的互操作性能力,具有完善的基于密碼學的安全功能.在通信終端實體間的IP層通過加密與數據源驗證等方式,來保證數據傳輸的保密性、完整性、可靠性和防重放[5].
IPsec不是單一的協議而是由一系列協議組成.IPSec體系結構包括認證頭AH協議和封裝安全載荷ESP協議,安全關聯 SA,Internet密鑰交換協議及驗證算法和加密算法等[2].IPSec協議族的體系結構、組件及各組件間的相互關系如圖1所示.

圖1 IPsec安全體系結構
IPSec協議有傳輸模式和隧道模式兩種操作.傳輸模式主要用于端到端的通信保護,對數據的操作都由終端實體完成.隧道模式主要用于站點到站點間數據的保護,對數據的操作都由安全網關完成.傳送模式主要是對上層協議保護,隧道模式主要是對整個IP數據報保護[6].
由于虛擬的方式、虛擬的網絡層次不同,有著多種不同構建VPN的解決方案.基于IPsec的VPN解決方案是在IP層實現,能夠更好的適應通信介質的多樣性,具備極好的安全協議性能等優勢.IPsec在網絡層實現了安全保護,對于高層的應用是完全透明的,安全服務完全獨立于應用程序,無需修改操作系統中原有的軟件就能實現IPsec提供的安全服務.
VPN實體可以在網絡中不同位置具有IPsec功能的網絡設備(如防火墻、路由器、主機)上實現.IPsec基于主機的實施可以實現端到端的安全服務;基于IPsec功能的路由器構建VPN實現網關間安全服務;將這兩種解決方案有效地融合可以實現漫游接入(road warrior)的安全,為移動辦公員工訪問公司資源時提供安全服務[1].
在實際應用中可能需要對受保護網絡內部的某個子網進一步提供保護,可應用基于IPsec的嵌套式隧道的解決方案,提供多級的網絡安全保護.需要提供多級保護的一般是指單位一些關鍵部門(財務處),未經授權的員工是不能進入的.假設某公司員工外地出差,每天需要將當天的業務報表提交給公司財務處.財務處為公司的關鍵部門,出差員工提交的報表在到達公司VPN網關后,報表將會以明文的形式在公司內部網絡傳輸,就可能被公司內部網絡(如人事部、市場部)的人員竊取到,即將造成報表信息的泄漏或者內容惡意的篡改.采用基于IPsec協議的嵌套式隧道可以解決這個問題.利用IPsec協議,遠程員工首先建立一個安全隧道到公司VPN網關,在這個隧道內部再建一個安全隧道到達公司財務處VPN網關,如圖2所示.

圖2 嵌套式隧道
數據包處理過程:
公司VPN網關和財務處VPN網關是出差員工將數據包發給財務處的必經之路,數據包經過時兩個網關上的IPsec都進行了相關的處理,一層一層的對數據進行解封裝,數據最終到達目的地,如圖3所示.而從財務處返回給出差員工的數據將一層一層的封裝.首先財務處的原始數據包在本地策略庫中找到一個安全策略數據庫與之匹配.查找相應的IPsec SA,將數據包進行財務處VPN網關的封裝.再匹配另外一個安全策略數據庫,再查找相應的IPsec SA,將數據包進行公司VPN網關的封裝[1].此時IPsec數據包就可以在互聯網傳輸,在這樣兩條隧道的共同作用,對數據實現的多級的、靈活的安全保護.

圖3 數據解封裝
通過實驗室的模擬環境對VPN網關性能進行測試分析,實驗模擬搭建環境如圖4所示.在具有IPsec功能的RTA和RTB之間采用IKE方式建立 IPsec SA,對Network A和Network B間的交換數據進行安全保護.一臺PC機連接在交換機上(交換機上配置端口鏡像),安裝wireshark抓包程序對Network A和Network B間所截獲的數據進行分析.Network A中配置FTP服務器,服務器上放置一個內容為“IPsec VPN”的文本文件.
根據實驗測試環境要求,VPN網關間采用隧道方式并實施ESP協議,ESP協議中加密算法采用DES,認證算法采用SHA1.在IKE的提議中確定IKE交換過程的安全保護級別,設置共享密鑰.RTA和RTB分別充當Network A的VPN網關和Network B的VPN網關.在VPN網關上應用安全策略時,安全策略內容雙方必須完全一致,這樣雙方才能夠進行正常通信[7].

圖4 網關性能測試實驗環境
VPN網絡的出現主要是為了解決網絡的安全性問題,對VPN網關的安全性進行測試是必須的.實驗初期路由器只做路由的配置實現全網連通,不加載IPSec功能,路由器只是起到一個普通的網關作用.Network B中的客戶機從Network A中FTP服務器上下載文本文件,安裝wireshark軟件的PC機對從FTP上下載的數據進行截獲.被截獲的FTP數據內容是明文形式顯示,清晰的看到通信終端的IP地址和協議信息,實驗結果如圖5所示.通過實驗表明當前的網絡是一個沒有安全性的網絡.

圖5 ESP封裝前數據
實驗的第二步,在路由器上加載IPSec功能,同樣安裝wireshark軟件的PC機截獲數據包,此時文件內容顯示為ESP協議封裝數據.實驗中采用ESP協議,通信端雙方的IP地址被加密算法加密.在對截獲到的數據包進行分析后,只能看到兩個VPN安全網關的IP地址通信信息,如圖6所示.實驗結果表明在VPN網關間的網絡通信是能夠得到安全保護的.

圖6 ESP封裝后數據
我們在實驗中采用了Ping命令對網關進行數據處理性能測試.Ping命令用于測試兩節點間連通性的驗證,是基于ICMP的應用程序.Ping命令利用Echo Request(回顯請求)報文發給目的主機探測其可達性,源主機等待返回Echo Reply(回顯應答)來判斷目的主機是否可達[6].
實驗中我們在Network A PC機和Network B客戶機間發送多個大小不同報文,通過分別計算出不同數據包傳輸的平均時間,比較分析VPN網關和普通網關包處理的性能.
具體實驗數據如表1所示,通過實驗結果看出VPN網關對數據的處理速度明顯要慢些.由于采用隧道模式,在處理過程中對數據進行了加解密及驗證操作,增加了VPN安全網關的處理負載,處理數據的延遲將變大一點.在實際應用中可以采用專門的硬件來進行加密和解密,來提高安全網關系統對IPSec處理的能力[7].

表1 實驗數據
隨著互聯網不斷發展,基于互聯網的網絡應用越來越多,網絡的安全性問題也隨之而來.運用VPN技術可以在不安全的公用通信網絡基礎上建立安全的通道,保護數據信息通信的安全.VPN應用在近幾年也得到了飛速的發展,相信在未來的網絡應用中VPN技術有著廣闊的發展前景.
:
[1]李濤著.網絡安全概論[M].北京:電子工業出版社,2004.
[2]吳功宜.計算機網絡高級教程[M].北京:清華大學出版社,2007.
[3]卿斯漢,蔣建春.網絡攻防技術原理與實踐[M].北京:科學出版社,2004.
[4]蔡立軍.計算機網絡安全技術[M].北京:中國水利水電出版社,2002.
[5]王衛紅,李曉明.計算機網絡與互聯網[M].北京:機械工業出版社,2009.
[6]杭州華三通信技術有限公司.路由交換技術[M].北京:清華大學出版社,2011.
[7]楊文武.基于IPSec的VPN網關設計與實現[D].長沙:國防科學技術大學,2008.