ACL——访问控制列表

2023-12-16 15:28:10

目录

1、ACL的产生背景及概述

2、ACL的应用

3、ACL的分类

4、ACL的组成

5、ACL的匹配位置

6、ACL的案例

案例1-----拒绝源IP为192.168.10.1的数据包

案例2------拒绝源IP在192.168.10.0/24整个网段的所有数据包

案例3------拒绝源IP为192.168.10.0/24所有奇数主机发送的数据包

7、ACL的配置实验


1、ACL的产生背景及概述

  • 当需要针对数据流量或者报文进行一些过滤的时候,需要一个抓取要过滤的工具。类似于过滤石灰粉和石子的过程,那么我们是需要一个滤网或者其他的过滤工具来进行筛选。经过筛选获取到的石子,是丢弃还是用作其他用途,并不是过滤工具来决定的,它是取决于调用工具的时候,来判断,是否需要这些石子,或者丢弃。
  • ?ACL(访问控制列表)就提供了类似于滤网的功能,它可以精准匹配到想要抓取的报文或者流量,然后在不同的场景下,去应用ACL的功能。
  • 它由一系列规则(即描述报文匹配条件的判断语句)组成。这些条件通常被称为五元组-分别是报文的源地址、目的地址、源端口、目的端口、端口号等。
  • 通过ACL可以实现对网络中报文流的精确识别和控制,达到控制网络访问行为、防止网络攻击和提高网络带宽利用率的目的,从而切实保障网络环境的安全性和网络服务质量的可靠性。?

2、ACL的应用

  1. 应用在接口的ACL-----过滤数据包(原目ip地址,原目 mac, 端口 五元组)

  2. 应用在路由协议-------匹配相应的路由条目( )

  3. NAT、IPSEC VPN、QOS-----匹配感兴趣的数据流(匹配上我设置的 数据流的)

3、ACL的分类

编号2000-2999---基本ACL----依据依据数据包当中的源IP地址匹配数据(数据时从哪个IP地址过来的)

  • ---尽量用在靠近目的点

编号3000-3999---高级ACL----依据数据包当中源、目的IP;源、目的端口;协议号匹配数据

  • ---尽量用在靠近源的地方(可以保护带宽和其他资源)

编号4000-4999---二层ACL,MAC、VLAN-id、802.1q

4、ACL的组成

  • ?ACL是由多条不同的规则组成的,这些规则组成了一个滤网的功能,通过permit/deny的动作,来决定是抓取还是不抓取。
acl 2000
#新建表格,  将你设置的 过滤条件放入 这个表格

rule 5 permit | deny source 匹配的条件(ip地址) 通配符掩码
  • 上面是ACL的一条规则,rule是规则关键字,后面的数字5是规则编号,这个编号在配置的时候可以指明也可以不指明,但是一条规则就是一个编号,编号不能重复。
  1. 如果不指明编号,默认第一条规则的编号是5,后面每增加一条规则,编号就会加5,也就是说默认的编号是从5开始,步长是5,即每增加一个编号,编号就会在上一条规则编号的基础上加5。
  2. 之所以留出编号的间隔,是为了能够适应各种应用场景,方便在规则之间,插入新的规则。ACL在进行匹配的时候,是根据编号的顺序,从小到大一条条往下进行的,一旦由匹配到的规则,则不会继续向下匹配,如果匹配到最后都没有,则命中默认规则,默认是deny所有。
  3. 规则编号的默认步长可以修改,修改了步长以后,所有的规则根据新的步长重新自动排号,为新步长的整倍数,顺序不会改变。
  • ?ACL有两个动作,permit和deny,permit是允许通过;deny是不允许通过。
  • ?source是指根据源来进行过滤的,是过滤的条件,当然也可以有其他的一些过滤条件。后面跟的是匹配的条件(ip地址)和通配符掩码(作用:精准匹配要控制的范围 )
  • 通配符为0则表示不可变,为1表示可变。举例如下:
命令:? rule 5 permit source 192.168.1.1 0.0.0.255
IP地址192.168.1.0000 0001
通配符掩码? ? 0.? 0? .0.1111? 1111? ?
表示范围192.168.1.0--192.168.1.255

5、ACL的匹配位置

?

6、ACL的案例

案例1-----拒绝源IP为192.168.10.1的数据包

acl 2000
rule deny source 192.168.10.1 0.0.0.0

案例2------拒绝源IP在192.168.10.0/24整个网段的所有数据包

acl 2000
rule deny source 192.168.10.0 0.0.0.255

案例3------拒绝源IP为192.168.10.0/24所有奇数主机发送的数据包

acl 2000
rule deny source 192.168.10.1 0.0.0.254

7、ACL的配置实验

①建立拓扑图

②配置路由器的端口ip地址和子网掩码,然后用Client1和2去ping任意服务器,通则正确。

③建立普通acl,建立规则,并作用在路由器的g0/0/1端口

1.建立acl   2调用acl
acl  2000
#基本acl 列表
rule 5 deny source 192.168.1.1 0 
#默认编号5  拒绝  来自192.168.1.1 的流量

int  g0/0/1
traffic-filter outbound acl 2000
#数据流向
在接口下调用acl 分为两个方向
inbound方向--------当接口收到数据包时执行ACL
outbound方向-------当设备从特定接口向外发送数据时执行ACL
-----------------------
没有被acl匹配数据默认采用permit动作
-----------------------
基本acl需要调用在离目的设备最近的接口上

此时client1再访问server1,就会失败。

?④建立高级 acl,不让192.168.1.1去访问192.168.2.1的tcp80端口,但可以访问21端口。

高级  acl
acl number 3000  
rule 5 deny tcp source 192.168.1.1 0 destination 192.168.2.1 0 destination-port  eq www(80)
 

[R1-GigabitEthernet0/0/0]traffic-filter inbound acl 3000

?再次访问192.168.2.1的http服务,失败。但ftp服务正常。

文章来源:https://blog.csdn.net/weixin_58376680/article/details/135017616
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。