網絡運維|訪問控制列表ACL
2020-04-28 16:42 作者:艾銻無限 瀏覽量:
網絡運維|訪問控制列表ACL
大家好,我是一枚從事IT外包的網絡運維工程師,今天和大家聊點安全方面的技術,這次咱們就聊一聊訪問控制列表ACL。
ACL簡介
介紹ACL的定義和作用。
定義
訪問控制列表ACL(Access Control List)是由一條或多條規則組成的集合。所謂規則,是指描述報文匹配條件的判斷語句,這些條件可以是報文的源地址、目的地址、端口號等。
ACL本質上是一種報文過濾器,規則是過濾器的濾芯。設備基于這些規則進行報文匹配,可以過濾出特定的報文,并根據應用ACL的業務模塊的處理策略來允許或阻止該報文通過。
目的
隨著網絡的飛速發展,網絡安全和網絡服務質量QoS(Quality of Service)問題日益突出。
-
企業重要服務器資源被隨意訪問,企業機密信息容易泄露,造成安全隱患。
-
Internet病毒肆意侵略企業內網,內網環境的安全性堪憂。
-
網絡帶寬被各類業務隨意擠占,服務質量要求最高的語音、視頻業務的帶寬得不到保障,造成用戶體驗差。
以上種種問題,都對正常的網絡通信造成了很大的影響。因此,提高網絡安全性服務質量迫在眉睫。ACL就在這種情況下應運而生了。
通過ACL可以實現對網絡中報文流的精確識別和控制,達到控制網絡訪問行為、防止網絡攻擊和提高網絡帶寬利用率的目的,從而切實保障網絡環境的安全性和網絡服務質量的可靠性。
圖1是一個典型的ACL應用組網場景。
圖1 ACL典型應用場景
-
某企業為保證財務數據安全,禁止研發部門訪問財務服務器,但總裁辦公室不受限制。實現方式:
在Interface 1的入方向上部署ACL,禁止研發部門訪問財務服務器的報文通過。Interface 2上無需部署ACL,總裁辦公室訪問財務服務器的報文默認允許通過。
-
保護企業內網環境安全,防止Internet病毒入侵。實現方式:
在Interface 3的入方向上部署ACL,將病毒經常使用的端口予以封堵。
ACL的基本原理
ACL由一系列規則組成,通過將報文與ACL規則進行匹配,設備可以過濾出特定的報文。
ACL的組成
一條ACL的結構組成,如圖2所示。
圖2 ACL的結構組成
-
ACL編號:用于標識ACL,表明該ACL是數字型ACL。
根據ACL規則功能的不同,ACL被劃分為基本ACL、高級ACL、二層ACL和用戶ACL這幾種類型,每類ACL編號的取值范圍不同。
除了可以通過ACL編號標識ACL,設備還支持通過名稱來標識ACL,就像用域名代替IP地址一樣,更加方便記憶。這種ACL,稱為命名型ACL。
命名型ACL實際上是“名字+數字”的形式,可以在定義命名型ACL時同時指定ACL編號。如果不指定編號,則由系統自動分配。
-
規則:即描述報文匹配條件的判斷語句。
-
規則編號:用于標識ACL規則。可以自行配置規則編號,也可以由系統自動分配。
ACL規則的編號范圍是0~4294967294,所有規則均按照規則編號從小到大進行排序。所以,如圖2的rule 5排在首位,而規則編號最大的rule 4294967294排在末位。系統按照規則編號從小到大的順序,將規則依次與報文匹配,一旦匹配上一條規則即停止匹配。
-
動作:包括permit/deny兩種動作,表示允許/拒絕。
-
匹配項:ACL定義了極其豐富的匹配項。除了圖2中的源地址和生效時間段,ACL還支持很多其他規則匹配項。例如,二層以太網幀頭信息(如源MAC、目的MAC、以太幀協議類型)、三層報文信息(如目的地址、協議類型)以及四層報文信息(如TCP/UDP端口號)等。
ACL的匹配機制
設備將報文與ACL規則進行匹配時,遵循“一旦命中即停止匹配”的機制,如圖3所示。
圖3 ACL的匹配機制
首先系統會查找設備上是否配置了ACL。
-
如果ACL不存在,則返回ACL匹配結果為:不匹配。
-
如果ACL存在,則查找設備是否配置了ACL規則。
-
如果規則不存在,則返回ACL匹配結果為:不匹配。
-
如果規則存在,則系統會從ACL中編號最小的規則開始查找。
-
如果匹配上了permit規則,則停止查找規則,并返回ACL匹配結果為:匹配(允許)。
-
如果匹配上了deny規則,則停止查找規則,并返回ACL匹配結果為:匹配(拒絕)。
-
如果未匹配上規則,則繼續查找下一條規則,以此循環。如果一直查到最后一條規則,報文仍未匹配上,則返回ACL匹配結果為:不匹配。
從整個ACL匹配流程可以看出,報文與ACL規則匹配后,會產生兩種匹配結果:“匹配”和“不匹配”。
-
匹配(命中規則):指存在ACL,且在ACL中查找到了符合匹配條件的規則。
不論匹配的動作是“permit”還是“deny”,都稱為“匹配”,而不是只是匹配上permit規則才算“匹配”。
-
不匹配(未命中規則):指不存在ACL,或ACL中無規則,再或者在ACL中遍歷了所有規則都沒有找到符合匹配條件的規則。
以上三種情況,都叫做“不匹配”。
以上文章由北京艾銻無限科技發展有限公司整理