謝大吉
四川文理學(xué)院網(wǎng)絡(luò)中心,四川 達(dá)州 635000
網(wǎng)絡(luò)管理中訪問(wèn)控制列表應(yīng)用探討
謝大吉
四川文理學(xué)院網(wǎng)絡(luò)中心,四川 達(dá)州 635000
訪問(wèn)控制列表ACL(Access Control List)是網(wǎng)絡(luò)管理中不可或缺的一項(xiàng)技術(shù)。本文對(duì)訪問(wèn)控制列表的概念、分類(lèi)、作用作了深入細(xì)致的闡述,用實(shí)例探討了訪問(wèn)控制列表在網(wǎng)絡(luò)管理中的應(yīng)用。
網(wǎng)絡(luò)是二十世紀(jì)末人類(lèi)最偉大的發(fā)明,隨著網(wǎng)絡(luò)的迅猛發(fā)展和廣泛應(yīng)用,人們對(duì)網(wǎng)絡(luò)的依賴(lài)性越來(lái)越高,合法有序、安全暢通使用網(wǎng)絡(luò)資源是大家共同的愿望。訪問(wèn)控制是網(wǎng)絡(luò)安全防范和維護(hù)的主要策略。對(duì)出入邊界的數(shù)據(jù)包或網(wǎng)絡(luò)內(nèi)部的數(shù)據(jù)包進(jìn)行精確識(shí)別和控制,防止非法訪問(wèn)及各種攻擊,成為日常網(wǎng)絡(luò)管理的重要任務(wù)。ACL是Cisco IOS所提供的一種訪問(wèn)控制技術(shù),目前廣泛應(yīng)用于路由器、防火墻和三層交換機(jī)上,部分二層交換機(jī)也支持ACL[1]。華為、H3C等眾多網(wǎng)絡(luò)設(shè)備生產(chǎn)商都支持ACL,配置上有一定區(qū)別。本文無(wú)特別說(shuō)明均以H3C公司為例進(jìn)行探討。
目前,ACL已成為網(wǎng)管使用最多的網(wǎng)絡(luò)技術(shù)之一,有效地維護(hù)了網(wǎng)絡(luò)安全。
1.1 訪問(wèn)控制置列表的概念及作用
ACL(Access Control List,訪問(wèn)控制列表)主要用來(lái)實(shí)現(xiàn)流識(shí)別功能訪問(wèn),即匹配預(yù)先設(shè)定的規(guī)則來(lái)允許或拒絕數(shù)據(jù)包,從而實(shí)現(xiàn)對(duì)數(shù)據(jù)流的控制[2]。它是應(yīng)用在網(wǎng)絡(luò)設(shè)備接口的一組由permit或deny語(yǔ)句組成的條件列表,與報(bào)文的源地址、目的地址、協(xié)議、端口號(hào)等標(biāo)示條件進(jìn)行匹配,判斷哪些報(bào)文允許通過(guò)、哪能報(bào)文應(yīng)予拒絕,通過(guò)過(guò)濾這種不安全的服務(wù),可以提高網(wǎng)絡(luò)安全和減少子網(wǎng)中主機(jī)的風(fēng)險(xiǎn),限制網(wǎng)絡(luò)流量,提高網(wǎng)絡(luò)性能,控制通信流量,是網(wǎng)絡(luò)安全保障的第一道關(guān)卡。ACL概念并不復(fù)雜,但初學(xué)者在使用和配置ACL時(shí)容易出現(xiàn)錯(cuò)誤。
1.2 訪問(wèn)控制置列表的分類(lèi)
ACL可以從不同的角度進(jìn)行分類(lèi),根據(jù)應(yīng)用目的,可將ACL分為下面幾種[3]:
(1)基本ACL:只根據(jù)三層源IP地址制定規(guī)則,對(duì)數(shù)據(jù)包進(jìn)行相應(yīng)的分析處理。基本 ACL的序號(hào)取值范圍為2000~2999。語(yǔ)法規(guī)則如下:
rule [ rule-id ] { permit | deny} [ source { source-addr wildcard|any } | fragment | time-range timename ]
如:配置ACL 2000,禁止源地址為1.1.1.1 的報(bào)文通過(guò):
[H3C] acl number 2000
[H3C-acl-basic-2000] rule deny source 1.1.1.1 0
(2)高級(jí)ACL:根據(jù)數(shù)據(jù)包的源IP地址信息、目的IP地址信息、IP承載的協(xié)議類(lèi)型、協(xié)議特性等三、四層信息制定規(guī)則,利用高級(jí) ACL 定義比基本ACL更準(zhǔn)確、更豐富、更靈活的規(guī)則,如TCP或UDP的源端口、目的端口,TCP標(biāo)記,ICMP協(xié)議的類(lèi)型、code等內(nèi)容定義規(guī)則。高級(jí)ACL序號(hào)取值范圍3000~3999(ACL 3998與3999是系統(tǒng)為集群管理預(yù)留的編號(hào),用戶(hù)無(wú)法配置)。
ACL 規(guī)則信息包括:
Protocol:協(xié)議類(lèi)型 IP 承載的協(xié)議類(lèi)型用數(shù)字表示時(shí)取值范圍為1~255用名字表示時(shí),可以選取GRE、ICMP、IGMP、IP、IPinIP、OSPF、TCP、UDP。
source { sour-addr sourwildcard | any } 源地址信息。
destination{ dest-addr destwildcard | any } 目的地址信息。
precedence 報(bào)文優(yōu)先級(jí) IP 優(yōu)先級(jí)取值范圍 0~7。
fragment 分片信息。
time-range 指定 ACL 規(guī)則生效的時(shí)間段。
當(dāng)協(xié)議類(lèi)型選擇為T(mén)CP或者UDP時(shí),用戶(hù)還可以定義UDP/TCP 報(bào)文的源端口信息、目的端口信息、TCP連接建立標(biāo)識(shí)。
如配置一個(gè)ACL 3000,禁止192.168.200.0 網(wǎng)段的主機(jī)訪問(wèn)192.168.100.0網(wǎng)段的服務(wù)器網(wǎng)頁(yè):
[H3C] acl number 3000
[H3C-acl-adv-3000] rule deny tcp source 192.168.200.0 0.0.0.255 destination
192.16 8.100.0 0.0.0.255 destination-port eq 80
(3)二層ACL:根據(jù)源MAC地址、目的MAC 地址、VLAN 優(yōu)先級(jí)、二層協(xié)議類(lèi)型等二層信息制定規(guī)則,對(duì)數(shù)據(jù)進(jìn)行相應(yīng)處理。二層ACL 的序號(hào)取值范圍為4000~4999。
如配置ACL 4000,禁止從MAC地址000d-88f5-97ed 發(fā)送到MAC地址011-4301-991e 且802.1p 優(yōu)先級(jí)為3 的報(bào)文通過(guò):
[H3C] acl number 4000
[H3C-acl-link-4000] rule deny cos 3 source 000d-88f5-97ed ffffffff-ffff dest
0011-4301-991e ffff-ffff-ffff
(4)用戶(hù)自定義ACL:以數(shù)據(jù)包的頭部為基準(zhǔn),指定從第幾個(gè)字節(jié)開(kāi)始進(jìn)行“與”操作,將從報(bào)文提取出來(lái)的字符串和用戶(hù)定義的字符串進(jìn)行比較,找到匹配的報(bào)文,然后進(jìn)行相應(yīng)的處理。用戶(hù)自定義 ACL 的序號(hào)取值范圍為5000~5999。
如配置ACL 5001,禁止所有的TCP 報(bào)文通過(guò):
[H3C] acl number 5001
[H3C-acl-user-5001] rule 25 deny 06 ff 27
1.3 訪問(wèn)控制置列表的匹配順序
ACL一般包含多個(gè)規(guī)則,每個(gè)規(guī)則都指定不同的報(bào)文范圍。因而,匹配報(bào)文時(shí)就會(huì)出現(xiàn)匹配順序的問(wèn)題。
ACL支持兩種匹配順序:(1)配置順序:根據(jù)配置順序匹配ACL規(guī)則;(2)自動(dòng)排序:根據(jù)“深度優(yōu)先”規(guī)則匹配ACL規(guī)則,包括IP ACL(基本和高級(jí)ACL)深度優(yōu)先順序和二層ACL 深度優(yōu)先順序。
IP ACL深度優(yōu)先順序的判斷原則如下:
(1) 先比較ACL規(guī)則的協(xié)議范圍。IP協(xié)議的范圍為1~255,承載在IP上的其他協(xié)議范圍就是自己的協(xié)議號(hào);協(xié)議范圍小的優(yōu)先;
(2) 再比較源IP地址范圍。源IP地址范圍小(掩碼長(zhǎng))的優(yōu)先;
(3) 然后比較目的IP地址范圍。目的IP地址范圍小(掩碼長(zhǎng))的優(yōu)先;
(4) 最后比較四層端口號(hào)(TCP/UDP端口號(hào))范圍。四層端口號(hào)范圍小的優(yōu)先;
二層ACL深度優(yōu)先順序
二層ACL的深度優(yōu)先以源MAC地址掩碼長(zhǎng)度和目的MAC地址掩碼長(zhǎng)度排序,掩碼越長(zhǎng)的規(guī)則匹配位置越靠前,當(dāng)掩碼長(zhǎng)度都相等時(shí),則先配置的規(guī)則匹配位置靠前。例如,源MAC地址掩碼為FFFF-FFFF-0000的規(guī)則比源MAC地址掩碼為FFFF-0000-0000的規(guī)則匹配位置靠前。
1.4 基于時(shí)間段的訪問(wèn)控制列表
基于時(shí)間段的ACL可以區(qū)分時(shí)間段對(duì)報(bào)文進(jìn)行ACL控制。ACL中的每條規(guī)則都可選擇一個(gè)時(shí)間段。如果規(guī)則引用的時(shí)間段未配置,則系統(tǒng)給出提示信息,并允許這樣的規(guī)則創(chuàng)建成功。但是規(guī)則不能立即生效,直到用戶(hù)配置了引用的時(shí)間段,并且系統(tǒng)時(shí)間在指定時(shí)間段范圍內(nèi)才能生效。如果用戶(hù)手工刪除ACL規(guī)則引用的時(shí)間段,則在ACL規(guī)則定時(shí)器刷新后,該規(guī)則將失效。例如:
如配置時(shí)間段,取值為周一到周五每天8:00 到18:00:
[H3C] time-range test 8:00 to 18:00 working-day 1.5 訪問(wèn)控制列表配置步驟(1)定義ACL;
(2)進(jìn)入以太網(wǎng)端口視圖interface interface-type interfacenumber
(3)進(jìn)入QoS 視圖qos(4)在端口上應(yīng)用 ACL packet-filter { inbound |outbound} acl-rule
2.1 關(guān)閉敏感端口,阻斷病毒和黑客攻擊
針對(duì)微軟操作系統(tǒng)的漏洞,一些病毒程序和漏洞掃描軟件通過(guò)UDP端口135、137、138、1434和TCP端口135、137、139、445、4444、5554、9995、9996等進(jìn)行病毒傳播和攻擊[4]、破壞系統(tǒng),植入木馬。在出口設(shè)備路由器和防火墻上利用ACL關(guān)閉這些端口,保護(hù)網(wǎng)絡(luò)。以Cisco防火墻為例關(guān)閉UDP 135端口:
access-list 110 deny udp any any eq 135
2.2 關(guān)閉不常用端口,阻斷大部分P2P流量和網(wǎng)絡(luò)游戲
P2P作為一種網(wǎng)絡(luò)新技術(shù),依賴(lài)網(wǎng)絡(luò)中參與者和帶寬,而不是把依賴(lài)都聚集在較少的幾臺(tái)服務(wù)器上。每臺(tái)機(jī)器在下載的同時(shí),還要繼續(xù)做主機(jī)上傳,這種下載方式,人越多速度越快,目前很多網(wǎng)絡(luò)視頻、聊天軟件、在線游戲等大多采用P2P技術(shù),在高校的校園中50~90%的總流量都來(lái)自P2P,大量蠶食帶寬,導(dǎo)致校園內(nèi)對(duì)實(shí)時(shí)性要求較高的如多媒體教學(xué),電視電話會(huì)議,教師教學(xué)科研上網(wǎng).校園辦公OA等無(wú)法正常的開(kāi)展,影響了正常的教學(xué)秩序。這些p2p軟件或游戲有些是用一些固定的端口,如帝國(guó)時(shí)代是用端口范圍:2300-2400,47624-42624,傳奇是用UDP端口:7000, 7050, 7100, 7200-7210,有些則不固定,因而我們可把除正常業(yè)務(wù)需要使用端口如80,21,22,23,25,443,109,110等端口外,在防火墻上利用訪問(wèn)控制列表將其余不常用端口關(guān)閉,從而使大部分p2p軟件和游戲無(wú)法正常使用,保證正常網(wǎng)絡(luò)業(yè)務(wù)開(kāi)展。我院在關(guān)閉端口前很多用戶(hù)在網(wǎng)上看視頻,打在線游戲,導(dǎo)致網(wǎng)絡(luò)帶寬耗盡,有時(shí)聯(lián)網(wǎng)頁(yè)也很難打開(kāi),關(guān)閉不常用端口后,網(wǎng)絡(luò)訪問(wèn)感覺(jué)暢通多了。
2.3 網(wǎng)絡(luò)設(shè)備遠(yuǎn)程訪問(wèn)控制
作為網(wǎng)管人員需要隨時(shí)對(duì)遍布校園各個(gè)角落的路由器、防火墻、交換機(jī)進(jìn)行遠(yuǎn)程訪問(wèn),修改配置或制訂新的策略,除網(wǎng)絡(luò)管理人員外,其他人員不允許對(duì)設(shè)備進(jìn)行遠(yuǎn)程訪問(wèn)和探測(cè),利用訪問(wèn)控制列表可以控制登錄范圍。假設(shè)設(shè)備所處網(wǎng)段為192.168.100.0,管理網(wǎng)段為192.168.200.0,在核心交換機(jī)上如下制訂策略,只允許管理網(wǎng)段對(duì)設(shè)備訪問(wèn)。
[h3c-7500switch] acl number 3666
[h3c-7500switch] rule 0 permit ip source 192.168.200.0 0.0.0.255 destination 192.168.100.0 0.0.0
[h3c-7500switch] rule 0 deny ip source any any destination 192.168.100.0 0.0.0.255
然后將此ACL下發(fā)到相應(yīng)端口,當(dāng)然我們也可在此配置放在匯聚層交換機(jī)上,從而減輕中心交換機(jī)壓力。
2.4 除服務(wù)器外的單向訪問(wèn)控制
校園網(wǎng)絡(luò)時(shí)常受到網(wǎng)絡(luò)黑客的攻擊,特別一般普通的網(wǎng)絡(luò)用戶(hù),他們的電腦由于沒(méi)有安裝或沒(méi)有及時(shí)升級(jí)殺毒軟件、沒(méi)有打補(bǔ)丁修補(bǔ)系統(tǒng)或軟件漏洞,因而主機(jī)更易受到攻擊??梢圆扇∫欢ǖ拇胧?,除需要對(duì)外公開(kāi)的服務(wù)器外,阻止外網(wǎng)的用戶(hù)對(duì)內(nèi)網(wǎng)用戶(hù)發(fā)起主動(dòng)連接,也即校園網(wǎng)內(nèi)的用戶(hù)可以對(duì)校園網(wǎng)外的用戶(hù)發(fā)起主動(dòng)連接.感覺(jué)不到有任何區(qū)別,而網(wǎng)內(nèi)的客戶(hù)主機(jī)不能提供對(duì)外網(wǎng)用戶(hù)的被動(dòng)連接,實(shí)現(xiàn)原理是檢查T(mén)CP包中SYN位,只許可主機(jī)A對(duì)主機(jī)B發(fā)起TCP主動(dòng)連接.不允許主機(jī)B發(fā)起到主機(jī)A的主動(dòng)連接,從而達(dá)到限流和保護(hù)的雙重目的。這種策略一般在路由器上實(shí)施,如下所示:
acl number 3888
rule 0 permit tcp destination 211.83.79.192 0.0.0.63
rule 1 permit tcp destination 211.83.73.128 0.0.0.127
rule 2 permit tcp destination 211.83.79.96 0.0.0.31
rule 3 deny tcp established destination 211.83.72.0 0.0.7.255
規(guī)則0,1,2是允許任何地址對(duì)服務(wù)器網(wǎng)段的訪問(wèn),規(guī)則3阻止外網(wǎng)的TCP主動(dòng)連接。
2.5 訪問(wèn)內(nèi)容與時(shí)間控制
基于時(shí)間的訪問(wèn)控制列表是在訪問(wèn)列表的基礎(chǔ)上增加特定的時(shí)間范圍來(lái)更靈活地配置管理網(wǎng)絡(luò)。首先定義時(shí)間段或時(shí)間范圍,然后在訪問(wèn)控制列表的基礎(chǔ)上應(yīng)用。如上面我們關(guān)閉了不常用的端口,但在深夜網(wǎng)絡(luò)空閑時(shí)可開(kāi)啟這些端口從而滿足部分人打在線游戲,看在線電影,實(shí)現(xiàn)人性化的網(wǎng)絡(luò)管理,這就需要使用到基于時(shí)間的訪問(wèn)控制列表。
如圖1要求正確配置ACL,限制研發(fā)部門(mén)在工作日8:00 至18:00 訪問(wèn)工資服務(wù)器。
(1) 定義時(shí)間段
[H3C] time-range test 8:00 to 18:00 working-day
(2) 定義到工資服務(wù)器的ACL
[H3C] acl number 3000
[H3C-acl-adv-3000] rule 1 deny ip destination 192.168.1.2 0 timerange test
(3) 在端口上應(yīng)用ACL
[H3C] interface Ethernet2/0/1
[H3C-Ethernet2/0/1] qos
[H3C-qoss-Ethernet2/0/1]packet-filter inbound ip-group 3000

圖1
訪問(wèn)控制列表是網(wǎng)絡(luò)管理常用的一項(xiàng)技術(shù),其主要任務(wù)是對(duì)進(jìn)出路由器、防火墻、交換機(jī)的數(shù)據(jù)包進(jìn)行過(guò)濾,防止網(wǎng)絡(luò)資源濫用和被非法使用訪問(wèn),保證網(wǎng)絡(luò)的暢通有序。作為網(wǎng)管人員在日常管理中,深入理解、靈和應(yīng)用ACL將起到事半功倍的效果。當(dāng)然,訪問(wèn)控制列表也是一把雙刃劍,由于交換路由設(shè)備的主要功能是數(shù)據(jù)的交換和路由,過(guò)多地使用ACL將消耗系統(tǒng)的大量資源,在實(shí)現(xiàn)對(duì)數(shù)據(jù)報(bào)文更精確區(qū)分的同時(shí),無(wú)形中加重了設(shè)備的負(fù)擔(dān),進(jìn)而影響交換路由設(shè)備的數(shù)據(jù)交換和路由性能[5]。一般除全局性的ACL布置在防火墻、路由器和核心交換機(jī)外,其余的ACL盡量布置在匯聚層交換機(jī)或接入交換機(jī)上。
[1]范萍,李罕偉.基于ACL的網(wǎng)絡(luò)層訪問(wèn)權(quán)限控制技術(shù)研究[J].華東交通大學(xué)學(xué)報(bào).21304,21(4):89—92
[2]沈健,周興社,張凡,於志勇.基于網(wǎng)絡(luò)處理器的防火墻優(yōu)化設(shè)計(jì)與研究[J]. 計(jì)算機(jī)工程.2007,33(10),172-174
[3]H3C訪問(wèn)控制列表詳解[EB/OL].http://www.h3c.com.cn/Service/Document_Center/
[4]劉軍,王彩萍.ACL在IP網(wǎng)絡(luò)中的應(yīng)用[J].計(jì)算機(jī)與數(shù)字工程.2009,37(1):178— 181
[5]曹世華,沈惠惠.訪問(wèn)控制列表在校園網(wǎng)安全管理的應(yīng)用[J].科技經(jīng)濟(jì)市場(chǎng).2007,11:117-117
Application of Access Control List In Network Management
Xie Daji
Network Management Center, Sichuan University of Arts and Science,Dazhou Sichuan 635000
ACL (Access Control List) is an integral part of network management technology. It elaborates in depth the concept, classification, and function of ACL, with examples of the ACL in the network management application.
10.3969/j.issn.1001-8972.2011.02.044
謝大吉(1967—),男,漢族,四川巴中人,工程師,軟件工程碩士,主要從事計(jì)算機(jī)網(wǎng)絡(luò)管理及安全研究。
訪問(wèn)控制列表;網(wǎng)絡(luò)管理;p2p;路由器;防火墻;交換機(jī)
Access Control List;Network Management;p2p;Router;Firewall;Switch