思科交換機(jī)圖文設(shè)置擴(kuò)展ACL的配置與應(yīng)用技巧
無論是在思科路由器還是思科交換機(jī)等網(wǎng)絡(luò)設(shè)備上,標(biāo)準(zhǔn)ACL訪問控制列表始終無法同時匹配通信源地址與目標(biāo)地址的特性,也不無法滿足現(xiàn)今網(wǎng)絡(luò)世界“粒度化”控制的要求,比如:允許訪問某一服務(wù)器的某項服務(wù)功能,但是不允許Ping通該服務(wù)器。那么,就需要使用擴(kuò)展的ACL來替代標(biāo)準(zhǔn)的ACL的應(yīng)用,在實際的應(yīng)用控制中,擴(kuò)展的ACL較標(biāo)準(zhǔn)ACL而言,似乎更受管理員的喜愛。
演示目標(biāo):配置擴(kuò)展ACL為網(wǎng)絡(luò)應(yīng)用提供更“粒度化”的控制。
演示環(huán)境:使用演示標(biāo)準(zhǔn)ACL的配置部分的如下圖ACL的演示環(huán)境所示。
演示背景:要求主機(jī)A(192.168.1.2)可以訪問服務(wù)器A的WEB服務(wù);但是不允許主機(jī)Aping通服務(wù)器A所在的子網(wǎng);允許主機(jī)Aping通服務(wù)器B和服務(wù)器C所在的子網(wǎng)。請使用擴(kuò)展ACL完成上述的控制要求,并思考應(yīng)用ACL的位置。
演示步驟:
第一步:保持上一個實驗的所有基礎(chǔ)配置,但是請刪除原本的所有標(biāo)準(zhǔn)ACL的配置,然后根據(jù)演示背景需求,完成如下擴(kuò)展ACL的配置,這一配置建議在路由器R1上完成,因為擴(kuò)展的ACL可以同時匹配通信源地址與目標(biāo)地址,可以將其應(yīng)到距離通信源較近的位置。
R1(config)#access-list101permittcp192.168.1.00.0.0.255host192.168.5.2eqwww
*定義擴(kuò)展ACL列表101(基于IP的擴(kuò)展ACL編號的取值范圍是100-199);permittcp192.168.1.00.0.0.255host192.168.5.2eqwww指示允許源子網(wǎng)192.168.1.0對目標(biāo)地址192.168.5.2的TCP端口80進(jìn)行訪問,注意,語句中的第一個IP子網(wǎng)和反碼指示通信的源子網(wǎng)與對應(yīng)的反碼;第二個IP地址192.168.5.2被host申明為是一臺具體的主機(jī)。
R1(config)#access-list101denyicmp192.168.1.00.0.0.255host192.168.5.2
*定義擴(kuò)展ACL列表101的第二條語句拒絕源子網(wǎng)192.168.1.0通過ICMP協(xié)議訪問目標(biāo)主機(jī)192.168.5.2。
R1(config)#access-list101permiticmp192.168.1.00.0.0.255host192.168.4.2
*定義擴(kuò)展ACL列表101的第三條語句允許源子網(wǎng)192.168.1.0通過ICMP協(xié)議訪問目標(biāo)主機(jī)192.168.4.2。
R1(config)#access-list101permiticmp192.168.1.00.0.0.255host192.168.3.2
*定義擴(kuò)展ACL列表101的第四條語句允許源子網(wǎng)192.168.1.0通過ICMP協(xié)議訪問目標(biāo)主機(jī)192.168.3.2。
R1(config)#interfacee1/0
R1(config-if)#ipaccess-group101in
R1(config-if)#exit
建議:將ACL101應(yīng)用到路由器R1的E1/0接口,也就是距離源子網(wǎng)最近的位置,這樣做可以讓ACL的利用率更高,流量更合理,因為擴(kuò)展ACL能同時匹配源地址與目標(biāo)地址,所以從理論上講,只要能達(dá)到控制標(biāo)準(zhǔn),在流量經(jīng)過的任何設(shè)備上都可以做應(yīng)用,但是建議在距離源子網(wǎng)最近的位置應(yīng)用它,因為沒有必要將最終被過濾流量轉(zhuǎn)發(fā)到目標(biāo)或者中途才丟棄,這對于寶貴的帶寬利用率不科學(xué)。
第二步:當(dāng)完成上述配置后,在主機(jī)A(192.168.1.2)上去訪問服務(wù)器A的WEB服務(wù),然后去Ping服務(wù)器A、B、C,如果配置無誤,應(yīng)得到如下圖所示的狀態(tài),這與背景說明中的控制要求一致。
第三步:為了查看路由器R1上的過濾狀態(tài),可以通過在R1上執(zhí)行showipaccess-lists指令查看ACL的匹配狀態(tài)如下圖10.13所示,可以看出有5個WWW的數(shù)據(jù)包被允許;8個到服務(wù)器A的ICMP的數(shù)據(jù)包被拒絕;分別有4個到服務(wù)器B和C的ICMP數(shù)據(jù)包被允許。
關(guān)于ACL的其它輸寫形式與應(yīng)用注意事項
在前面的幾個小節(jié)中描述了關(guān)于標(biāo)準(zhǔn)與擴(kuò)展ACL的應(yīng)用,并演示了具體的配置過程,在本節(jié)主要對ACL的應(yīng)用事項進(jìn)行一下總結(jié),其中包括ACL的輸寫形式、ACL的應(yīng)用位置、ACL條目的增加與刪除,具體如下:
關(guān)于ACL語句的輸寫形式:
access-list1permithost192.168.100.1等于access-list1permit192.168.100.10.0.0.0的功能,語句中的host是申明配置的地址是一個主機(jī)地址,它等于反碼的全匹配(0.0.0.0),以全匹配形式出現(xiàn)的反碼,表示匹配的IP地址是一個主機(jī)IP地址。
access-list102permittcp0.0.0.0255.255.255.2550.0.0.0255.255.255.255eqwww等于access-list102permittcpanyanyeq80的功能,語句中的源IP地址和目標(biāo)IP地址都是0,指示源和目標(biāo)IP地址可以是任意IP地址;源地址和目標(biāo)地址的反碼都是255,指示不關(guān)心任何位,它就等同于在擴(kuò)展ACL中源和目標(biāo)IP地址都以any關(guān)鍵字出現(xiàn)的情況;eqwww就等于eq80,因為TCP80號端口正是眾所周知的www服務(wù)端口,但是這里提出一個注意事項,如果Web服務(wù)器的端口沒有使用眾所周知的80號端口,出于某種安全原因或者特殊要求,服務(wù)器管理員自定義了Web的服務(wù)端口號,那么,在輸寫ACL時,就只能在eq關(guān)鍵字之后申明具體的端口號,而不是申明www,否則ACL將無法完成匹配。
access-list102permitiphost192.168.1.2host192.168.2.2等于access-list102permitip192.168.1.20.0.0.0192.168.2.20.0.0.0;ACL的語句中的源IP和目標(biāo)IP都是具體的主機(jī)IP地址,所以可以在ACL語句中使有host關(guān)鍵字申明主機(jī)地址,它和反碼的全匹配形式所表示的意義同種。
關(guān)于ACL應(yīng)用位置的設(shè)計:
n標(biāo)準(zhǔn)ACL只關(guān)心源地址,所以必須將其應(yīng)用到距離控制目標(biāo)最近的接口位置。
n擴(kuò)展ACL既關(guān)心源地址,又關(guān)心目標(biāo)地址,建議將其應(yīng)用到距離控制源最近的接口位置,這樣可以優(yōu)化流量,減少主干網(wǎng)上沒有必要的流量開銷。
n在同一接口、同一協(xié)議、同一方向只能應(yīng)用一個訪問控制列表。
n訪問控制列表,只能過濾穿越路由器的流量,對應(yīng)用訪問控制列表的路由器本地產(chǎn)生的流量不生效。
關(guān)于在傳統(tǒng)IOS版本中ACL條目的增加與刪除問題
在傳統(tǒng)的IOS版本中,對ACL條目的增加或者刪除是一件非常痛苦的事情,因為當(dāng)一個ACL的多條語句被配置在路由器之后,如果想要在ACL中增加一條過濾語句,那么這條增加的語句將出現(xiàn)在已存在的所有ACL語句之后,這樣就會出現(xiàn)安全漏洞,為網(wǎng)絡(luò)造成風(fēng)險行為,為了更好的理解這一點,現(xiàn)在要舉一個實例:
用戶首次已經(jīng)完成了一條ACL101的編寫:
ACL101的第一條語句:access-list101denyiphost192.168.1.2host192.168.2.1
ACL101的第二條語句:access-list101permitipanyany
現(xiàn)在用戶希望更改原有的ACL101,希望在上述的兩條語句之間加入如下所示的ACL語句:
access-list101denyiphost192.168.3.1host192.168.4.1
但是當(dāng)你完成加入后,這條被加入的語句將被放到ACL101的最后,如下圖所示,這樣,它的匹配順序也如圖所示,最后加入的語句被放置到ACL列表的最后,而第二條語句是允許任何流量,所以根本不會給第三條語句匹配的機(jī)會,那么第三條語句將永遠(yuǎn)不生效,即便是您可能希望它于permitanyany之前生效,但事實上它不會,這類似于微機(jī)原理里面的堆棧原理,先進(jìn)入。先調(diào)用。
所以在傳統(tǒng)IOS中管理員對ACL的修改變得很頭痛,通常,管理員會把現(xiàn)在的ACL復(fù)制到一個文本文件中進(jìn)行增加或者刪除語句的操作,然后把原本在路由器上配置的ACL通過noaccess-list101全部清除,再將文本文件中修改完成的ACL復(fù)制到路由器上,無法做到逐條修改ACL語句的效果。
使用ACL的增強(qiáng)編輯功能來增加與刪除ACL條目
新的IOS將打破傳統(tǒng)IOS對ACL條目修改的限制,如下圖所示,它為每條ACL語句增加了序列號,比如第一條ACL語句的序列號是10,第二條ACL語句的序列號是20,以10作為輸寫第一條ACL的基數(shù)數(shù)字序列號,然后,輸寫一條新的ACL語句就遞增10,所以此時如果需要在序列號為10和20之間增加一條ACL語句,那么,只需要增加一條屬于10-20之間的序列號,新增的ACL語句就會存在于10和20之間。
比如,現(xiàn)在,在10和20之間增加一條序列號是15的ACL語句,具體配置如下所示,在,在配置語句中的15是指示即將插入的ACL語句的序列號,完成配置后,可以在路由器上使用showipaccess-lists來查看各條ACL的語句如下圖10.16所示,可看出在序列號10和20之間出現(xiàn)了一條序例號是15的ACL語句,這就突破了傳統(tǒng)IOS對ACL編輯的困難,它增強(qiáng)了對ACL的編輯能力。
在兩條ACL語句之間插入一條序列號是15的配置:
R1(config)#ipaccess-listextended101
R1(config-ext-nacl)#15denyiphost192.168.3.1host192.168.4.1
#FormatImgID_5#
IOS的版本如此眾多,在使用時,怎么知道,哪些IOS版本支持ACL的增強(qiáng)編輯功能,哪些IOS版本不支持ACL的增強(qiáng)編輯功能?很簡單,用戶不需要去記IOS的版本號,因為這確實是一件很難記住的事情,可以直接
關(guān)鍵詞:思科交換機(jī)
閱讀本文后您有什么感想? 已有 人給出評價!
- 0
- 0
- 0
- 0
- 0
- 0