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