CBAC在Cisco路由器安全中的應(yīng)用
使用思科路由的用戶非常多,同時(shí)也會(huì)出現(xiàn)很多問(wèn)題,于是我研究了一下CBAC對(duì)于Cisco路由器安全的作用,在這里拿出來(lái)和大家分享一下,希望對(duì)大家有用。在Cisco路由器上創(chuàng)建ACL(訪問(wèn)控制列表)是管理員常用的數(shù)據(jù)過(guò)濾和網(wǎng)絡(luò)安全防護(hù)措施,但是ACL的局限性是非常明顯的。
因?yàn)樗荒軝z測(cè)到網(wǎng)絡(luò)層和傳輸層的數(shù)據(jù)信息,而對(duì)于封裝在IP包中的惡意信息它是無(wú)能為力的。因此,ACL并不可靠,需要CBAC(基于上下文的訪問(wèn)控制)的配合,這樣網(wǎng)絡(luò)安全性將會(huì)極大提升。本文將和大家一起探討Cisco路由器安全CBAC的部署的技術(shù)細(xì)節(jié)及其相關(guān)技巧。
一、CBAC簡(jiǎn)述
CBAC(context-based access control)即基于上下文的訪問(wèn)控制,它不用于ACL(訪問(wèn)控制列表)并不能用來(lái)過(guò)濾每一種TCP/IP協(xié)議,但它對(duì)于運(yùn)行TCP、UDP應(yīng)用或某些多媒體應(yīng)用(如Microsoft的NetShow或Real Audio)的網(wǎng)絡(luò)來(lái)說(shuō)是一個(gè)較好的安全解決方案。除此之外,CBAC在流量過(guò)濾、流量檢查、警告和審計(jì)蛛絲馬跡、入侵檢測(cè)等方面表現(xiàn)卓越。在大多數(shù)情況下,我們只需在單個(gè)接口的一個(gè)方向上配置CBAC,即可實(shí)現(xiàn)只允許屬于現(xiàn)有會(huì)話的數(shù)據(jù)流進(jìn)入內(nèi)部網(wǎng)絡(luò)??梢哉f(shuō),ACL與CBAC是互補(bǔ)的,它們的組合可實(shí)現(xiàn)網(wǎng)絡(luò)安全的最大化。
二、CBAC的合理配置
1.CBAC配置前的評(píng)估
在進(jìn)行CBAC配置之前需要對(duì)網(wǎng)絡(luò)的安全標(biāo)準(zhǔn)、應(yīng)用需求等方面進(jìn)行評(píng)估然后根據(jù)需要進(jìn)行相應(yīng)的配置。通常情況下,用戶可以在一個(gè)或多個(gè)接口的2個(gè)方向上配置CBAC。如果防火墻兩端的網(wǎng)絡(luò)都需要受保護(hù)的話,如在Extranet或Intranet的配置中,就可以在2個(gè)方向上配置CBAC。若防火墻被放置在2個(gè)合作伙伴公司網(wǎng)絡(luò)的中間,則可能想要為某些應(yīng)用在一個(gè)方向上限制數(shù)據(jù)流,并為其它應(yīng)用在反方向上限制數(shù)據(jù)流。特別要注意的是,CBAC只能用于IP數(shù)據(jù)流。只有TCP和UDP數(shù)據(jù)包能被檢查,其他IP數(shù)據(jù)流。
(如ICMP)不能被CBAC檢查,只能采用基本的訪問(wèn)控制列表對(duì)其進(jìn)行過(guò)濾。在不作應(yīng)用層協(xié)議審查時(shí),像自反訪問(wèn)控制列表一樣,CBAc可以過(guò)濾所有的TCP和UDP會(huì)話。但CBAC也可以被配置來(lái)有效地處理多信道(多端口)應(yīng)用層協(xié)議:cu-SeeMe(僅對(duì)whitePine版本)、FTP、H.323(如NetMeeting和ProShare)、HTTP(Java攔阻)、Java、MicrosftNetshow、UNIX的r系列命令(如rlogin、rexec和rsh);RealAudio、RPC(SunRPc,非DCERPC)MircosoftRPC、SMTP、SQL.Net、StreamWorks、TFTP、VDOLive。
2.選擇配置接口
為了恰當(dāng)?shù)嘏渲肅BAc,首先必須確定在哪個(gè)接口上配置CBAC。下面描述了內(nèi)部口和外部接口間的不同之處。配置數(shù)據(jù)流過(guò)濾的第一步是決定是否在防火墻的一個(gè)內(nèi)部接口或外部接口上配置CBAC。在該環(huán)境下,所謂“內(nèi)部”是指會(huì)話必須主動(dòng)發(fā)起以讓其數(shù)據(jù)流被允許通過(guò)防火墻的一側(cè);“外部”是指會(huì)話不能主動(dòng)發(fā)起的一側(cè)(從外部發(fā)起的會(huì)話被禁止)。如果要在2個(gè)方向上配置CBAc,應(yīng)該先在一個(gè)方向上使用適當(dāng)?shù)摹癐ntemal”和“Extemal”接口指示配置CBAC。在另一個(gè)方向上配置CBAC時(shí),則將該接口指示換成另一個(gè)。
CBAC常被用于2種基本的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)之一。確定哪種拓?fù)浣Y(jié)構(gòu)與用戶自己的最吻合,可以幫助用戶決定是否應(yīng)在一個(gè)內(nèi)部接口或是在一個(gè)外部接口上配置CBAC。給出了第1種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。在該簡(jiǎn)單的拓?fù)浣Y(jié)構(gòu)中,CBAC被配置在外部接口S0上。這可以防止指定的協(xié)議數(shù)據(jù)流進(jìn)入該防火墻Cisco路由器安全和內(nèi)部網(wǎng)絡(luò),除非這些數(shù)據(jù)是由內(nèi)部網(wǎng)絡(luò)所發(fā)起會(huì)話的一部分。
根據(jù)這2個(gè)拓?fù)浣Y(jié)構(gòu)樣例,可以決定網(wǎng)絡(luò)是否應(yīng)在一個(gè)內(nèi)部接口或是在一個(gè)外部接口上配置CBAC。如果防火墻只有2條連接,一條是到內(nèi)部網(wǎng)絡(luò),另外一條是到外部網(wǎng)絡(luò),那么只能使用入方向的訪問(wèn)控制列表就可以了,因?yàn)閿?shù)據(jù)包在有機(jī)會(huì)影響Cisco路由器安全之前已經(jīng)被過(guò)濾了。
3.防火墻配置
當(dāng)用戶用Cisco IOS配置任何IP防火墻時(shí)可參照下面給出的一些基本的配置指南。配置一個(gè)包含允許來(lái)自不受保護(hù)網(wǎng)絡(luò)的某些ICMP數(shù)據(jù)流條目的訪問(wèn)控制列表。盡管一個(gè)拒絕所以不屬于受CBAC所審查的連接一部分的IP數(shù)據(jù)流的訪問(wèn)控制列表看起來(lái)比較安全,但它對(duì)Cisco路由器安全的正確運(yùn)行不太現(xiàn)實(shí)。Cisco路由器安全期望能夠看到來(lái)自網(wǎng)絡(luò)中其他Cisco路由器安全的ICMP數(shù)據(jù)流。ICMP數(shù)據(jù)流不能被CBAC所審查,所以應(yīng)在防護(hù)控制列表中設(shè)置特定的條目以允許返回的ICMP數(shù)據(jù)流。如在受保護(hù)網(wǎng)絡(luò)中的一個(gè)用戶要用“Ping”命令來(lái)獲取位于不受保護(hù)網(wǎng)絡(luò)中的一臺(tái)主機(jī)的狀態(tài),如果在訪問(wèn)控制列表中沒(méi)有允許“echoreply”消息的條目,則在受保護(hù)網(wǎng)絡(luò)中的這位用戶就得不到其“Ping”命令的相應(yīng)。下面所示的配置中含有允許關(guān)鍵ICMP消息的訪問(wèn)控制列表?xiàng)l目: