网络安全之访问控制列表ACL详解和配置案例(全)

 

  • ACL 概述

    • ACL的主要使用场景:

  • ACL 的分类

    • 1.基本ACL

    • 2.高级ACL

  • ACL 的配置

    • 1.创建基本ACL

    • 2.创建高级ACL

  • ACL 配置实例(路由器)

    • 1.基本ACL配置示例

    • 2.高级ACL配置示例1

    • 3.高级ACL配置示例2

  • ACL 配置示例(交换机)

ACL 概述

  • ACL(Access Control List访问控制列表)是由一系列permit或deny语句组成的、有序的规则集合,它通过匹配报文的相关字段实现对报文的分类。
  • ACL本身只是一组规则,只能区分某一类报文,换句话说,ACL更像是一个工具,当我们希望通过ACL来实现针对特定流量的过滤时,就需要在适当的应用中调用已经定义好的ACL。
  • ACL是一个使用非常广泛的工具,能够在多种场景下被调用。

ACL的主要使用场景:

  1. 被流量策略调用,用于过滤流量(可基于源、目的IP地址、协议类型、端口号等元素);
  2. 在route-policy中被调用,用于匹配特定的路由前缀,从而执行路由策略;
  3. 在VPN中调用,用于匹配感兴趣数据流;
  4. 在防火墙的策略部署中调用,用于匹配流量;
  5. 其他……。

ACL(Access Control List)称为访问控制列表,顾名思义它是一个列表形式的一组规则。ACL能够识别一个IP数据包中的源IP地址、目的IP地址、协议类型、源目的端口等元素,从而能够针对上述元素进行报文的匹配。

例如一个网络设备在某个接口上源源不断地接收各种网络流量,现在我们希望对这些流量中的某些特定流量进行识别,以便做进一步的动作,那么就可以用到ACL了。此外,除了能够用于匹配数据,ACL还能够用于匹配路由,使得我们能够针对不同的路由部署不同的路由策略。

上图显示的是一个编号为xxx的ACL,这个ACL中包含了多条规则(Rule),每条规则都有一个编号,所有的规则按照规则编号的大小进行排列,编号越小,排行越前

在每一个规则中,都可定义匹配条件,以及相应的允许/拒绝的动作。在ACL的执行过程中,设备从该ACL中拥有最小编号的规则开始进行计算与匹配,如果被匹配对象满足该条规则中的匹配条件,则执行该条规则所定义的动作,并且不会再往下计算其他规则;而如果被匹配对象不满足该条规则中的匹配条件,则继续往下一条规则进行匹配

ACL 的分类

ACL可以使用一个数字来命名,例如ACL 2000,也可以使用一个字符串来命名,例如Test。我们在创建ACL时,可以选择上述两种命名方式中的一种。

按照功能不同,ACL存在多种类型,其中最主要的两种是:

1.基本ACL

基本ACL只能够针对IP报文的源IP地址等信息进行流量匹配。例如我们可以使用基本ACL来拒绝源IP地址段为192.168.1.0/24的报文。

如果在交换机上使用数字命名的方式创建一个基本ACL,那么数字的范围为2000~2999

2.高级ACL

高级ACL能够针对IP报文的源IP地址、目的IP地址、协议类型、TCP源或目的端口、UDP源或目的端口等元素进行流量匹配。因此它的功能相较基础ACL要更丰富一些。

如果在交换机上使用数字命名的方式创建一个高级ACL,那么数字的范围为3000~3999

ACL 的配置

1.创建基本ACL

使用数字命名的方式创建一个基本ACL,并进入ACL视图:

[Huawei] acl acl-number # 编号范围( 2000 ~ 2999 )
[Huawei-acl-basic-num]

在基本ACL中,创建一个rule的典型命令如下:

[Huawei-acl-basic-num] rule [ rule-id ] { deny | permit } [ source { source-address source-wildcard | any }]

如果不指定规则ID,则增加一个新规则时设备自动会为这个规则分配一个ID,ID按照大小排序。在上面的配置中,wildcard通配符掩码的概念,其实我们在OSPF的配置中已经介绍过了,此处不再赘述。

2.创建高级ACL

使用数字命名的方式创建一个高级ACL,并进入ACL视图:

[Huawei] acl acl-number # 编号范围( 3000 ~ 3999 )
[Huawei-acl-adv-num]

在高级ACL中,创建一个rule的典型命令如下。高级ACL可以用于匹配多种协议类型,例如OSPF、ICMP、TCP、UDP、IP等等,此处以IP为例:

[Huawei-acl-adv-num] rule [ rule-id ] { deny | permit } ip [ destination { destination-address destination-wildcard |any } | source { source-address source-wildcard | any } ]

ACL 配置实例(路由器)

1.基本ACL配置示例

初始情况下PC1及PC2都能够访问Server。现在在GW的接口上应用ACL,使得PC2无法访问Server, 而其他用户都能够访问Server。

GW的配置如下:

[GW] acl 2000
[GW-acl-basic-2000] rule deny source 192.168.1.2 0 #禁止以192.168.1.2为源地址的流量
#上面的命令,等同于 rule deny source 192.168.1.2 0.0.0.0
[GW-acl-basic-2000] rule permit source any #放行其他所有流量
[GW] interface GigabitEthernet0/0/1
[GW-GigabitEthernet0/0/1] traffic-filter inbound acl 2000 #将ACL2000关联到流量过滤器并应用在GE0/0/1接口的入方向

2.高级ACL配置示例1

初始情况下PC1及PC2都能够访问Server。现在在GW的接口上应用ACL,使得PC2无法访问Server2,放行其他流量。

GW的配置如下:

[GW] acl 3000
[GW-acl-adv-3000] rule deny ip source 192.168.1.2 0 destination 10.0.0.2 0
[GW-acl-adv-3000] rule permit ip  #放行其他所有IP流量
[GW] interface GigabitEthernet0/0/1
[GW-GigabitEthernet0/0/1] traffic-filter inbound acl 3000

3.高级ACL配置示例2

初始情况下PC1及PC2都能够访问Server。现在在GW的接口上应用ACL,只禁止PC2访问Server2的 Telnet服务,放行其他流量。

GW的配置如下:

[GW] acl 3000
[GW-acl-adv-3000] rule deny tcp source 192.168.1.2 0 destination 10.0.0.2 0 destination-port eq 23
[GW-acl-adv-3000] rule permit ip
[GW] interface GigabitEthernet0/0/1
[GW-GigabitEthernet0/0/1] traffic-filter inbound acl 3000

ACL 配置示例(交换机)

在S53交换机上完成ACL的配置,使得R1无法ping通R2,但其他的所有流量都放行。

[SW] acl 3000
[SW-acl-adv-3000] rule deny icmp
[SW-acl-adv-3000] rule permit ip
[SW]interface GigabitEthernet 0/0/1
[SW-GigabitEthernet0/0/1] traffic-filter inbound acl 3000

完成配置后,R1无法ping通R2但是可以Telnet R2。

添加微信免费咨询服务器配置选择建议
微信号:landuiYY

未经允许不得转载:云技术 » 网络安全之访问控制列表ACL详解和配置案例(全)

赞 (0)