ACL原理与配置

ACL技术概述

用途

  1. 登录控制

telnet、ftp、http等

  1. 报文转发进行过滤

NAT、IPSec、QoS 

  1. 路由过滤(的匹配)

ACL,IP Prefix-list

可以进行匹配和过滤的内容

源、目IP地址,协议号(TCP/UDP),源、目四层端口

可以只匹配其中一个,也可以匹配多个

ACL基本概念和工作原理

ACL组成

ACL编号与分类

ACL编号:每个ACL都需要分配一个编号,称为ACL编号,用来标识ACL。

基本ACL

1.2000-2999

2.仅使用报文的源IP地址来定义规则

3.不够直观,这个编号的ACL是干啥的?

高级ACL

1.3000-3999

2.可以对IPv4报文的源IP地址、目的IP地址、IP协议类型、ICMP类型、TCPUDP)源/目的端口号来进行规则定义,会更加灵活地进行匹配。

3.基本ACL能做的,高级ACL也能做

4.不够直观,同上

数字ACL

acl number 2000=acl 2000

acl number 3000=acl 3000

命名ACL

1.不能命名为数字

2.使用acl name NAME basic来创建基本命名ACL

3.使用ACL name NAME advance来创建高级命名ACL

ACL规则编号与步长

规则

一个ACL通常由若干条“permit/deny”语句组成,每条语句就是该ACL的一条规则。

规则编号

每条规则都有一个相应的编号,称为规则编号,用来标识ACL规则。可以自定义,也可以系统自动分配。ACL规则的编号范围是0~4294967294,所有规则均按照规则编号从小到大进行排序。

步长

1.系统自动为ACL规则分配编号时,每个相邻规则编号之间会有一个差值,这个差值称为“步长”。缺省步长为5,所以规则编号就是5/10/15…以此类推。

2.如果手工指定了一条规则,但未指定规则编号,系统就会使用大于当前ACL内最大规则编号且是步长整数倍的最小整数作为规则编号。

步长可以调整,如果将步长改为2,系统则会自动从当前步长值开始重新排列规则编号,规则编号就变成2、4、6…。

3.步长直接rule 1/2/3/4…为什么不可以?

先来看一个小题目:如果希望增加一条规则,该如何处理?

可以在rule 10和rule 15之间,手工加入一条rule 11。

因此,设置一定长度的步长的作用,是方便后续在旧规则之间插入新的规则。

通配符

通配符(Wildcard

0表示完全匹配,1表示不关心,对于01的排列顺序没有要求

可以写成

0.0.0.254

0.0.0.0

0.0.255.0

特殊用法

匹配奇数的主机

192.168.1.1  0.0.0.254

匹配所有

any或者x.x.x.x  255.255.255.255

反掩码(wild card) 

一般用于OSPF中,用于确定哪些接口启用OSPF

必须是先连续的0,后连续的1。否则报错

但是很奇葩的是,如果你写成掩码,系统也会自动给你更改为反掩码。

掩码(ip address mask

用于确定网络位和主机位,必须是连续的1+连续的0,其中(0是可选的)

动作

每条规则中的permit或deny,就是与这条规则相对应的处理动作。permit指“允许”,deny指“拒绝”,但是ACL一般是结合其他技术使用,不同的场景,处理动作的含义也有所不同。

在IA阶段,ACL更多与流量过滤技术结合使用(即流量过滤中调用ACL),permit就是“允许通行”的意思,deny就是“拒绝通行”的意思。

ACL匹配机制

1.自rule规则小的至规则编号大的进行匹配

2.首次匹配后就跳出

3.都不匹配则匹配默认(Cisco是拒绝所有,Huawei的ACL用于Traffic-filter的时候是允许所有)

备注:HuaweiACL在不同应用场景默认行为不同。

一条ACL可以由多条“deny或permit”语句组成,每一条语句描述一条规则,这些规则可能存在包含关系,也可能有重复或矛盾的地方,因此ACL的匹配顺序是十分重要的。

华为设备支持两种匹配顺序:自动排序(auto模式)和配置顺序(config模式)。缺省的ACL匹配顺序是config模式。

自动排序auto

是指系统使用“深度优先”的原则,将规则按照精确度从高到低进行排序,并按照精确度从高到低的顺序进行报文匹配。——这个比较复杂。

配置顺序config

系统按照ACL规则编号从小到大的顺序进行报文匹配,规则编号越小越容易被匹配。

ACL使用的注意事项

事项一

设备的一个端口的一个方向只能使用一个ACL

     inbound指的是进入该设备(可能访问该设备或者通过该设备进行转发)

     outbound指的是离开该设备。

事项二

路由器的ACL在端口上使用,交换机在全局使用,可以针对1个VLAN使用多个ACL

*交换机上一般不适用于二层接口,因为一般而言多个二层端口属于一个VLAN

事项三

进入设备是先进行ACL处理,然后路由,先路由然后离开设备后碰到ACL再决定是否发送。

事项四

基本ACL靠近数据访问的目的,否则会滥杀无辜

高级ACL靠近数据访问的源,否则会造成带宽浪费,设备性能浪费

事项五

要先保证网络能够通信,再使用ACL,从而避免因为原本就是网络本来不同的情况下导致的乌龙。

ACL的基础配置及应用

创建基本ACL

[Huawei] acl [ number ] acl-number [ match-order config ]

acl-number:指定访问控制列表的编号。

match-order config:指定ACL规则的匹配顺序,config表示配置顺序。

[Huawei] acl name acl-name { basic | acl-number } [ match-order config ]

acl-name:指定创建的ACL的名称。

basic:指定ACL的类型为基本ACL。

配置基本ACL规则

[Huawei-acl-basic-2000] rule [ rule-id ] { deny | permit } [ source { source-address source-wildcard | any } | time-range time-name ]

rule-id:指定ACL的规则ID。

deny:指定拒绝符合条件的报文。

permit:指定允许符合条件的报文。

source { source-address source-wildcard | any }:指定ACL规则匹配报文的源地址信息。如果不配置,表示报文的任何源地址都匹配。其中:

source-address:指定报文的源地址。

source-wildcard:指定源地址通配符。

any:表示报文的任意源地址。相当于source-address为0.0.0.0或者source-wildcard为255.255.255.255。

time-range time-name:指定ACL规则生效的时间段。其中,time-name表示ACL规则生效时间段名称。如果不指定时间段,表示任何时间都生效。

基本ACL过滤数据流量

配置思路:

配置基本ACL和流量过滤,使设备可以对特定网段的报文进行过滤。

配置步骤:

如图完成路由器的IP地址和路由相关配置。

创建基本ACL 2000并配置ACL规则,拒绝192.168.1.0/24网段的报文通过,允许其他网段的报文通过。

配置流量过滤。

traffic-filter命令,用来在接口上配置基于ACL对报文进行过滤。

命令格式:traffic-filter { inbound | outbound } acl { acl-number | name acl-name }

inbound:指定在接口入方向上配置报文过滤。

outbound:指定在接口出方向上配置报文过滤。

acl:指定基于IPv4 ACL对报文进行过滤。

创建高级ACL

[Huawei] acl [ number ] acl-number [ match-order config ]

acl-number:指定访问控制列表的编号。

match-order config:指定ACL规则的匹配顺序,config表示配置顺序。

[Huawei] acl name acl-name { advance | acl-number } [ match-order config ]

acl-name:指定创建的ACL的名称。

advance:指定ACL的类型为高级ACL。

不需要记录那么多的功能。

高级ACL限制不同网段的用户互访

Traffic Policy和Traffic-filter的对比

Traffic Policy

模块化QoS命令行MQC(Modular QoS Command-Line Interface)是指通过将具有某类共同特征的报文划分为一类,并为同一类报文提供相同的服务,也可以对不同类的报文提供不同的服务。

MQC包含三个要素:流分类(traffic classifier)、流行为(traffic behavior)和流策略(traffic policy)。

可以理解成功能涵盖Traffic-filter,但是强于Traffic-filter

Traffic-filter

基于ACL的简化流策略,与流策略相比,基于ACL的简化流策略不需要单独创建流分类、流行为或流策略,配置更为简洁;但是由于仅基于ACL规则对报文进行匹配,因此匹配规则没有流策略丰富。

从V200R002C00版本开始,新增traffic-filter命令,接口下同时配置traffic-policy和traffic-filter,根据流策略中流行为的不同,生效顺序不同。当流策略中的流行为中配置了queue af、queue ef、queue llq或子策略时,traffic-policy先生效,否则traffic-filter先生效。

配置案例

拓扑

需求一

使用标准ACL2000 ,禁止192.168.10.0/24用户访问Web服务器。

acl 2000

rule 5 deny source 192.168.10.0 0.0.0.255

rule 10 permit source any (可选)

Q:在哪台设备上的配置,在哪儿使用?

A:

需求二

使用高级ACL,禁止192.168.10.0/24用户访问Web服务器。

acl number 3000

    rule 5 deny tcp source 192.168.10.0 0.0.0.255 destination 192.168.40.1 0 destination-port eq www

Q:在哪台设备上的配置,在哪儿使用?

A:

注意:如果时使用ensp中的交换机全局调用ACL,那么要注意,高级ACL无法匹配到四层具体某个端口。但是路由器可以。

因此交换机中就需要使用

acl number 3000

rule 5 deny tcp source 192.168.10.0 0.0.0.255 destination 192.168.40.1 0

不能写成

acl number 3000

rule 5 deny tcp source 192.168.10.0 0.0.0.255 destination 192.168.40.1 0 destination-port eq www

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TvT<

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值