摘要:防火墻是在內(nèi)部網(wǎng)與外部網(wǎng)之間實(shí)施安全防范的系統(tǒng),它限制外界用戶對(duì)內(nèi)部網(wǎng)絡(luò)的訪問,管理內(nèi)部用戶訪問外部網(wǎng)絡(luò)的權(quán)限,保護(hù)著主機(jī)信息在網(wǎng)絡(luò)上的安全。分布式防火墻技術(shù)的使用可以加強(qiáng)內(nèi)外網(wǎng)關(guān)之間數(shù)據(jù)交換的安全性,本文使用該技術(shù)設(shè)計(jì)、實(shí)現(xiàn)了內(nèi)外網(wǎng)關(guān)數(shù)據(jù)的安全交換。
關(guān)鍵詞:分布式防火墻;內(nèi)網(wǎng)關(guān);外網(wǎng)關(guān);數(shù)據(jù)交換;安全
Abstract:The firewall is the security system between the internal network and the external network, it restricts the outside user visit to internal network, manages the jurisdiction of the internal user to visit the exterior network, and protects the main engine information security in the network. The use of distributed firewall technology might strengthen security of the data exchange between the inside and outside gateways, this paper uses this technology to design and realize the inside and outside gateway data exchange safely.
Keywords:Distributed firewall;internal gateway;external gateway;data exchange;security
防火墻是在內(nèi)部網(wǎng)絡(luò)和外部網(wǎng)絡(luò)之間架起的一層屏障,它綜合采用適當(dāng)?shù)募夹g(shù),加強(qiáng)內(nèi)外網(wǎng)絡(luò)之間的訪問控制,它對(duì)兩個(gè)網(wǎng)絡(luò)間傳輸?shù)膱?bào)文和連接方式按照一定的安全策略進(jìn)行檢查,來決定網(wǎng)絡(luò)間的通信是否被允許,從而達(dá)到保護(hù)內(nèi)部網(wǎng)絡(luò)的目的。防火墻,是用來防范非授權(quán)的訪問,保護(hù)信息安全的一個(gè)或一組系統(tǒng)。一般意義上的防火墻用于非授權(quán)訪問的防范,這種防范對(duì)于企事業(yè)單位的網(wǎng)絡(luò)安全起到了非常重要的作用。
防火墻是一種行之有效的網(wǎng)絡(luò)安全機(jī)制,它由軟件或硬件設(shè)備組合而成,處于企業(yè)或網(wǎng)絡(luò)群體計(jì)算機(jī)與Internet之間,限制外界用戶對(duì)內(nèi)部網(wǎng)絡(luò)訪問及管理內(nèi)部用戶訪問外部網(wǎng)絡(luò)的權(quán)限,作為內(nèi)部網(wǎng)與外部網(wǎng)之間實(shí)施安全防范的系統(tǒng)[1],其位置如圖1所示。
由于從互聯(lián)網(wǎng)或從內(nèi)部網(wǎng)上產(chǎn)生的任何活動(dòng)都必須經(jīng)過防火墻,它可被認(rèn)為是一種訪問控制機(jī)制,用來確定哪些內(nèi)部服務(wù)允許外部訪問,以及允許哪些外部服務(wù)訪問內(nèi)部服務(wù)。
防火墻的本質(zhì)功能主要包括如下幾方面[2]:
(1)IP地址的保存和流轉(zhuǎn)發(fā)。許多防火墻具有路由器的功能,因而,不同網(wǎng)絡(luò)之間可以交換信息。
(2)網(wǎng)絡(luò)分割。防火墻通過給客戶局域網(wǎng)和其他網(wǎng)絡(luò)之間設(shè)置一道分界線來實(shí)現(xiàn)其功能。
(3)防護(hù)DoS、掃描、Sniffer攻擊。防火墻在數(shù)據(jù)的輸入和輸出節(jié)點(diǎn)處設(shè)置了一個(gè)監(jiān)視器,可以通過防火墻限制任何選定的數(shù)據(jù)通過。
(4)IP地址和端口過濾。防火墻可以根據(jù)客戶定義,對(duì)某些IP地址和端口進(jìn)行連接或者拒絕連接。
(5)內(nèi)容過濾。代理服務(wù)器通過檢測(cè)URL和頁面內(nèi)容來控制信息傳輸,它是唯一采用這種方式的防火墻。如果配置準(zhǔn)確的話。面向代理的防火墻可以鑒別并且阻止有害的內(nèi)容通過。
(6)數(shù)據(jù)包重定向。防火墻可以將數(shù)據(jù)流從一個(gè)端口或主機(jī)轉(zhuǎn)發(fā)到另一個(gè)端口或主機(jī)。
(7)增強(qiáng)的認(rèn)證及加密功能。防火墻可以認(rèn)證用戶,在自己和其它網(wǎng)絡(luò)防火墻之間加密傳輸信息。
(8)補(bǔ)充日志。防火墻的一個(gè)最重要的功能是允許用戶檢查所有網(wǎng)絡(luò)數(shù)據(jù)包的詳細(xì)資料。
Bellovin[3]于1999年提出了分布式防火墻的概念。分布式防火墻是指物理上有多個(gè)防火墻實(shí)體在工作,但在邏輯上只有一個(gè)防火墻。從管理者角度來看,它不需要了解防火墻分布細(xì)節(jié),只要清楚有哪些資源需要保護(hù),以及資源的權(quán)限如何分配即可。
分布式防火墻[4]安全體系具有以下特點(diǎn):一是靈活性。分布式防火墻布置非常靈活,用一個(gè)過濾器可以隔離一個(gè)或多個(gè)資源,由于過濾器在設(shè)計(jì)上的特點(diǎn),它可以在不影響網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的情況下透明接入,不需要原網(wǎng)絡(luò)軟硬件有任何設(shè)置改變。二是易管理性。分布式防火墻是集中管理,在一臺(tái)管理站上可添加、刪除、修改資源,并可對(duì)所有的資源進(jìn)行權(quán)限設(shè)置,大大方便了管理員使用。三是高可靠性。由于過濾器是專用的過濾設(shè)備,除了管理站命令外,對(duì)外基本不響應(yīng),因此很難被攻擊,過濾器和管理站的通信均使用帶簽名的加密包,安全可靠。四是成本低。在分布式防火墻中用得最多的是過濾器,過濾器本身設(shè)備簡(jiǎn)單,與價(jià)格萬元以上的商業(yè)硬件防火墻相比,價(jià)格優(yōu)勢(shì)很大。
在現(xiàn)實(shí)生活中,由于政府、銀行、證券和部隊(duì)等安全性要求很高、涉及單位秘密的內(nèi)部網(wǎng)絡(luò)與外部相對(duì)不安全的網(wǎng)絡(luò)互聯(lián)的需求越來越多,如何萬無一失地保證內(nèi)部網(wǎng)絡(luò)的安全,防止內(nèi)網(wǎng)信息泄密,阻止外網(wǎng)病毒和木馬的攻擊,顯得格外重要。有沒有什么方法可以在保證內(nèi)部網(wǎng)絡(luò)與外部網(wǎng)絡(luò)之間實(shí)現(xiàn)信息安全交換的同時(shí),提供了很高的安全性?本文主要講述如何使用分布式防火墻技術(shù)來實(shí)現(xiàn)內(nèi)外網(wǎng)關(guān)數(shù)據(jù)安全交換。
在細(xì)述之前,我們先通過一個(gè)簡(jiǎn)單的實(shí)例,了解一下一個(gè)數(shù)據(jù)包是如何從內(nèi)部網(wǎng)絡(luò)的一臺(tái)主機(jī)上發(fā)送到Internet,并從Internet返回到內(nèi)部網(wǎng)絡(luò)的該臺(tái)主機(jī)的。
假設(shè)一個(gè)內(nèi)部用戶(192.168.6.123:2000)發(fā)送一個(gè)數(shù)據(jù)包到Internet上的一臺(tái)主機(jī)(202.102.192.68:80),其整個(gè)數(shù)據(jù)傳輸過程如下所示:
第一步:內(nèi)網(wǎng)關(guān)接收到內(nèi)部主機(jī)的數(shù)據(jù)包請(qǐng)求:
192.168.6.123:2000 --> 202.102.192.68:80
內(nèi)網(wǎng)關(guān)數(shù)據(jù)交換模塊將此包通過物理隔離控制模塊發(fā)送到外網(wǎng)關(guān);
第二步:外網(wǎng)關(guān)從物理隔離控制模塊中接收到內(nèi)網(wǎng)關(guān)發(fā)送來的內(nèi)部主機(jī)請(qǐng)求數(shù)據(jù)包,在內(nèi)外地址映射表中添加一條記錄,內(nèi)外地址映射表的大致結(jié)構(gòu)如下所示:
第三步:外網(wǎng)關(guān)對(duì)數(shù)據(jù)包進(jìn)行地址轉(zhuǎn)換,轉(zhuǎn)換后的格式如下:(假設(shè)外網(wǎng)關(guān)的出口IP地址為:192.168.2.241)
192.168.2.241:I --> 202.102.192.68:80(其中I是一個(gè)變量,代表外網(wǎng)關(guān)的發(fā)送數(shù)據(jù)包端口號(hào))
然后將該數(shù)據(jù)包通過網(wǎng)卡發(fā)送到Internet上;
第四步:當(dāng)該數(shù)據(jù)包請(qǐng)求得到Internet主機(jī)響應(yīng)時(shí),外網(wǎng)關(guān)數(shù)據(jù)交換模塊捕獲該響應(yīng)包如下:
202.102.192.68:80 --> 192.168.2.241:I
通過內(nèi)外地址映射表的對(duì)應(yīng)關(guān)系可以對(duì)該數(shù)據(jù)包進(jìn)行還原如下:
202.102.192.68:80 --> 192.168.6.123:2000
第五步:外網(wǎng)關(guān)數(shù)據(jù)交換模塊把還原后的數(shù)據(jù)包:
202.102.192.68:80 --> 192.168.6.123:2000
通過物理隔離控制模塊發(fā)送到內(nèi)網(wǎng)關(guān)上;
第六步:內(nèi)網(wǎng)關(guān)數(shù)據(jù)交換模塊接收到外網(wǎng)關(guān)發(fā)送來的還原后的數(shù)據(jù)包,把該數(shù)據(jù)包通過網(wǎng)卡發(fā)送到內(nèi)部主機(jī)192.168.6.123:2000上。
為了更加清晰地描述數(shù)據(jù)包的交換過程,上述過程并沒有描述內(nèi)網(wǎng)關(guān)的用戶驗(yàn)證、日志記錄以及病毒檢測(cè)功能,同時(shí)也忽略了一些實(shí)現(xiàn)細(xì)節(jié),如:數(shù)據(jù)包MAC地址的轉(zhuǎn)換、ARP包的應(yīng)答處理以及不同協(xié)議數(shù)據(jù)包的不同分析等等。
由此可以看出,內(nèi)外網(wǎng)關(guān)數(shù)據(jù)交換系統(tǒng)應(yīng)該能夠?qū)崿F(xiàn)以下幾個(gè)功能:內(nèi)網(wǎng)關(guān)數(shù)據(jù)交換模塊所實(shí)現(xiàn)的功能包括:用戶驗(yàn)證、日志記錄、病毒檢測(cè)以及網(wǎng)絡(luò)數(shù)據(jù)交換。外網(wǎng)關(guān)數(shù)據(jù)交換模塊所實(shí)現(xiàn)的功能包括:網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)以及網(wǎng)絡(luò)數(shù)據(jù)交換。內(nèi)外網(wǎng)關(guān)數(shù)據(jù)交換系統(tǒng)根據(jù)功能可分為以下幾個(gè)部分:內(nèi)網(wǎng)處理單元、外網(wǎng)處理單元、信息交換裝置。具體結(jié)構(gòu)如圖2所示:
本文只針對(duì)內(nèi)外網(wǎng)之間數(shù)據(jù)安全交換的實(shí)現(xiàn)來進(jìn)行描述,所以用戶驗(yàn)證、日志記錄、病毒檢測(cè)等功能暫時(shí)不予描述。
1.內(nèi)網(wǎng)關(guān)數(shù)據(jù)交換模塊設(shè)計(jì)
內(nèi)網(wǎng)關(guān)數(shù)據(jù)交換功能是通過內(nèi)網(wǎng)關(guān)數(shù)據(jù)交換程序來完成的,內(nèi)網(wǎng)關(guān)數(shù)據(jù)交換程序主要流程示意圖如圖3所示。
內(nèi)網(wǎng)關(guān)數(shù)據(jù)交換程序主要包括三個(gè)線程:第一個(gè)線程在內(nèi)網(wǎng)關(guān)入口處抓包,并把內(nèi)部用戶的請(qǐng)求數(shù)據(jù)包放到公共輸出緩存區(qū)鏈表中;第二個(gè)線程負(fù)責(zé)將公共輸出緩存區(qū)鏈表中的數(shù)據(jù)包,通過物理隔離控制模塊發(fā)送到外網(wǎng)關(guān);第三個(gè)線程負(fù)責(zé)接收從外網(wǎng)關(guān)通過物理隔離控制模塊進(jìn)入內(nèi)網(wǎng)關(guān)的數(shù)據(jù)包,并把接收到的數(shù)據(jù)包發(fā)送到內(nèi)部網(wǎng)絡(luò)中。
2.外網(wǎng)關(guān)數(shù)據(jù)交換模塊設(shè)計(jì)
外網(wǎng)關(guān)數(shù)據(jù)交換模塊要實(shí)現(xiàn)兩個(gè)主要功能:網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)及網(wǎng)絡(luò)數(shù)據(jù)交換。其中,網(wǎng)絡(luò)地址轉(zhuǎn)換功能的實(shí)現(xiàn),即實(shí)現(xiàn)內(nèi)外網(wǎng)絡(luò)的地址轉(zhuǎn)換是外網(wǎng)關(guān)數(shù)據(jù)交換的主要功能,要對(duì)不同類型的IP包進(jìn)行拆包分析,并采取不同的方案進(jìn)行轉(zhuǎn)發(fā);網(wǎng)絡(luò)數(shù)據(jù)交換功能是由外網(wǎng)關(guān)數(shù)據(jù)交換程序來完成的。
內(nèi)網(wǎng)地址與外網(wǎng)地址的動(dòng)態(tài)轉(zhuǎn)換(NAT)完全依賴于內(nèi)外地址映射表,該映射表在外網(wǎng)關(guān)數(shù)據(jù)交換程序中起著舉足輕重的作用,表結(jié)構(gòu)設(shè)計(jì)應(yīng)該簡(jiǎn)潔合理,避免煩瑣的多次匹配以影響效率,具體的鏈表結(jié)構(gòu)可設(shè)計(jì)如下:
實(shí)現(xiàn)外網(wǎng)關(guān)網(wǎng)絡(luò)數(shù)據(jù)交換的外網(wǎng)關(guān)數(shù)據(jù)交換程序主要流程示意圖如圖4所示:
外網(wǎng)關(guān)數(shù)據(jù)交換程序主要包括三個(gè)線程:第一個(gè)線程在外網(wǎng)關(guān)出口處抓包,并把由Internet返回的應(yīng)答數(shù)據(jù)包放到公共輸入緩存區(qū)鏈表中;第二個(gè)線程負(fù)責(zé)將公共輸入緩存區(qū)鏈表中的數(shù)據(jù)包,通過物理隔離控制模塊發(fā)送到內(nèi)網(wǎng)關(guān);第三個(gè)線程負(fù)責(zé)接收從內(nèi)網(wǎng)關(guān)通過物理隔離控制模塊進(jìn)入外網(wǎng)關(guān)的數(shù)據(jù)包,并把接收到的數(shù)據(jù)包發(fā)送到Internet上。
內(nèi)外網(wǎng)關(guān)數(shù)據(jù)安全交換的實(shí)現(xiàn)將極大地提高安全性要求較高、涉及單位秘密的內(nèi)部網(wǎng)絡(luò)的安全性,同時(shí)也將有力地提高信息安全領(lǐng)域的安全防范水平。希望本文能夠拋磚引玉,吸引更多的老師共同致力于網(wǎng)絡(luò)安全的工作。
參考文獻(xiàn)
[1]V.V.Preetham.冉曉旻,等,譯.Internet安全與防火墻[M].北京:清華大學(xué)出版社,2004.
[2](美)Anne Carasik-Henmi,等.李華飚,柳幀良,王恒,等,譯.防火墻核心技術(shù)精解[M].北京:中國(guó)水利水電出版社,2005:37-50.
[3]Bellovin S M.Distributed firewalls[J]. Journal of Login,1999,24(5):37-39.
[4]趙戈,等.用分布式防火墻構(gòu)造網(wǎng)絡(luò)安全體系[J].計(jì)算機(jī)應(yīng)用研究,2004.2.
[5]Terry William Ogletree.防火墻原理與實(shí)施[M].電子工業(yè)出版社,2001.3.
作者簡(jiǎn)介:陳曉男(1973--),女,江蘇省常州人, 無錫科技職業(yè)學(xué)院軟件外包工程系講師,江南大學(xué)信息工程學(xué)院在讀工程碩士,研究方向?yàn)橛?jì)算機(jī)技術(shù)。
聯(lián)系方式:無錫市無錫科技職業(yè)學(xué)院軟件與服務(wù)外包學(xué)院(214028),電話:13585029786,E-mail:wxcxn@126.com。