IT之道-艾锑知道

您当前位置: 主页 > 资讯动态 > IT知识库 >

网络运维|访问控制列表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典型应用场景 
https://download.huawei.com/mdl/imgDownload?uuid=1af07653629e42ee8aa11c222e1dac44.png
  • 某企业为保证财务数据安全,禁止研发部门访问财务服务器,但总裁办公室不受限制。实现方式:
在Interface 1的入方向上部署ACL,禁止研发部门访问财务服务器的报文通过。Interface 2上无需部署ACL,总裁办公室访问财务服务器的报文默认允许通过。
  • 保护企业内网环境安全,防止Internet病毒入侵。实现方式:
在Interface 3的入方向上部署ACL,将病毒经常使用的端口予以封堵。

ACL的基本原理

ACL由一系列规则组成,通过将报文与ACL规则进行匹配,设备可以过滤出特定的报文。

ACL的组成

一条ACL的结构组成,如图2所示。
图2  ACL的结构组成 
https://download.huawei.com/mdl/imgDownload?uuid=7322cd23c9794288b0add18d9f523393.png
  • 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的匹配机制 
https://download.huawei.com/mdl/imgDownload?uuid=30513b0eff854b95bf9d3638fd394380.png
首先系统会查找设备上是否配置了ACL。
  • 如果ACL不存在,则返回ACL匹配结果为:不匹配。
  • 如果ACL存在,则查找设备是否配置了ACL规则。
    • 如果规则不存在,则返回ACL匹配结果为:不匹配。
    • 如果规则存在,则系统会从ACL中编号最小的规则开始查找。
      • 如果匹配上了permit规则,则停止查找规则,并返回ACL匹配结果为:匹配(允许)。
      • 如果匹配上了deny规则,则停止查找规则,并返回ACL匹配结果为:匹配(拒绝)。
      • 如果未匹配上规则,则继续查找下一条规则,以此循环。如果一直查到最后一条规则,报文仍未匹配上,则返回ACL匹配结果为:不匹配。
从整个ACL匹配流程可以看出,报文与ACL规则匹配后,会产生两种匹配结果:“匹配”和“不匹配”。
  • 匹配(命中规则):指存在ACL,且在ACL中查找到了符合匹配条件的规则。
不论匹配的动作是“permit”还是“deny”,都称为“匹配”,而不是只是匹配上permit规则才算“匹配”。
  • 不匹配(未命中规则):指不存在ACL,或ACL中无规则,再或者在ACL中遍历了所有规则都没有找到符合匹配条件的规则。
以上三种情况,都叫做“不匹配”。
以上文章由北京艾锑无限科技发展有限公司整理


相关文章

IT外包服务
二维码 关闭