ACL访问控制列表

发布时间 2023-10-16 22:46:11作者: smileleooo

访问控制列表 ACL(Access Control List)是一种用于控制网络设备访问权限的技术。ACL通常用于限制某些用户或主机对网络资源的访问,通常由一系列规则组成,每个规则指定了一个源地址、目标地址和操作类型。当一个数据包到达网络设备时,设备会检查该数据包的源地址、目标地址和操作类型,然后根据ACL规则来决定是否允许该数据包通过。

简单地说,配置一张ACL列表,列表包含设置好的规则,之后所有的流量按照对应的规则执行,允许、拒绝。


ACL的工作原理

ACL的匹配原则

  1. 路由条目在ACL访问控制列表中匹配的顺序是自上而下逐一匹配

  2. 每个路由条目只会被匹配一次,一旦匹配上,则不继续向下匹配

  3. 在ACL访问控制列表隐含一个放行所有

    华为体系默认的ACL列表末尾隐含一条允许所有的指令(不做处理)

    思科默认拒绝所有

  4. 可以抓取感兴趣流,QoS技术可以分类网络中的报文,并根据报文优先级提供差分服务。


ACL的分类

  • 基础的ACL — 只匹配源IP地址

    标准访问控制列表号是 2000 - 2999

  • 高级的ACL — 可以匹配源目IP地址,也可以匹配协议,端口号等

    标准访问控制列表号是 3000 - 3999

  • 用户自定义的ACL — 可以用户自定义相应的功能。

    标准访问控制列表号是 4000 - 4999


ACL的基本配置

创建基础访问控制列表,列表号为2000

[r2]acl 2000 

拒绝源IP地址为 192.168.1.3 的流量

[r2-acl-basic-2000]rule deny source 192.168.1.3 0.0.0.0 

这的 0.0.0.0 是一个通配符,全0表示没有可变的部分,唯一匹配这条IP地址,不是一个网段或者其它。

例如 rule deny source 192.168.1.3 0.255.0.255 相当于匹配 192.X.1.Y 这样特征的流量,0代表不可变,1代表可变。

查看ACL列表配置

[r2-acl-basic-2000]display acl 2000
Acl's step is 5 — 步长,一方面确定匹配顺序,另外方便规则之间插入一些规则

删除ACL规则

[r2-acl-basic-2000]undo rule 5

策略

  1. 编辑ACL列表

  2. 路由器的接口调用ACL列表,注意方向(一个接口的一个方向只能调用一张列表)

    入方向:流量将要进入本地路由器,将要被本地路由器处理

    出方向:已经被本地路由器处理过,流量将离开本地路由器


实例

分析

问题一:为了PC2 192.168.1.3 不可以访问3.0网段但不影响PC2访问其他的网络,可以在R2的g0/0/1接口过滤来自PC2的流量。

问题二:可以在R1写上过滤源IP为PC1 192.168.1.2 目标IP为PC4 192.168.3.3 的流量的条目。

配置

[r2]acl 2000
[r2-acl-basic-2000] rule deny source 192.168.1.3 0 
[r2-GigabitEthernet0/0/1]traffic-filter outbound acl 2000

基础的ACL一般配置在更靠近目标的位置。

[r1]acl 3000
[r1-acl-adv-3000]rule  deny icmp source 192.168.1.2 0 destination 192.168.3.3 0
[r1-GigabitEthernet0/0/1]traffic-filter inbound acl 3000

ping命令实际是基于ICMP协议的应用层的命令。

这种带有目标的过滤规则应当尽可能配置到靠近源的位置,这样可以使数据包还没到骨干链路就被过滤掉了,可以减少链路资源的浪费。


若有错误,欢迎指正!o( ̄▽ ̄)ブ