ACL(Access Control List)访问控制列表

目录

ACL 访问控制列表

ACL分类

ACL的组成

ACL匹配机制

ACL调用方式

实验配置

不允许PC1访问PC4

只允许PC1访问PC4

高级ACL

基本概念

实验配置 限制ping

实验配置 限制DNS

基于时间的ACL

实验配置


ACL 访问控制列表

根据一系列不同的规则,设备根据这些规则对数据包进行分类,并针对不同类型的报文进行不同的处理,从而可以实现网络访问行为的控制、限制网络流量,提高网络性能、防止网络攻击。

 

ACL分类

分类

编号范围

功能概述

基于接口的ACL

编号范围是1000~1999

根据报文的入接口对报文进行过滤

基本ACL

编号范围是2000~2999

根据源地址对报文进行过滤

高级ACL

编号范围是3000~3999

根据源/目的地址、源/目的端口号、协议类型等对报文进行过滤

二层ACL

编号范围是4000~4999

根据源MAC地址、目的MAC地址和以太帧协议类型等二层信息对报文进行过滤

用户ACL UCL(User ACL)

编号范围是6000~9999

根据报文的源IP地址、源业务组、源用户组、源端口号、目的IP地址、目的业务组、目的用户组、目的端口号、协议类型等内容定义规则,实现对报文的匹配过滤

基于MPLS的ACL

编号范围是10000~10999

根据MPLS报文的Exp值、Label值、TTL值对报文进行过滤

经常使用的是基本ACL和高级ACL。

 

ACL的组成

比如:rule deny source 192.168.1.12 0.0.0.0     

  • 其中的0.0.0.0 不是子网掩码而是通配符掩码,并不是区分网络号和主机号的,0.0.0.0可以简写成0
  • 通配符掩码用来告诉路由器,需要检查IP地址中的多少位(可以不是连续的1)
  • 0表示需要检查的位,1表示不需要检查的位 0->感兴趣 1->不感兴趣
  • 192.168.1.12  0.0.0.0表示精确匹配这个IP地址,而如果是0.0.0.0 255.255.255.255表示匹配所有(any)
  • 如果精确匹配最后一段是奇数的地址,那么最后1bit肯定是1,所以可以写成例如192.168.1.1 0.0.0.254 的样式

通配符掩码可以是不是连续的0或者1,如图

 

ACL匹配机制

 

ACL调用方式

 ACL调用分为inbound方向和outbound方向,inbound方向调用是先调用后路由,outbound方向调用是先路由后调用。

如果数据流方向如下图,那么在F0/0处就是IN方向,在F0/1就是OUT方向。

 如果数据流方向如下图,那么就是反过来,在F0/1口是IN方向,在F0/0口是OUT方向。

 

实验配置

  • 确定部署位置
  • 匹配对应流量
  • 决定调用方向
  • 查看以及测试

不允许PC1访问PC4

 

 第一步:确定部署位置

现在PC1 不允许访问PC4,控制肯定是在数据包的必经之路上,所以可以在R1和R2上配置,但是我们一般采用靠近源的位置进行配置,这个为了集中化部署。

我们选择R1上配置,但是R1上有俩个接口,G0/0/1和G0/0/2。选择G0/0/1,在数据的流向上,就是inbound入方向;选择G0/0/2,在数据的流向上,就是outbound出方向;一般我们还是采用靠近源的位置进行配置。

确认部署位置为R1的G0/0/1口。

第二步:匹配对应流量

[AR1]acl 2000     
[AR1-acl-basic-2000]rule 5 deny source 192.168.1.11 0.0.0.0     
[AR1-acl-basic-2000]rule permit source any

 

第三步:决定调用方式

[AR1] interface GigabitEthernet 0/0/1     
[AR1-GigabitEthernet0/0/1] traffic-filter inbound acl 2000

 

第四步:查看和测试

查看ACL       [AR1] display acl 2000

[AR1]display acl 2000
Basic ACL 2000, 2 rules
Acl's step is 5
 rule 5 deny source 192.168.1.12 0 
 rule 10 permit (5 matches)

查看流量模板的应用                [AR1]display traffic-filter applied-record 

[AR1]display traffic-filter applied-record 
-----------------------------------------------------------
Interface                   Direction  AppliedRecord       
-----------------------------------------------------------
GigabitEthernet0/0/1        inbound    acl 200

第五步:如何删除

删除的时候,使用rule 的编号进行删除

[AR1] acl 2000     

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

或者 删除所有的ACL

[AR1]undo acl all
 Info: Now deleting all ACL configurations, please wait......
Deleting operation has finished!

 

只允许PC1访问PC4

第一步:确定部署位置

题目要求只允许PC1访问PC4,也就意味着剩余的PC2和PC3是不能访问PC4的,但PC1.PC2,PC3之间的通信应该是不受影响的,所以部署位置在R1的GE0/0/2或者R2的两侧接口处。我们一般选择靠近源的位置,也就是R1的G0/0/2口。

第二步:匹配对应流量

[AR1]acl 2000
[AR1-acl-basic-2000]rule permit source 192.168.1.11 0
[AR1-acl-basic-2000]rule deny source any

第三步:决定调用方式

[AR1]interface GigabitEthernet 0/0/2
[AR1-GigabitEthernet0/0/2]traffic-filter outbound acl 2000

第四步:查看和测试

[AR1]display acl 2000
Basic ACL 2000, 2 rules
Acl's step is 5
 rule 5 permit source 192.168.1.1 0 
 rule 10 deny (62 matches)

[AR1]display traffic-filter applied-record
-----------------------------------------------------------
Interface                   Direction  AppliedRecord       
-----------------------------------------------------------
GigabitEthernet0/0/2        outbound   acl 2000
----------------------------------------------------------- 

 

高级ACL

基本概念

高级ACL可以针对数据包的源、目的IP地址、协议类型、源目的端口号等元素进行匹配

  • 使用编号创建一个高级ACL,并进入ACL视图:

[Huawei] acl num
[Huawei-acl-adv-num]
高级ACL编号的范围是3000~3999。

  • 根据IP配置高级ACL规则:

[Huawei-acl-adv-num] rule 5  {permit/deny}  ip source src-address wildcard  destination dst-address wildcard
除了IP协议,高级ACL还能根据IP承载的上层协议信息进行匹配,例如TCP、UDP、ICMP等等。

ACL配置:操作符的含义

操作符及语法

含义

equal portnumber

等于端口号 portnumber

greater-than portnumber

大于端口号 portnumber

less-than portnumber

小于端口号 portnumber

not-equal portnumber

不等于端口号 portnumber

range portnumber1 portnumber2

介于端口号 portnumber1和portnumber2之间

 

实验配置 限制ping

在PC1和PC2都可以访问Server1和Server2的情况下,限制PC2 ping Server2,放行其他流量

 1.配置ACL 匹配对应流量

[AR1]acl 3000
[AR1-acl-adv-3000]rule deny ip source 192.168.1.2 0 destination 10.1.1.2 0 icmp-type echo

#echo 和 echo reply 不同,如果都被限制,那么Server2也无法ping PC2,所以不能限制echo reply
[AR1-acl-adv-3000]rule permit ip 

 2.接口进行调用

[AR1]interface GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]traffic-filter inbound acl 3000

实验配置 限制DNS

在PC1和PC2都可以访问Server1和Server2的情况下,限制PC2访问Server2的DNS服务,放行其他流量

  • DNS使用的是UDP服务
  • DNS的传输层端口号是53

[AR1]acl 3000     
[AR1-acl-adv-3000]rule deny UDP source 192.168.1.2 0 destination 10.1.1.2 0 dest ination-port eq 53
[AR1-acl-adv-3000]rule permit ip

[AR1]interface GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]traffic-filter inbound acl 3000

 

基于时间的ACL

命令规范

time-range time-name [ { time1 to time2 { days }    |     from time1 date1 [ to time2 date2 ] } ]

time-name  指定时间段的名称。

time-name

指定时间段的名称

time1

指定时间段的开始时间

to time2

指定时间段的结束时间

days

指定时间段在周几有效

from time1 date1

指定时间段从某一天某一时间开始

to time2 date2

指定时间段到某一天某一时间结束。

结束时间必须大于起始时间。

举例

  • time-range test 14:00 to 18:00 off-day
  • 配置时间段test,在周末下午14:00到18:00生效
  • time-range test from 08:30 2013/1/1 to 18:00 2013/12/31
  • 配置时间段test,从2013年1月1日早上8点半开始生效,2013年12月31日晚上6点停止生效

实验配置

规定员工在上班时间(周一到周五8:00-17:00)不能浏览taobao网站

1.创建时间范围 time-range

[AR1]time-range working-time 8:00 to 17:00 working-day 

2.配置基于时间的ACL

[AR1]acl 3000     
[AR1-acl-adv-3000]rule 4 deny tcp source 192.168.1.0 0.0.0.255 time-range working-time destination 10.1.1.1 0 destination-port eq 80
[AR1]interface GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]traffic-filter inbound acl 3000

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值