摘要:隨著高校規(guī)模的不斷擴(kuò)大,很多高校都擁有跨地域的多個(gè)校區(qū),校園網(wǎng)的數(shù)據(jù)資源和網(wǎng)絡(luò)資源主要集中在校本部的網(wǎng)絡(luò)中,用戶遠(yuǎn)程訪問(wèn)校園網(wǎng)就成為急需解決的問(wèn)題。SSLVPN采用標(biāo)準(zhǔn)的安全套接層對(duì)傳輸中的數(shù)據(jù)進(jìn)行加密,在應(yīng)用層實(shí)現(xiàn)了數(shù)據(jù)的安全性和完整性。
關(guān)鍵詞:校園網(wǎng);SSLVPN;遠(yuǎn)程訪問(wèn)
中圖分類(lèi)號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9599 (2012) 21-0000-02
1 引言
虛擬專(zhuān)用網(wǎng)(VPN)[1]技術(shù)研究始于20世紀(jì)60年代,第一個(gè)專(zhuān)用網(wǎng)絡(luò)是通過(guò)租用ATT專(zhuān)線來(lái)實(shí)現(xiàn)的。90年代初,Internet開(kāi)始應(yīng)用VPN技術(shù)。1997年,VPN被InfoWorld評(píng)選為四項(xiàng)重要技術(shù)之一[2]。VPN從誕生起,就被人們普遍關(guān)注。它利用現(xiàn)有的Internet資源,可以完成異地分支機(jī)構(gòu)、合作伙伴和移動(dòng)用戶互聯(lián),并具有低成本、數(shù)據(jù)安全性、便于擴(kuò)充和管理等優(yōu)點(diǎn),因而成為網(wǎng)絡(luò)技術(shù)研究的熱點(diǎn)。
2 SSLVPN
SSLVPN提供一個(gè)無(wú)縫連接的、無(wú)客戶端的遠(yuǎn)程訪問(wèn)方式遠(yuǎn)程用戶使用瀏覽器就可以以某種粒度訪問(wèn)公司的特定資源,而不再需要安裝客戶端[3]。
2.1 訪問(wèn)粒度的支持
SSLVPN工作在傳輸層和應(yīng)用層之間,為企業(yè)提供粒度級(jí)訪問(wèn)控制的能力。特定的身份驗(yàn)證和訪問(wèn)應(yīng)用程序的授權(quán)方案可以被限定在一個(gè)特定的用戶群。內(nèi)置的日志記錄和審核能力能處理各種合法要求。
2.2 易用性
SSLVPN適合用戶遠(yuǎn)程訪問(wèn),并支持大多數(shù)的終端、操作系統(tǒng)和瀏覽器等,方便人們使用。采用動(dòng)態(tài)接入技術(shù),用戶可以在任何地點(diǎn)發(fā)起連接,請(qǐng)求接入。對(duì)應(yīng)用了NAT和防火墻的網(wǎng)絡(luò)提供良好的支持。
2.3 網(wǎng)絡(luò)防御能力
SSLVPN在連接建立之前對(duì)客戶端進(jìn)行身份驗(yàn)證,確保接入者身份的合法性;數(shù)據(jù)通信全程加密,保證數(shù)據(jù)傳輸?shù)臋C(jī)密性和完整性;另外,SSL網(wǎng)關(guān)隔離了內(nèi)部服務(wù)器和客戶端,使客戶端的大多數(shù)病毒木馬感染不到內(nèi)部服務(wù)器。因此,SSLVPN具有高強(qiáng)度的網(wǎng)絡(luò)防御能力。
2.4 對(duì)網(wǎng)絡(luò)升級(jí)支持
當(dāng)前,由于Ipv4地址資源的匱乏,Ipv6即將應(yīng)用到網(wǎng)絡(luò)結(jié)構(gòu)當(dāng)中。由于SSLVPN使用的是SSL協(xié)議在網(wǎng)絡(luò)層之上,因此受到的影響也較小,只需要略作修改即可正常使用。
3 SSLVPN的設(shè)計(jì)與實(shí)現(xiàn)
3.1 校園網(wǎng)VPN的體系結(jié)構(gòu)
依據(jù)某高校校園網(wǎng)的網(wǎng)絡(luò)現(xiàn)狀及訪問(wèn)需求,本設(shè)計(jì)在校本部搭建VPN服務(wù)器,分校區(qū)搭建VPN客戶端服務(wù)器,移動(dòng)客戶端使用客戶端軟件實(shí)現(xiàn)VPN系統(tǒng)構(gòu)建。
分校區(qū)與校本部建立點(diǎn)到點(diǎn)的InternetVPN,使用數(shù)字證書(shū)實(shí)現(xiàn)身份認(rèn)證,移動(dòng)用戶與校本部建立AccessVPN,使用密碼口令實(shí)現(xiàn)身份認(rèn)證。
3.2 VPN系統(tǒng)設(shè)計(jì)
針對(duì)分校區(qū)子網(wǎng)訪問(wèn)和校外節(jié)點(diǎn)移動(dòng)訪問(wèn),本系統(tǒng)實(shí)現(xiàn)了兩種類(lèi)型的VPN:
1.校本部與分校區(qū)之間建立點(diǎn)到點(diǎn)VPN。校本部的VPN服務(wù)器部署在防火墻之后,做路由轉(zhuǎn)發(fā)和NAT設(shè)置。分校區(qū)VPN客戶端申請(qǐng)客戶端數(shù)字證書(shū)client.crt,客戶端服務(wù)器作為子網(wǎng)網(wǎng)關(guān),做防火墻和NAT設(shè)置。
2.校外節(jié)點(diǎn)與校本部之間建立AccessVPN。VPN服務(wù)器通過(guò)用戶名和密碼驗(yàn)證校外節(jié)點(diǎn)用戶身份,校外節(jié)點(diǎn)通過(guò)CA證書(shū)驗(yàn)證服務(wù)器端身份。校本部VPN服務(wù)器從CA申請(qǐng)數(shù)字證書(shū)和密鑰,在VPN服務(wù)器中為校外節(jié)點(diǎn)訪問(wèn)用戶建立用戶數(shù)據(jù)庫(kù),存放用戶名和密碼。遠(yuǎn)程用戶下載CA證書(shū)和客戶端軟件。
3.3 校園網(wǎng)VPN的實(shí)現(xiàn)
本文利用OpenVPN軟件來(lái)建立校園網(wǎng)VPN系統(tǒng)。OpenVPN是一款開(kāi)源軟件,支持多種身份驗(yàn)證方法包括:預(yù)共享私鑰,第三方證書(shū)以及用戶名/密碼組合。它大量使用了OpenSSL加密庫(kù),以及SSLv3/TLSv1協(xié)議,支持遠(yuǎn)程訪問(wèn)、點(diǎn)到點(diǎn)和WiFi等多種VPN接入方案[4]。這里使用OpenVPN為分校區(qū)和校本部建立了使用數(shù)字證書(shū)驗(yàn)證的點(diǎn)到點(diǎn)VPN,為校外節(jié)點(diǎn)與校本部建立了使用用戶名+密碼驗(yàn)證的遠(yuǎn)程訪問(wèn)VPN。
1.點(diǎn)到點(diǎn)VPN的配置。學(xué)院本部配置VPN的服務(wù)器為分校區(qū)子網(wǎng)提供點(diǎn)到點(diǎn)的VPN訪問(wèn)。分校區(qū)的一臺(tái)計(jì)算機(jī)上安裝VPN的客戶端,該機(jī)器兼為內(nèi)網(wǎng)機(jī)器提供NAT轉(zhuǎn)換,防火墻和VPN服務(wù)??蛻舳税惭b的操作系統(tǒng)為Windows2003Server。本方案中采用OpenVPN的IP路由隧道(RoutedIPtunnels)建立點(diǎn)到點(diǎn)的通信隧道,使用RSA證書(shū)和密鑰的公鑰體系進(jìn)行身份驗(yàn)證。
點(diǎn)到點(diǎn)VPN主校區(qū)服務(wù)器端實(shí)現(xiàn):
網(wǎng)絡(luò)環(huán)境部署:該步驟主要完成網(wǎng)絡(luò)連接和路由轉(zhuǎn)發(fā)設(shè)置。
系統(tǒng)環(huán)境部署:完成OPENVPN系統(tǒng)環(huán)境的搭建,主要任務(wù)有:
(1)準(zhǔn)備好TUN/TAP驅(qū)動(dòng)文件和OpenSSL庫(kù)(LINUX內(nèi)核自帶)。(2)安裝LZO庫(kù)。(3)編譯安裝OPENVPN服務(wù)。
設(shè)置證書(shū)和密鑰:本系統(tǒng)建立證書(shū)server.key,server.crt,client.key和client.crt到/easy-rsa/keys/目錄下。另外,創(chuàng)建tls-auth密鑰ta.key,為點(diǎn)對(duì)點(diǎn)的VPN連接提供了進(jìn)一步的安全驗(yàn)證最后將上述文件所在的keys/文件夾轉(zhuǎn)移至/etc/openvpn/目錄
創(chuàng)建服務(wù)端配置文件:該文件主要設(shè)置服務(wù)端監(jiān)聽(tīng)端口、隧道、服務(wù)模式等。點(diǎn)到點(diǎn)VPN分校區(qū)客戶端實(shí)現(xiàn):
分校區(qū)VPN客戶端是作為內(nèi)部局域網(wǎng)的網(wǎng)關(guān)部署的,需要做防火墻和NAT的配置,但不是本文的重點(diǎn);其它的網(wǎng)絡(luò)環(huán)境部署和系統(tǒng)環(huán)境部署與主校區(qū)VPN類(lèi)似。
2.遠(yuǎn)程訪問(wèn)VPN的配置。下面在VPN服務(wù)器上配置,實(shí)現(xiàn)用戶校外節(jié)點(diǎn)的遠(yuǎn)程訪問(wèn)。
遠(yuǎn)程訪問(wèn)VPN,服務(wù)器端對(duì)客戶端用戶使用“用戶名/密碼”驗(yàn)證方式對(duì)用戶的身份實(shí)現(xiàn)驗(yàn)證,客戶端對(duì)服務(wù)器端使用證書(shū)進(jìn)行驗(yàn)證。服務(wù)器端實(shí)現(xiàn):
網(wǎng)絡(luò)及系統(tǒng)環(huán)境的部署與(1)中類(lèi)似,不再贅述。
設(shè)置證書(shū)和密鑰:創(chuàng)建證書(shū)ca.crt和私鑰ca.key,、server.crt和密鑰server.key。
創(chuàng)建數(shù)據(jù)庫(kù):(用于存放用戶名和密碼)
創(chuàng)建數(shù)據(jù)庫(kù)文件“VPNDB”,并創(chuàng)建表,表名“vpnuser”,
配置pam_mysql模塊,創(chuàng)建/etc/pam.d/openvpn文件,生成ta.key:該文件使用HMACfirewall參數(shù)生成,用于防止Dos攻擊。服務(wù)器端配置文件server.conf。
客戶端配置文件client.conf:用于客戶端設(shè)置系統(tǒng)環(huán)境用。
4 結(jié)束語(yǔ)
本文以某高校校園網(wǎng)遠(yuǎn)程訪問(wèn)為背景,設(shè)計(jì)并實(shí)現(xiàn)了校園網(wǎng)SSLVPN系統(tǒng)。這里只研究了使用軟件構(gòu)建SSLVPN的方法,沒(méi)有在網(wǎng)絡(luò)安全和服務(wù)質(zhì)量方面做深入的研究,所以今后還可以從服務(wù)性能、負(fù)載均衡、網(wǎng)間加速和性能指標(biāo)方面進(jìn)一步完善。
參考文獻(xiàn):
[1]袁睿翕.W.TimothyStrayer虛擬專(zhuān)網(wǎng)技術(shù)與解決方案[M].北京:中國(guó)電力出版社,2003.
[2]翁亮,陳依群.虛擬專(zhuān)用網(wǎng)絡(luò)(VPN)信息加密技術(shù)研究[J].電訊技木,1999,3.
[3]熊愛(ài)金.基于安全套接層協(xié)議的虛擬專(zhuān)用網(wǎng)的研究與設(shè)計(jì)[D].電子科技大學(xué),2009.
[作者簡(jiǎn)介]陳小永(1980.6-),男,籍貫:安徽蚌埠,學(xué)歷:大學(xué)本科,職稱(chēng):助講,研究方向:計(jì)算機(jī)網(wǎng)絡(luò)。
計(jì)算機(jī)光盤(pán)軟件與應(yīng)用2012年21期