随着网络的飞速发展,网络安全和网络服务质量QoS (Quality of Service)问题日益突出。访问控制列表 (ACL, Access Control List)是与其紧密相关的一个技术。
ACL可以通过对网络中报文流的精确识别,与其他技术结合,达到控制网络访问行为、防止网络攻击和提高网络带宽利用率的目的,从而切实保障网络环境的安全性和网络服务质量的可靠性。 本次将介绍ACL的基本原理和基本作用,ACL的不同种类及特点,ACL的基本组成和匹配顺序,通配符的使用方法和ACL的相关配置。
技术背景:需要一个工具,实现流量过滤。
目录
前言
ACL概述
ACL应用
ACL的基本概念
ACL的组成
规则编号
通配符(Wildcard)
对比
ACL的分类与标识
基于ACL规则定义方式的分类
基于ACL标识方法的分类
ACL的匹配位置
基本ACL的基础配置命令
【后续补充】
自己实验配置做的笔记:
总结
ACL是由一系列permit或deny语句组成的、有序规则的列表。 ACL是一个匹配工具,能够对报文进行匹配和区分。
ACL是对报文流进行精确识别和匹配的。
ACL由若干条permit或deny语句组成。每条语句就是该ACL的一条规则,每条语句中的permit或deny就是与这条规则相对应的处理动作。
规则编号(Rule ID): 一个ACL中的每一条规则都有一个相应的编号。
步长(Step): 步长是系统自动为ACL规则分配编号时,每个相邻规则编号之间的差值,缺省值为5。步长的作用是为了方便后续在旧规则之间,插入新的规则。
Rule ID分配规则: 系统为ACL中首条未手工指定编号的规则分配编号时,使用步长值(例如步长=5,首条规则编号为5)作为该规则的起始编号;为后续规则分配编号时,则使用大于当前ACL内最大规则编号且是步长整数倍的最小整数作为规则编号。
通配符是一个32比特长度的数值,用于指示IP地址中,哪些比特位需要严格匹配,哪些比特位无需匹配。 通配符通常采用类似网络掩码的点分十进制形式表示,但是含义却与网络掩码完全不同。
匹配规则: “0”表示“匹配”;“1”表示“随机分配”。
特殊的通配符:
精确匹配192.168.1.1这个IP地址 192.168.1.1 0.0.0.0 = 192.168.1.1 0
匹配所有IP地址 0.0.0.0 255.255.255.255 = any
子网掩码:配置IP地址时配的子网掩码,从左到右连续的1。
反掩码:ospf配置会用到反掩码,反掩码0代表固定的网络位,1代表不匹配,反掩码的0和1也是从左到右连续的,只是和正掩码反过来而已。
通配符掩码:ACL会使用通配符掩码,0代表匹配,这一个对应的bit需要固定,1代表不匹配,0和1可以不连续,通配符掩码和子网掩码毫无关系,不具备划分网络位主机位的能力,只是用来匹配的。
基本ACL:编号范围2000~2999,仅使用报文的源IP地址、分片信息和生效时间段信息【time-range】来定义规则。
高级ACL:编号范围3000~3999,可使用IPv4报文的源IP地址、目的IP地址、IP协议类型、ICMP类型、TCP源/目的端口号、UDP源/目的端口号、生效时间段等来定义规则。
二层ACL:编号范围4000~4999,使用报文的以太网帧头信息来定义规则,如根据源MAC地址、目的MAC地址、二层协议类型等。
用户自定义ACL:编号范围5000~5999,使用报文头、偏移位置、字符串掩码和用户自定义字符串来定义规则。
用户ACL:编号范围6000~6999,既可使用IPv4报文的源IP地址或源UCL(User Control List)组,也可使用目的IP地址或目的UCL组、IP协议类型、ICMP类型、TCP源端口/目的端口、UDP源端口/目的端口号等来定义规则。
数字型ACL:传统的ACL标识方法。创建ACL时,指定一个唯一的数字标识该ACL。
命名型ACL:通过名称代替编号来标识ACL。
基本ACL:定义的是源地址,配置尽量靠近源。
高级ACL:配置尽量靠近目的地址。
如图:
报文匹配规则后立即按照规则的动作进行处理,不再继续向下匹配其他规则。
匹配地址bit位较多的尽量使用较少的规则号。
[AR1]acl 2001 创建一个ACL
[AR1-acl-basic-2001]rule 5 permit source 192.168.1.1 0.0.0.0 ACL的具体条目信息
rule 5 permit source 192.168.1.1 0.0.0.0
节点 编号 动作(允许/拒绝) 指定参数为源 具体参数信息SIP 通配符掩码
节点:一个ACL可以存在多个允许的条目,每一个条目都需要使用节点进行关联
编号:默认的节点编号是5的倍数,编号的顺序按照从小到大依次排列
***ACL匹配内容时,需要按照编号顺序依次匹配,如果匹配,则不在向下匹配
如果ACL匹配的条目,要求匹配明细条目 一定要放置在汇总条目之前
[AR1-acl-basic-2001]step 3 设置条目之间的步长,可以实现不改变条目顺序的情况下,在条目之间添加更多的条目节点。
动作:就是ACL匹配信息要执行的操作(ACL只是负责打上允许或拒绝的标记)
指定参数为源:根据source进行数据信息的匹配
具体的参数信息:
通配符掩码:是一种类型的掩码,也是32bit组成的 可以使用点分十进制表示
通过1 和 0 进行IP地址的标识
通配符掩码的1和0是不需要连续的
如果 IP地址的bit 和 通配符掩码的bit1 对应,那么IP地址的bit位可以为0,也可以为1【可变】
如果 IP地址的bit 和 通配符掩码的bit0 对应,那么IP地址的bit位是不能变化的【不变】
traffic filter :流量过滤
流量过滤时,一般会做出接口的方向
如果想要单独过滤某一个点,不影响其他设备,采用精确的信息匹配(高级ACL)
ACL是一种应用非常广泛的网络技术。它的基本原理是:配置了ACL的网络设备根据事先设定好的报文匹配规则对经过该设备的报文进行匹配,然后对匹配上的报文执行事先设定好的处理动作。这些匹配规则及相应的处理动作是根据具体的网络需求而设定的。处理动作的不同以及匹配规则的多样性,使得ACL可以发挥出各种各样的功效。
ACL技术总是与防火墙、路由策略、QoS、流量过滤等其他技术结合使用。本次主要介绍了ACL的相关技术知识,包括ACL的作用,ACL的组成、匹配和分类、通配符的使用方法,以及ACL的基本配置。