黃 輝, 張純?nèi)?/p>
(1. 溫州大學(xué), 浙江 溫州 325035; 2. 成都航空職業(yè)技術(shù)學(xué)院, 四川 成都 610100)
?
基于ASA防火墻實(shí)現(xiàn)的SSL-VPN實(shí)驗(yàn)仿真
黃 輝1, 張純?nèi)?
(1. 溫州大學(xué), 浙江 溫州 325035; 2. 成都航空職業(yè)技術(shù)學(xué)院, 四川 成都 610100)
SSL-VPN是當(dāng)前使用非常廣泛的VPN技術(shù),也是應(yīng)用型網(wǎng)絡(luò)工程人才必須掌握的技術(shù)。SSL-VPN通?;诜阑饓?shí)現(xiàn)。然而許多高校由于受到?jīng)]有硬件防火墻等條件限制,不能開設(shè)該實(shí)驗(yàn)內(nèi)容。本文根據(jù)工程中SSL-VPN的典型應(yīng)用設(shè)計(jì)了SSL-VPN實(shí)驗(yàn)方案,并基于GNS3與VMware版ASA模擬器實(shí)現(xiàn)了無客戶端SSL-VPN實(shí)驗(yàn)仿真,可以有效的培養(yǎng)學(xué)生SSL-VPN部署實(shí)施專業(yè)技能。
SSL-VPN; 無客戶端SSL-VPN; VMware版ASA模擬器
SSL虛擬專用網(wǎng)(Security Socket Layer Virtual Private Network,SSL-VPN)是一種用戶通過WEB瀏覽器或?qū)S每蛻舳藢?shí)現(xiàn)安全訪問企業(yè)內(nèi)部資源的遠(yuǎn)程訪問技術(shù)[1]。SSL協(xié)議是位于TCP之上的協(xié)議,具有數(shù)字證書身份驗(yàn)證,數(shù)據(jù)加密等安全手段[2-3]。相對(duì)于其它VPN技術(shù)而言,SSL-VPN由于以下特點(diǎn)更適合于遠(yuǎn)程移動(dòng)用戶安全連接到企業(yè)內(nèi)網(wǎng)中:
(1) 用戶使用簡單。SSL-VPN支持無客戶端方式,用戶不需要專用的客戶端軟件,只需要通過瀏覽器就可以訪問內(nèi)網(wǎng)資源;
(2) 提供更細(xì)的訪問控制。用戶可以同時(shí)接入Internet和訪問內(nèi)網(wǎng)資源,并且可以根據(jù)用戶的不同身份授予不同的權(quán)限,用戶只能訪問授權(quán)的內(nèi)部資源;
(3) SSL協(xié)議建于傳輸層協(xié)議TCP之上可以穿越NAT和防火墻設(shè)備[4]。
本文結(jié)合工程中SSL-VPN的典型應(yīng)用方案設(shè)計(jì)了遠(yuǎn)程移動(dòng)用戶使用SSL-VPN訪問企業(yè)內(nèi)網(wǎng)資源的實(shí)驗(yàn)方案,并基于GNS3與VMware版ASA模擬器實(shí)現(xiàn)無客戶端SSL-VPN實(shí)驗(yàn)仿真,驗(yàn)證了方案的可行性。
路由器、防火墻平臺(tái)都可以支持SSL-VPN,但通常采用防火墻做SSL-VPN網(wǎng)關(guān),其部署部署實(shí)施方案主要有以下幾種。
1.1 SSL-VPN部署在網(wǎng)絡(luò)出口防火墻
當(dāng)前絕大部分防火墻都集成有SSL-VPN功能,因此可以把SSL-VPN直接部署在網(wǎng)絡(luò)出口防火墻上[5],防火墻只需要開放外網(wǎng)到防火墻外網(wǎng)口的HTTPS服務(wù)端口(即443口)。其網(wǎng)絡(luò)拓?fù)淙鐖D1所示。
該部署方案不需要網(wǎng)絡(luò)增加額外的VPN設(shè)備,網(wǎng)絡(luò)管理簡單,是目前使用非常廣泛 的一種方案。然而由于防火墻自身的HTTPS服務(wù)端口直接被外網(wǎng)主機(jī)訪問,因此增大了防火墻被攻擊的概率。
圖1 SSL-VPN部署在網(wǎng)絡(luò)出口防火墻
1.2 SSL-VPN部署在內(nèi)部網(wǎng)絡(luò)中
該部署方案需要在內(nèi)部網(wǎng)絡(luò)中增加一臺(tái)SSL-VPN設(shè)備,SSL-VPN設(shè)備位于網(wǎng)絡(luò)出口防火墻之后。其網(wǎng)絡(luò)拓?fù)淙鐖D2所示。
該方案在實(shí)施時(shí)需要在網(wǎng)絡(luò)出口防火墻上需要開放HTTPS服務(wù)端口。由于出口防火墻不能識(shí)別SSL-VPN安全隧道里的加密數(shù)據(jù)流是否是惡意流量,為了保證安全,SSL-VPN設(shè)備通常還需承擔(dān)一部分防火墻的功能。該方案最大的缺點(diǎn)是如果SSL VPN網(wǎng)關(guān)被攻破后,內(nèi)網(wǎng)用戶將受到極大的安全威脅。
圖2 SSL-VPN部署在內(nèi)部網(wǎng)絡(luò)中
1.3 SSL-VPN部署在DMZ區(qū)域中
該部署方案需要在非軍事化區(qū)域(Demilitarized Zone,DMZ)中增加一臺(tái)SSL-VPN設(shè)備[6]。其網(wǎng)絡(luò)拓?fù)淙鐖D3所示。
該方案在實(shí)施時(shí)也需要在網(wǎng)絡(luò)出口防火墻上開放HTTPS服務(wù)端口。由于SSL-VPN網(wǎng)關(guān)放置在DMZ區(qū)域,因此即使SSL-VPN網(wǎng)關(guān)被攻破,也可以避免整個(gè)內(nèi)部網(wǎng)絡(luò)癱瘓[7]。
圖3 SSL-VPN部署在DMZ區(qū)域中
為了模擬實(shí)際工程SSL-VPN的部署,本文設(shè)計(jì)了如圖4所示的實(shí)驗(yàn)環(huán)境。網(wǎng)絡(luò)部署要求為:
(1) 企業(yè)網(wǎng)絡(luò)只申請(qǐng)到一個(gè)公有地址,該地址分配給防火墻的外網(wǎng)口,內(nèi)網(wǎng)所有主機(jī)使用私有地址,并采用PAT實(shí)現(xiàn)內(nèi)部網(wǎng)絡(luò)與Internet之間的訪問。
(2) 內(nèi)網(wǎng)可以訪問Internet與DMZ區(qū)域服務(wù),企業(yè)外網(wǎng)訪問DMZ區(qū)域公共服務(wù)器提供的相應(yīng)服務(wù),其余的訪問流量均不允許。
(3) 在防火墻“ASA”上部署SSL-VPN,使得企業(yè)移動(dòng)用戶可以通過Internet訪問內(nèi)部服務(wù)器。使用SSL-VPN,用戶“user01”可以訪問內(nèi)部網(wǎng)站“Web1”,用戶“admin01”可以訪問內(nèi)部網(wǎng)站 “Web1”、“Web2”以及FTP站點(diǎn)“FTP”。
圖4 SSL-VPN實(shí)驗(yàn)拓?fù)?/p>
基于GNS3與VMware版ASA模擬器構(gòu)建的SSL-VPN實(shí)驗(yàn)拓?fù)淙鐖D5所示。為構(gòu)建該環(huán)境 ,需要使用仿真軟件 “VMware workstation”[8]、“GNS3”[9]、“VMware版ASA模擬器”、“虛擬通道軟件(Named Pipe TCP Proxy,NPTP)”、內(nèi)部測試服務(wù)器的操作系統(tǒng)鏡像文件、測試主機(jī)的操作系統(tǒng)鏡像文件以及GNS3中路由器所需IOS文件[10]。本文使用的VMware版ASA模擬器的操作系統(tǒng)為8.4(2)。
仿真實(shí)驗(yàn)環(huán)境中各連接端口及其參數(shù)規(guī)劃如表1所示。
圖5 GNS3中模擬實(shí)驗(yàn)環(huán)境
3.1 VMware Workstation的配置
根據(jù)表1的規(guī)劃, 首先在VMware中添加5張?zhí)摂M網(wǎng)卡,并分別命名為“VMnet1”、“VMnet2”、 “VMnet3”、“VMnet4”與“VMnet5”,每張?zhí)摂M網(wǎng)卡類型均為“僅主機(jī)模式”。
然后,在VMware中建立3臺(tái)虛擬機(jī):一臺(tái)是ASA模擬器,并為ASA防火墻虛擬機(jī)定義三個(gè)網(wǎng)絡(luò)適配器,網(wǎng)絡(luò)適配器1定義到虛擬網(wǎng)卡“VMnet1”上,網(wǎng)絡(luò)適配器2定義到虛擬網(wǎng)卡“VMnet2上”,網(wǎng)絡(luò)適配器3定義到虛擬網(wǎng)卡“VMnet3”上;一臺(tái)用來模擬主機(jī)“HOSTA”, 網(wǎng)絡(luò)適配器定義到虛擬網(wǎng)卡“VMnet5”;一臺(tái)模擬內(nèi)部三個(gè)服務(wù)器,網(wǎng)絡(luò)適配器定義到虛擬網(wǎng)卡“VMnet4”上,其操作系統(tǒng)平臺(tái)為Windows server或linux等網(wǎng)絡(luò)操作系統(tǒng),并在該虛擬機(jī)上采用基于IP地址的虛擬主機(jī)方式構(gòu)建出兩個(gè)WEB站點(diǎn)與一個(gè)FTP站點(diǎn)。
3.2 GNS3中模擬環(huán)境的搭建
首先,在GNS3中拖入如圖5所示拓?fù)渌璧脑O(shè)備圖標(biāo)。為圖中的云設(shè)備(充當(dāng)ASA)順序添加虛擬網(wǎng)卡“VMnet1” “VMnet2”與“VMnet3”;為主機(jī)“WEB1/WEB2/FTP”添加虛擬網(wǎng)卡“VMnet4”;為主機(jī)“HOSTA” 添加虛擬網(wǎng)卡“VMnet5”。
然后,選擇合適的線纜根據(jù)圖5所示的連接端口將設(shè)備連接起來。在連接防火墻“ASA1”時(shí),防火墻“ASA1”的第1張?zhí)摂M網(wǎng)卡對(duì)應(yīng)G0端口,第2張?zhí)摂M網(wǎng)卡對(duì)應(yīng)G1端口,第3張?zhí)摂M網(wǎng)卡對(duì)應(yīng)G3端口。
首先,根據(jù)實(shí)驗(yàn)部署要求完成路由器“ISP”接口、防火墻接口、防火墻默認(rèn)路由、防火墻規(guī)則以及NAT的配置。
接著,在防火墻上完成無客戶端SSL-VPN的配置,其關(guān)鍵步驟包括:① 放行外網(wǎng)到防火墻外網(wǎng)口的HTTPS服務(wù)流量;② 在防火墻外網(wǎng)口上啟用SSL-VPN;③ 配置書簽(bookmark),創(chuàng)建用于 WebVPN 訪問的服務(wù)器或URL 的列表;④ 配置組策略;⑤ 創(chuàng)建SSL-VPN用戶;⑥ 定義隧道組。
上述配置步驟中書簽的配置只支持在圖形界面ASDM(Cisco Adaptive Security Device Manager)中配置,不支持命令行配置,而其它配置步驟既可以使用ASDM也可以使用命令行完成。
(1) 放行到ASA1外網(wǎng)口的HTTPS流量。
ASA1(config)#access-list sslvpn extended permit tcp any host 202.33.4.2 eq 443
ASA1(config)#access-group sslvpn in interface outside
(2) 在ASA1外網(wǎng)口上啟用。
SSL-VPN
ASA1(config)#webvpn
ASA1(config)#enable outside
(3) 配置組策略。
ASA1(config)#group-policy clientless-vpn-admin internal
ASA1(config)#group-policy clientless-vpn-admin attributes
ASA1(config-group-policy)#vpn-tunnel-protocol ssl-clientless
ASA1(config-group-policy)#webvpn
ASA1(config-group-webvpn)#url-list value admin-inside-server
ASA1(config)#group-policy clientless-vpn-user internal
ASA1(config)#group-policy clientless-vpn-user attributes
ASA1(config-group-policy)#vpn-tunnel-protocol ssl-clientless
ASA1(config-group-policy)#webvpn
ASA1(config-group-webvpn)#url-list value user-inside-server
(4) 創(chuàng)建SSL-VPN用戶。
ASA1(config-if)#username admin01 password Chengdu
ASA1(config-if)#username admin01 atrributes
ASA1(config-username)#vpn-group-policy clientless-vpn-admin
ASA1(config)#username user01 password chengdu
ASA1(config-if)#username user01 atrributes
ASA1(config-username)#vpn-group-policy clientless-vpn-user
(5) 定義隧道組。
ASA1(config)#tunnel-group ssl-vpn-admin type remote-access
ASA1(config)# tunnel-group ssl-vpn-admin general-attributes
ASA1(config-tunnel-general)#default-group-policy clientless-vpn-admin
ASA1(config)#tunnel-group ssl-vpn-user type remote-access
ASA1(config)#tunnel-group ssl-vpn-user general-attributes
ASA1(config-tunnel-general)#default-group-policy clientless-vpn-user
完成了無客戶端SSL-VPN的配置后,在主機(jī)HOSTA的瀏覽器中輸入“https:// 202.33.4.2”,顯示登錄界面。
分別使用用戶 “user01”與“admin01”進(jìn)行登錄測試,由于對(duì)兩個(gè)用戶指定了不同的安全策略,用戶登錄后可訪問的內(nèi)部資源也就不同。用戶“user01”登錄后可訪問的內(nèi)部資源列表用戶“admin01”登錄后可訪問的內(nèi)部資源列表。
SSL-VPN是當(dāng)前主流的VPN技術(shù)之一,部署SSL-VPN是應(yīng)用型網(wǎng)絡(luò)人才必備技能。學(xué)生的SSL-VPN的部署實(shí)施能力必須通過相應(yīng)實(shí)驗(yàn)來培養(yǎng),但該實(shí)驗(yàn)環(huán)境需要的設(shè)備多,需要路由器、防火墻、交換機(jī)以及多臺(tái)主機(jī),并且網(wǎng)絡(luò)設(shè)備價(jià)格昂貴、操作系統(tǒng)版本更新快,因此許多高校并沒有足夠的真實(shí)設(shè)備來搭建該實(shí)驗(yàn)環(huán)境。
隨著仿真技術(shù)的不斷發(fā)展,虛擬出來的設(shè)備已基本能實(shí)現(xiàn)真實(shí)設(shè)備功能,本文使用仿真軟件GNS3與VMware版ASA模擬器等構(gòu)建網(wǎng)絡(luò)環(huán)境可以有效完成SSL-VPN仿真實(shí)驗(yàn)及測試,為教學(xué)提供了極大的方便[11-15]。
[1] Jazib Frahim,Qiang Huang. SSL與遠(yuǎn)程接入VPN[M]. 王 喆、羅進(jìn)文、白 帆,譯.北京:人民郵件出版社,2009:7.
[2] 葛蘇慧,王 敏.SSL VPN技術(shù)在校園網(wǎng)中的應(yīng)用[J].廣西大學(xué)學(xué)報(bào)(自然科學(xué)版),2011,36(1):155-159.
[3] 周敬和,曾海鵬. SSL VPN服務(wù)器關(guān)鍵技術(shù)研究[J]. 計(jì)算機(jī)工程與科學(xué),2005,27(6): 7.
[4] 何亞輝. 基于SSL協(xié)議的VPN技術(shù)研究及在校園網(wǎng)中的應(yīng)用[J]. 重慶理工大學(xué)學(xué)報(bào),2011,25(2):88-89.
[5] 馬淑文.SSL VPN技術(shù)在校園網(wǎng)中的應(yīng)用與研究 [J] . 計(jì)算機(jī)工程與設(shè)計(jì),2007,28(21):5137.
[6] 別 牧,趙 毅,袁 柱. SSL VPN及其基于校園網(wǎng)絡(luò)的應(yīng)用[J].重慶工學(xué)院,2006 (20):112.
[7] 羅 俊.SSL VPN的幾種典型部署場景分析[J].信息安全與通信保密,2008(10):33-34.
[8] 陳建銳,何增穎.基于虛擬機(jī)的VPN實(shí)驗(yàn)環(huán)境構(gòu)建[J].實(shí)驗(yàn)室研究與探索,2010,29(1) : 59.
[9] 顧春峰,李偉斌,蘭秀風(fēng). 基于VMware、GNS3實(shí)現(xiàn)虛擬網(wǎng)絡(luò)實(shí)驗(yàn)室[J] .實(shí)驗(yàn)室研究與探索,2012,31(1): 73.
[10] 劉東霖. SSL VPN技術(shù)研究及仿真分析[J] .現(xiàn)代電子技術(shù),2013,36(13): p103.
[11] 舒云星,鄭衛(wèi)東.基于Vmware的虛擬計(jì)算機(jī)實(shí)驗(yàn)系統(tǒng)[J].實(shí)驗(yàn)室研究與探索,2006,25(9) : 1086-1088..
[12] 王麗娜,劉 炎,何 軍.基于IPSec和GRE的VPN實(shí)驗(yàn)仿真[J] .實(shí)驗(yàn)室研究與探索,2013,32(9): 70.
[13] 吳志周,儲(chǔ) 浩,嚴(yán)作人.基于VPN的網(wǎng)上仿真實(shí)驗(yàn)平臺(tái)的研究與實(shí)踐[J] .實(shí)驗(yàn)室研究與探索,2007,26(1): 62-64.
[14] 莊小妹.VPN實(shí)驗(yàn)教學(xué)的設(shè)計(jì)與實(shí)現(xiàn)[J] .安徽電子信息職業(yè)技術(shù)學(xué)院學(xué)報(bào),2014,13(6):22-23.
[15] 王麗娜,劉 炎.BGP/MPLS VPN中CE接入Internet仿真[J] .實(shí)驗(yàn)室研究與探索,2014,33(3): 78.
Simulation of the SSL-VPN Experiment Based on ASA Firewall
HUANGHui1,ZHANGChun-rong2
(1. Wenzhou University, Wenzhou 325035, China; 2. Chengdu Aeronautic Polytechnic, Chengdu 610100, China)
SSL-VPN is a widely used VPN technology,it is also the technology that professional expertise of network engineers must master. SSL-VPN is usually based on firewall. However, many colleges and universities can’t complete the experiment content due to restriction that there is no hardware firewall. The authors designed SSL-VPN experiment scheme according to the typical application in the project of SSL-VPN, and based on the GNS3 and ASA simulator we realized non client SSL-VPN simulation. The scheme was effectively implemented in training the students' skills of SSL-VPN deployment.
SSL-VPN; clientless SSL-VPN; ASA simulator
2015-07-13
浙江省2013年高等教育教學(xué)改革項(xiàng)目(jg2013156)和成都航空職業(yè)技術(shù)學(xué)院教育教學(xué)科研項(xiàng)目(061458J)
黃 輝(1982-),男,浙江衢縣人,碩士,實(shí)驗(yàn)師,研究方向?yàn)橛?jì)算機(jī)網(wǎng)絡(luò)。Tel.:15858701750; E-mail:89988485@qq.com
張純?nèi)?1973-),女,四川巴中人,碩士,副教授,研究方向?yàn)橛?jì)算機(jī)網(wǎng)絡(luò)。
Tel.:18190897887; E-mail:289302109@qq.com。
TP 393.08; G 642.0
A
1006-7167(2015)11-0111-03