前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【干货】5分钟带你了解ACL基本原理和四大分类

【干货】5分钟带你了解ACL基本原理和四大分类

作者头像
网络工程师笔记
发布2021-06-23 00:26:58
1.8K0
发布2021-06-23 00:26:58
举报
文章被收录于专栏:网络工程师笔记

ACL简介

随着网络的飞速发展,网络安全和网络服务质量QoS(Qualityof Service)问题日益突出。

  • 企业重要服务器资源被随意访问,企业机密信息容易泄露,造成安全隐患。
  • Internet病毒肆意侵略企业内网,内网环境的安全性堪忧。
  • 网络带宽被各类业务随意挤占,服务质量要求最高的语音、视频业务的带宽得不到保障,造成用户体验差。

以上种种问题,都对正常的网络通信造成了很大的影响。因此,提高网络安全性服务质量迫在眉睫。ACL就在这种情况下应运而生了。通过ACL可以实现对网络中报文流的精确识别和控制,达到控制网络访问行为、防止网络攻击和提高网络带宽利用率的目的,从而切实保障网络环境的安全性和网络服务质量的可靠性。

访问控制列表ACL(AccessControlList)是由一条或多条规则组成的集合。所谓规则,是指描述报文匹配条件的判断语句,这些条件可以是报文的源地址、目的地址、端口号等。

ACL本质上是一种报文过滤器,规则是过滤器的滤芯。设备基于这些规则进行报文匹配,可以过滤出特定的报文,并根据应用ACL的业务模块的处理策略来允许或阻止该报文通过。

以下是一个典型的ACL应用组网场景。

  • 某企业为保证财务数据安全,禁止研发部门访问财务服务器,但总裁办公室不受限制。

实现方式:在Interface1的入方向上部署ACL,禁止研发部门访问财务服务器的报文通过。Interface2上无需部署ACL,总裁办公室访问财务服务器的报文默认允许通过。

  • 保护企业内网环境安全,防止Internet病毒入侵。

实现方式:在Interface3的入方向上部署ACL,将病毒经常使用的端口予以封堵。

ACL的基本原理

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

ACL的组成

ACL编号:

用于标识ACL,表明该ACL是数字型ACL。

根据ACL规则功能的不同,ACL被划分为基本ACL、高级ACL、二层ACL和用户ACL这几种类型,每类ACL编号的取值范围不同。

规则:

即描述报文匹配条件的判断语句。

规则编号:用于标识ACL规则。可以自行配置规则编号,也可以由系统自动分配。

ACL规则的编号范围是0~4294967294,所有规则均按照规则编号从小到大进行排序。所以,图1中的rule5排在首位,而规则编号最大的rule4294967294排在末位。系统按照规则编号从小到大的顺序,将规则依次与报文匹配,一旦匹配上一条规则即停止匹配。

动作:

包括permit/deny两种动作,表示允许/拒绝。

匹配项:

ACL定义了极其丰富的匹配项。除了图中的源地址和生效时间段,ACL还支持很多其他规则匹配项。例如,二层以太网帧头信息(如源MAC、目的MAC、以太帧协议类型)、三层报文信息(如目的地址、协议类型)以及四层报文信息(如TCP/UDP端口号)等。

ACL的匹配机制

设备将报文与ACL规则进行匹配时,遵循“一旦命中即停止匹配”的机制。

首先系统会查找设备上是否配置了ACL。

  • 如果ACL不存在,则返回ACL匹配结果为:不匹配。
  • 如果ACL存在,则查找设备是否配置了ACL规则。
    • 如果匹配上了permit规则,则停止查找规则,并返回ACL匹配结果为:匹配(允许)。
    • 如果匹配上了deny规则,则停止查找规则,并返回ACL匹配结果为:匹配(拒绝)。
    • 如果未匹配上规则,则继续查找下一条规则,以此循环。如果一直查到最后一条规则,报文仍未匹配上,则返回ACL匹配结果为:不匹配。
    • 如果规则不存在,则返回ACL匹配结果为:不匹配。
    • 如果规则存在,则系统会从ACL中编号最小的规则开始查找。

从整个ACL匹配流程可以看出,报文与ACL规则匹配后,会产生两种匹配结果:“匹配”和“不匹配”。

  • 匹配(命中规则):指存在ACL,且在ACL中查找到了符合匹配条件的规则。不论匹配的动作是“permit”还是“deny”,都称为“匹配”,而不是只是匹配上permit规则才算“匹配”。
  • 不匹配(未命中规则):指不存在ACL,或ACL中无规则,再或者在ACL中遍历了所有规则都没有找到符合匹配条件的规则。以上三种情况,都叫做“不匹配”。

ACL的分类

基于ACL标识方法的划分

划分如下:

  • 数字型ACL:传统的ACL标识方法。创建ACL时,指定一个唯一的数字标识该ACL。
  • 命名型ACL:通过名称代替编号来标识ACL。

用户在创建ACL时可以为其指定编号,不同的编号对应不同类型的ACL。同时,为了便于记忆和识别,用户还可以创建命名型ACL,即在创建ACL时为其设置名称。命名型ACL,也可以是“名称数字”的形式,即在定义命名型ACL时,同时指定ACL编号。如果不指定编号,系统则会自动为其分配一个数字型ACL的编号。

基于ACL规则定义方式的划分

  • 基本ACL

仅使用报文的源IP地址、分片信息和生效时间段信息来定义规则。编号范围2000~2999。

配置举例:

[Huawei] acl 2001

[Huawei-acl-basic-2001]rule permit source 192.168.1.3 0

#在ACL2001中配置规则,允许源IP地址是192.168.1.3主机地址的报文通过。

  • 高级ACL

既可使用IPv4报文的源IP地址,也可使用目的IP地址、IP协议类型、ICMP类型、TCP源/目的端口、UDP源/目的端口号、生效时间段等来定义规则。编号范围3000~3999

配置举例:

[Huawei]acl 3001

[Huawei-acl-adv-3001]rule permit icmp source 192.168.1.3 0 destination 192.168.2.00.0.0.255

#在ACL3001中配置规则,允许源IP地址是192.168.1.3主机地址且目的IP地址是192.168.2.0/24网段地址的ICMP报文通过。

  • 二层ACL

使用报文的以太网帧头信息来定义规则,如根据源MAC(MediaAccess Control)地址、目的MAC地址、二层协议类型等。编号范围4000~4999

配置举例:

[Huawei]acl 4001

[Huawei-acl-L2-4001]rule permit destination-mac 0000-0000-0001 source-mac 0000-0000-0002l2-protocol 0x0806

#在ACL4001中配置规则,允许目的MAC地址是0000-0000-0001、源MAC地址是0000-0000-0002的ARP报文(二层协议类型值为0x0806)通过。

  • 用户ACL

既可使用IPv4报文的源IP地址,也可使用目的IP地址、IP协议类型、ICMP类型、TCP源端口/目的端口、UDP源端口/目的端口号等来定义规则。编号范围6000~6031

配置举例:

[Huawei] acl 6000

[Huawei-acl-ucl-6000]rule permit ip destination 10.1.1.1 255.255.255.0

#在ACL6000中配置规则,允许所有Portal用户可以免认证访问IP地址为10.1.1.1/24的网络。

---END---

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-06-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 网络工程师笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ACL的组成
    • ACL编号:
      • 规则:
        • 动作:
          • 匹配项:
          • 基于ACL标识方法的划分
          • 基于ACL规则定义方式的划分
          相关产品与服务
          云服务器
          云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档