路由器訪問控制列表詳解
網(wǎng)絡(luò)安全保障的第一道關(guān)卡
對于許多網(wǎng)管員來說,配置路由器的訪問控制列表是一件經(jīng)常性的工作,可以說,路由器的訪問控制列表是網(wǎng)絡(luò)安全保障的第一道關(guān)卡。訪問列表提供了一種機(jī)制,它可以控制和過濾通過路由器的不同接口去往不同方向的信息流。這種機(jī)制允許用戶使用訪問表來管理信息流,以制定公司內(nèi)部網(wǎng)絡(luò)的相關(guān)策略。這些策略可以描述安全功能,并且反映流量的優(yōu)先級別。例如,某個(gè)組織可能希望允許或拒絕Internet對內(nèi)部Web服務(wù)器的訪問,或者允許內(nèi)部局域網(wǎng)上一個(gè)或多個(gè)工作站能夠?qū)?shù)據(jù)流發(fā)到廣域網(wǎng)上。這些情形,以及其他的一些功能 都可以通過訪問表來達(dá)到目的。
訪問列表的種類劃分
目前的路由器一般都支持兩種類型的訪問表:基本訪問表和擴(kuò)展訪問表。
基本訪問表控制基于網(wǎng)絡(luò)地址的信息流,且只允許過濾源地址。
擴(kuò)展訪問表通過網(wǎng)絡(luò)地址和傳輸中的數(shù)據(jù)類型進(jìn)行信息流控制,允許過濾源地址、目的地址和上層應(yīng)用數(shù)據(jù)。
表1列出了路由器所支持的不同訪問表的號碼范圍。
標(biāo)準(zhǔn)IP訪問表
標(biāo)準(zhǔn)IP訪問表的基本格式為:
access-list [list number][permit|deny][host/any][sourceaddress][wildcard-mask][log]
下面對標(biāo)準(zhǔn)IP訪問表基本格式中的各項(xiàng)參數(shù)進(jìn)行解釋:
1.list number---表號范圍
標(biāo)準(zhǔn)IP訪問表的表號標(biāo)識是從1到99。
2.permit/deny----允許或拒絕
關(guān)鍵字permit和deny用來表示滿足訪問表項(xiàng)的報(bào)文是允許通過接口,還是要過濾掉。permit表示允許報(bào)文通過接口,而deny表示匹配標(biāo)準(zhǔn)IP訪問表源地址的報(bào)文要被丟棄掉。
3.source address----源地址
對于標(biāo)準(zhǔn)的IP訪問表,源地址是主機(jī)或一組主機(jī)的點(diǎn)分十進(jìn)制表示,如:198.78.46.8。
4.host/any----主機(jī)匹配
host和any分別用于指定單個(gè)主機(jī)和所有主機(jī)。host表示一種精確的匹配,其屏蔽碼為0.0.0.0。例如,假定我們希望允許從198.78.46.8來的報(bào)文,則使用標(biāo)準(zhǔn)的訪問控制列表語句如下:
access-list 1 permit 198.78.46.8 0.0.0.0
如果采用關(guān)鍵字host,則也可以用下面的語句來代替:
access-list 1 permit host 198.78.46.8
也就是說,host是0.0.0.O通配符屏蔽碼的簡寫。
與此相對照,any是源地證/目標(biāo)地址0.O.O.O/255.255.255.255的簡寫。假定我們要拒絕從源地址198.78.46.8來的報(bào)文,并且要允許從其他源地址來的報(bào)文,標(biāo)準(zhǔn)的IP訪問表可以使用下面的語句達(dá)到這個(gè)目的:
access-list 1 deny host 198.78.46.8
access-list 1 permit any
注意,這兩條語句的順序;訪問表語句的處理順序是由上到下的。如果我們將兩個(gè)語句順序顛倒,將permit語句放在deny語句的前面,則我們將不能過濾來自主機(jī)地址198.78.46.8的報(bào)文,因?yàn)閜ermit語句將允許所有的報(bào)文通過。所以說訪問表中的語句順序是很重要的,因?yàn)椴缓侠碚Z句順序?qū)?huì)在網(wǎng)絡(luò)中產(chǎn)生安全漏洞,或者使得用戶不能很好地利用公司的網(wǎng)絡(luò)策略。
5.wi1dcardmask------通配符屏蔽碼
Cisco訪問表功能所支持的通配符屏蔽碼與子網(wǎng)屏蔽碼的方式是剛好相反的,也就是說,二進(jìn)制的O表示一個(gè)"匹配"條件,二進(jìn)制的1表示一個(gè)"不關(guān)心"條件。假設(shè)組織機(jī)構(gòu)擁有一個(gè)C類網(wǎng)絡(luò)198.78.46.0,若不使用子網(wǎng),則當(dāng)配置網(wǎng)絡(luò)中的每一個(gè)工作站時(shí),使用于網(wǎng)屏蔽碼255.255.255.O。在這種情況下,1表示一個(gè) "匹配",而0表示一個(gè)"不關(guān)心"的條件。因?yàn)镃isco通配符屏蔽碼與子網(wǎng)屏蔽碼是相反的,所以匹配源網(wǎng)絡(luò)地址198.78.46.0中的所有報(bào)文的通配符屏蔽碼為:0.0.O.255。
6.Log----日志記錄
log關(guān)鍵字只在IOS版本11.3中存在。如果該關(guān)鍵字用于訪問表中,則對那些能夠匹配訪問表中的permit和deny語句的報(bào)文進(jìn)行日志記錄。日志信息包含訪問表號、報(bào)文的允許或拒絕、源IP地址以及在顯示了第一個(gè)匹配以來每5分鐘間隔內(nèi)的報(bào)文數(shù)目。使用log關(guān)鍵字,會(huì)使控制臺日志提供測試和報(bào)警兩種功能。系統(tǒng)管理員可以使用日志來觀察不同活動(dòng)下的報(bào)文匹配情況,從而可以測試不同訪問表的設(shè)計(jì)情況。當(dāng)其用于報(bào)警時(shí),管理員可以察看顯示結(jié)果,以定位那些多次嘗試活動(dòng)被拒絕的訪問表語句。執(zhí)行一個(gè)訪問表語句的多次嘗試活動(dòng)被拒絕,很可能表明有潛在的黑客攻擊活動(dòng)。
擴(kuò)展的IP訪問控制列表
顧名思義,擴(kuò)展的IP訪問表用于擴(kuò)展報(bào)文過濾能力。一個(gè)擴(kuò)展的IP訪問表允許用戶根據(jù)如下內(nèi)容過濾報(bào)文:源和目的地址、協(xié)議、源和目的端口以及在特定報(bào)文字段中允許進(jìn)行特殊位比較等等。一個(gè)擴(kuò)展的IP訪問表的一般語法格或 下面簡要介紹各個(gè)關(guān)鍵字的功能:
1.list number----表號范圍
擴(kuò)展IP訪問表的表號標(biāo)識從l00到199。
2.protocol-----協(xié)議
協(xié)議項(xiàng)定義了需要被過濾的協(xié)議,例如IP、TCP、UDP、1CMP等等。協(xié)議選項(xiàng)是很重要的,因?yàn)樵赥CP/IP協(xié)議棧中的各種協(xié)議之間有很密切的關(guān)系,如果管理員希望根據(jù)特殊協(xié)議進(jìn)行報(bào)文過濾,就要指定該協(xié)議。
另外,管理員應(yīng)該注意將相對重要的過濾項(xiàng)放在靠前的位置。如果管理員設(shè)置的命令中,允許IP地址的語句放在拒絕TCP地址的語句前面,則后一個(gè)語句根本不起作用。但是如果將這兩條語句換一下位置,則在允許該地址上的其他協(xié)議的同時(shí),拒絕了TCP協(xié)議。
3.源端口號和目的端口號
源端口號可以用幾種不同的方法來指定。它可以顯式地指定,使用一個(gè)數(shù)字或者使用一個(gè)可識別的助記符。例如,我們可以使用80或者h(yuǎn)ttp來指定Web的超文本傳輸協(xié)議。對于TCP和UDP,讀者可以使用操作符 ""(大于)"="(等于)以及""(不等于)來進(jìn)行設(shè)置。
目的端口號的指定方法與源端口號的指定方法相同。讀者可以使用數(shù)字、助記符或者使用操作符與數(shù)字或助記符相結(jié)合的格式來指定一個(gè)端口范圍。
下面的實(shí)例說明了擴(kuò)展IP訪問表中部分關(guān)鍵字使用方法:
access-list 101 permit tcp any host 198.78.46.8 eq smtp
access-list 101 permit tcp any host 198.78.46.3 eq www
第一個(gè)語句允許來自任何主機(jī)的TCP報(bào)文到達(dá)特定主機(jī)198.78.46.8的smtp服務(wù)端口(25);第二個(gè)語句允許任何來自任何主機(jī)的TCP報(bào)文到達(dá)指定的主機(jī)198.78.46.3的www或http服務(wù)端口(80)。
4.選項(xiàng)
擴(kuò)展的IP訪問表支持很多選項(xiàng)。其中一個(gè)常用的選項(xiàng)有l(wèi)og,它已在前面討論標(biāo)準(zhǔn)訪問表時(shí)介紹過了。另一個(gè)常用的選項(xiàng)是fistahlishfid,該選項(xiàng)只用于TCP協(xié)議并且只在TCP通信流的一個(gè)方向上來響應(yīng)由另一端發(fā)起的會(huì)話。為了實(shí)現(xiàn)該功能,使用estab1ished選項(xiàng)的訪問表語句檢查每個(gè) TCP報(bào)文,以確定報(bào)文的ACK或RST位是否已設(shè)置。
例如,考慮如下擴(kuò)展的IP訪問表語句:
access-list 101 permit tcp any host 198.78.46.8 established
該語句的作用是:只要報(bào)文的ACK和RST位被設(shè)置,該訪問表語句就允許來自任何源地址的TCP報(bào)文流到指定的主機(jī)198.78.46.8。這意味著主機(jī)198.78.46.8此前必須發(fā)起TCP會(huì)話。
5.其他關(guān)鍵字
deny/permit、源地址和通配符屏蔽碼、目的地址和通配符屏蔽碼以及host/any的使用均與標(biāo)準(zhǔn)IP訪問表中的相同。
管理和使用訪問表
在一個(gè)接口上配置訪問表需要三個(gè)步驟:
(1)定義訪問表;
(2)指定訪問表所應(yīng)用的接口;
(3)定義訪問表作用于接口上的方向。
我們已經(jīng)討論了如何定義標(biāo)準(zhǔn)的和擴(kuò)展的IP訪問表,下面將討論如何指定訪問表所用的接口以及接口應(yīng)用的方向。
一般地,采用interface命令指定一個(gè)接口。例如,為了將訪問表應(yīng)用于串口0,應(yīng)使用如下命令指定此端口:
interface serial0
類似地,為將訪問表應(yīng)用于路由器的以太網(wǎng)端口上時(shí),假定端口為Ethernet0,則應(yīng)使用如下命令來指定此端口:
interface ethernet0
在上述三個(gè)步驟中的第三步是定義訪問表所應(yīng)用的接口方向,通常使用ip access-group命令來指定。其中,列表號標(biāo)識訪問表,而關(guān)鍵字in或out則指明訪問表所使用的方向。方向用于指出是在報(bào)文進(jìn)入或離開路由器接口時(shí)對其進(jìn)行過濾。如下的實(shí)例將這三個(gè)步驟綜合在一起:
intface serial0
ip access-group 107 in
access-list 107 remark allow traffic to tom's pc
access-list 107 ip any host 198.78.46.8
access-list 107 remark allow only web traffic to webserver
access-list 107 tcp any host 198.78.46.12 eq 80
access-list 107 remark block everything else
access-list 107 deny any any
在本例中,先使用interface命令指定串行端口0,并使用ipaccess-group命令來將訪問表l07中的語句應(yīng)用于串行接口的向內(nèi)方向上。最后,輸入6個(gè)訪問表語句,其中三條訪問表語句使用關(guān)鍵字remark,以提供關(guān)于列表中后繼語句的注解說明。注意訪問表中的最后一條語句,它表示了每個(gè)訪問表相關(guān)的隱含denyall設(shè)置,并且如果不顯式地列出是不會(huì)看到該語句的。如果讀者希望從路由器的控制臺端口相連的終端上直接輸入這些命令和語句,則應(yīng)該先使用EXEC特權(quán)命令。這個(gè)終端會(huì)話過程的實(shí)例如下圖所示:
此外,當(dāng)讀者配置訪問表后使用IOS的show命令查看列表時(shí),有時(shí)很容易被顯示出來的內(nèi)容所迷惑,這是由于當(dāng)通配符屏蔽碼位被置為1(無關(guān))時(shí),1OS將該訪問表表項(xiàng)的IP地址部分的該位設(shè)置為二進(jìn)制0。
例如,輸入如下的配置命令,用于創(chuàng)建一個(gè)擴(kuò)展的IP訪問表,并將其列表內(nèi)容顯示出來:
在本例中,由于C類地址的通配符屏蔽碼的主機(jī)子段被設(shè)置為全1(255),所以網(wǎng)絡(luò)198.78.46.0上的主機(jī)地址198.78.46.20被自動(dòng)轉(zhuǎn)換為網(wǎng)段地址。
相關(guān)文章
拋棄XP 細(xì)數(shù)升級到WinVista五大理由正文分析錯(cuò)誤
拋棄XP 細(xì)數(shù)升級到WinVista五大理由正文分析錯(cuò)誤...2007-09-09如何提高玩游戲時(shí)的系統(tǒng)穩(wěn)定性
如何提高玩游戲時(shí)的系統(tǒng)穩(wěn)定性...2007-09-09