一篇文章搞懂华为的ACL

第十一章:ACL原理与配置

随着网络的飞速发展,网络安全问题日益突出。访问控制列表 (ACL, Access Control List)

可以通过对网络中报文流的精确识别,与其他技术结合,达到控制网络访问行为、防止网络攻击和提高网络带宽利用率的目的,从而切实保障网络环境的安全性和网络服务质量的可靠性。

11.1 ACL概述

访问控制列表简称为ACL,它使用包过滤技术,在路由器上读取第3层及第4层包头中的信息,如源地址、目的地址、源端口和目的端口等,根据预告定义好的规则对包进行过滤从而达到访问控制的目的。ACL分很多种,不同场合应用不同种类的ACL。

  1. 基本ACL

基本ACL最简单,是通过使用IP包中的源IP地址进行过滤,表号范围2000-2999。

  1. 高级ACL

高级ACL比基本ACL具有更多的匹配项,功能更加强大和细化,可以针对包括协议类型、源地址、目的地址、源端口、目的端口和TCP连接建立等进行过滤,表号范围3000-3999。

  1. 基于时间ACL

ACL的生效时间段可以规定ACL规则在何时生效,比如某个特定时间段或者每周的某个固定时间段。

  1. 自反ACL

通过自反ACL可以实现网络节点的单向访问。

5在访问控制列表的学习中,要特别注意以下两个术语。

①    通配符掩码:一个32比特位的数字字符串,它规定了当一个IP地址与其他的IP地址进行比较时,该IP地址中哪些位应该被忽略。通配符掩码中的”1”表示忽略IP地址中对应的位,而”0”则表示该位必须匹配。两种特殊的通配符掩码是”255.255.255.255”和”0.0.0.0”,前者等价于关键字”any”,而后者等价于关键字”host”。

②    Inbound和Outbound:当在接口上应用访问控制列表时,用户要指明访问控制列表是应用于流入数据,还是流出数据。

11.2 实验一:基本ACL

1、实验需求

  •     掌握ACL的配置方法
  •     掌握ACL在接口下的应用方法
  •     掌握流量过滤的基本方式

2、实验拓扑

实验拓扑如图11-1所示

图11-1 基本ACL

实验免费链接:【实战课】华为HCIA-Datacom认证实验教学-学习视频教程-腾讯课堂

  1. 实验步骤

(1)PC机的IP地址配置

PC1的配置,在ipv4下选择静态配置,输入对应的ip地址子网掩码和网关,然后点击应用。PC2、sever同理PC1的配置如图11-2所示:

  图11-2在PC1上手动添加IP地址

PC2的配置如图11-3所示:

                                              图11-3在PC2上手动添加IP地址

(2)在交换机LSW1上创建VLAN10和20,把g0/0/1划分到vlan10,把g0/0/2划分到vlan20,把g0/0/3设置成trunk。

<Huawei>system-view

[Huawei]sysname LSW1

[LSW1]undo info-center enable

[LSW1]vlan batch 10 20

[LSW1]interface g0/0/1

[LSW1-GigabitEthernet0/0/1]port link-type access

[LSW1-GigabitEthernet0/0/1]port default vlan 10

[LSW1-GigabitEthernet0/0/1]quit

[LSW1]interface g0/0/2

[LSW1-GigabitEthernet0/0/2]port link-type access

[LSW1-GigabitEthernet0/0/2]port default vlan 20

[LSW1-GigabitEthernet0/0/2]quit

[LSW1]interface g0/0/3

[LSW1-GigabitEthernet0/0/3]port link-type trunk

[LSW1-GigabitEthernet0/0/3]port trunk allow-pass vlan 10 20

[LSW1-GigabitEthernet0/0/3]quit

(3)如图11-1所示,在路由器上配置IP地址,并配置单臂路由让PC1和PC2可以相互访问R1的配置

<Huawei>system-view

[Huawei]undo info-center enable

[Huawei]sysname R1

[R1]interface g0/0/1

[R1-GigabitEthernet0/0/1]undo shutdown

[R1-GigabitEthernet0/0/1]quit

[R1]interface g0/0/1.10

[R1-GigabitEthernet0/0/1.10]dot1q termination vid 10

[R1-GigabitEthernet0/0/1.10]ip address 192.168.10.254 24

[R1-GigabitEthernet0/0/1.10]arp broadcast enable

[R1-GigabitEthernet0/0/1.10]quit

[R1]interface g0/0/1.20

[R1-GigabitEthernet0/0/1.20]dot1q termination vid 20

[R1-GigabitEthernet0/0/1.20]ip address 192.168.20.254 24

[R1-GigabitEthernet0/0/1.20]arp broadcast enable

[R1-GigabitEthernet0/0/1.20]quit

[R1]interface g0/0/0

[R1-GigabitEthernet0/0/0]ip address 10.1.1.254 24

[R1-GigabitEthernet0/0/0]undo shutdown

[R1-GigabitEthernet0/0/0]quit

(4)Server的配置如图11-4所示:

                                             图11-4在server上手动添加IP地址

(5)测试PC1是否可以访问server,结果如图11-5所示:

                           图11-5 PC1上显示的ping程序测试信息

通过以上输出可以看到PC1能访问server

(6)测试PC2是否可以访问server,测试结果如图11-6所示:

                       图11-6 PC2上显示的ping程序测试信息

通过以上输出可以看到PC2也可以访问server

(7)在R1上配置基本的ACL

[R1]acl 2000  // 创建ACL编号为2000

[R1-acl-basic-2000]rule 10 deny source 192.168.20.0 0.0.0.255 //拒绝192.168.20.0网段

[R1-acl-basic-2000]quit

[R1]interface g0/0/1

[R1-GigabitEthernet0/0/1]traffic-filter inbound acl 2000 //在g0/0/口的入方向配置流量过滤,当匹配到acl2000流量则执行相应的过滤掉动作

[R1-GigabitEthernet0/0/1]quit

【技术要点】

基本acl配置过程及参数详解

1、创建基本ACL

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

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

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

2、配置基本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规则生效时间段名称。如果不指定时间段,表示任何时间都生效。

3、traffic-filter命令用来在接口上配置基于ACL对报文进行过滤。Inbound为针对接口入方向进行流量过滤,outbound为针对接口出方向流量进行过滤。

在接口下执行本命令,设备将会过滤匹配ACL规则的报文:

若报文匹配的规则的动作为deny,则直接丢掉该报文。

若报文匹配的规则的动作为permit,则允许该报文通过。

若报文没有匹配任何一条规则,则允许该报文通过。

4、实验调试

(1)测试PC1是否可以访问服务器,结果如图11-7所示:

                             图11-7 PC1上显示的ping程序测试信息

通过以上输出可以看到PC1不可以访问server

(2)测试PC2是否可以访问服务器,结果如图11-8所示:

                                             图11-8 PC2上显示的ping程序测试信息

通过以上输出可以看到PC2可以访问server1,实验结束

【技术要点】

华为ACL总结:如果配置在接口上,则默认规则为允许,如果配置在其他地方,则默认规则为拒绝。

思考:如果只拒绝PC2访问服务器,基本的ACL应该怎么配置?

11.3 实验二:高级ACL

  1. 实验需求
  • 掌握高级ACL的配置方法
  • 掌握高级ACL在接口下的应用方法
  • 掌握流量过滤的基本方式
  1. 实验拓扑

实验拓扑如图11-9所示:

图11-9高级ACL

  1. 实验步骤

(1)配置PC机的IP地址

PC1的配置,在ipv4下选择静态配置,输入对应的ip地址子网掩码和网关,然后点击应用。PC2同理

PC1的配置如图11-10所示:

  图11-10在PC1上手动添加IP地址

PC2的配置如图11-11所示:

                                                 图11-11在PC2上手动添加IP地址

(2)配置路由器R1的IP地址

<Huawei>system-view

[R1]undo info-center enable

[R1]interface g0/0/0

[R1-GigabitEthernet0/0/0]ip address 192.168.10.254 24

[R1-GigabitEthernet0/0/0]undo shutdown

[R1-GigabitEthernet0/0/0]quit

[R1]interface g0/0/1

[R1-GigabitEthernet0/0/1]ip address 192.168.20.254 24

[R1-GigabitEthernet0/0/1]undo shutdown

[R1-GigabitEthernet0/0/1]quit

(2) 测试:PC1访问PC2,结果如图11-12所示:

                           图11-12  PC1上显示的ping程序测试信息

通过以上输出,可以看到PC1可以访问PC2

(3)配置高级ACL()

[R1]acl 3000  //创建ACL编号为3000

[R1-acl-adv-3000]rule 10 deny ip source 192.168.10.0 0.0.0.255 destination 192.168.20.0 0.0.0.255  //拒绝192.168.10.0网段去访问192.168.20.0网段

[R1-acl-adv-3000]quit

[R1]interface g0/0/0

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

[R1-GigabitEthernet0/0/0]quit

【技术要点】

高级acl配置过程及参数详解

1、创建高级ACL

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

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

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

2、配置高级ACL的规则

当参数protocol为IP时:

rule [ rule-id ] { deny | permit } ip [ destination { destination-address destination-wildcard | any } | source { source-address source-wildcard | any } | time-range time-name | [ dscp dscp | [ tos tos | precedence precedence ] ] ]

ip :指定ACL规则匹配报文的协议类型为IP。

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

dscp dscp:指定ACL规则匹配报文时,区分服务代码点(Differentiated Services Code Point),取值为:0~63。

tos tos:指定ACL规则匹配报文时,依据服务类型字段进行过滤,取值为:0~15。

precedence precedence:指定ACL规则匹配报文时,依据优先级字段进行过滤。precedence表示优先级字段值,取值为:0~7。

当参数protocol为TCP时:

rule [ rule-id ] { deny | permit } { protocol-number | tcp } [ destination { destination-address destination-wildcard | any } | destination-port { eq port | gt port | lt port | range port-start port-end } | source { source-address source-wildcard | any } | source-port { eq port | gt port | lt port | range port-start port-end } | tcp-flag { ack | fin | syn } * | time-range time-name ] *

protocol-number | tcp:指定ACL规则匹配报文的协议类型为TCP。可以采用数值6表示指定TCP协议。

destination-port { eq port | gt port | lt port | range port-start port-end}:指定ACL规则匹配报文的UDP或者TCP报文的目的端口,仅在报文协议是TCP或者UDP时有效。如果不指定,表示TCP/UDP报文的任何目的端口都匹配。其中:

eq port:指定等于目的端口;

gt port:指定大于目的端口;

lt port:指定小于目的端口;

range port-start port-end:指定源端口的范围。

tcp-flag:指定ACL规则匹配报文的TCP报文头中SYN Flag。

4、实验调试

(1)测试PC1是否可以访问PC2,结果如图11-13所示:

                                  图11-13 PC1上显示的ping程序测试信息

通过以上输出我们可以看到PC1和PC2不能相互访问了。

(2)为了减少带宽浪费,在R1上作如下配置:

[R1]acl 3001

[R1-acl-adv-3001]rule 10 deny ip source 192.168.20.0 0.0.0.255 destination 192.168.10.0 0.0.0.255

[R1-acl-adv-3001]quit

[R1]interface g0/0/1

[R1-GigabitEthernet0/0/1]traffic-filter inbound acl 3001

[R1-GigabitEthernet0/0/1]quit

分析:PC2访问PC1的流量到达了PC1,PC1的回应包到达了R1的g0/0/0然后丢弃,这样会浪费带宽,所以要加上ACL 3001,这样PC2访问PC1的流量在R1的g0/0/1上就丢弃了。

11.4 实验三:基于时间ACL

  1. 实验需求

①    掌握高级ACL的配置方法

②    掌握高级ACL在接口下的应用方法

③    掌握流量过滤的基本方式

  1. 实验拓扑

实验拓扑如图11-14所示:

                                                   图11-14 基于时间的ACL

  1. 实验步骤

(1):配置IP地址

PC1的配置在ipv4下选择静态配置,输入对应的ip地址以及子网掩码,然后点击应用。如图11-15所示:

  图11-15在PC1上手动添加IP地址

R1的配置

<Huawei>system-view

[Huawei]undo info-center enable

[Huawei]sysname R1

[R1]interface g0/0/0

[R1-GigabitEthernet0/0/0]ip address 192.168.1.254 24

[R1-GigabitEthernet0/0/0]undo shutdown

[R1-GigabitEthernet0/0/0]quit

[R1]interface g0/0/1

[R1-GigabitEthernet0/0/1]ip address 100.1.1.1 24

[R1-GigabitEthernet0/0/1]undo shutdown

[R1-GigabitEthernet0/0/1]quit

R2的配置

<Huawei>system-view

[Huawei]undo info-center enable

[Huawei]sysname R2

[R2]interface g0/0/0

[R2-GigabitEthernet0/0/0]ip address 100.1.1.2 24

[R2-GigabitEthernet0/0/0]undo shutdown

[R2-GigabitEthernet0/0/0]quit

[R2]ip route-static 192.168.1.0 24 100.1.1.1   //配置去PC1所在网段的静态路由

(2)测试PC1是否可以访问R2,结果如图11-16所示:

                                 图11-16 PC1上显示的ping程序测试信息

通过以上输出,可以看到PC1可以访问 R2

(3):配置基于时间的ACL

[R1]time-range hw 8:00 to 17:00  working-day//配置时间段名字为‘hw’,设定时间为作日的早上八点到下午五点

[R1]acl 3000 

[R1-acl-adv-3000]rule 10 permit ip source 192.168.1.0 0.0.0.255 destination 100.1.1.0 0.0.0.255 time-range hw

//在acl3000中调用名字为hw的时间段,该规则表示的意义为匹配源ip为192.168.1.0/24目的ip为100.1.1.0/24在每个工作日早上八点到下午五点的流量,执行动作为允许

[R1-acl-adv-3000]rule 20 deny ip   //华为的ACL默认为允许所有,把以要设置这一条。

[R1]interface g0/0/0

[R1-GigabitEthernet0/0/0]traffic-filter inbound acl 3000   //在接口下调用

[R1-GigabitEthernet0/0/0]quit

  1. 实验调试

(1)查看路由器时间

[R1]display clock

2022-04-09 12:38:29

Saturday

Time Zone(China-Standard-Time) : UTC-08:00

通过以上输出, 可以看到设备显示为周六

(2)看PC1是否可以访问R2,结果如图11-17所示:

                                             图11-17PC1上显示的ping程序测试信息

通过以上输出可以看到,PC1不能访问R2,因为星期六不在time-range hw范围内。

(3)修改R1的时间

<R1>clock datetime 12:00:00 2022-04-08

(4)测试PC1是否可以访问R2,结果如图11-18所示:

                                     图11-18PC1上显示的ping程序测试信息

通过以上输出,我们可以看到PC1可以访问PC2,因为2022年4月8日12:00属于time-range的范围内。

11.5 实验四:使用基本ACL限制telnet登录

  1. 实验目的
  • 配置路由器的vty密码;
  • Tetnet程序的使用
  • 使用基本ACL限制telnet登录

  1. 实验拓扑

实验拓扑如图11-19所示:

图11-19使用基本ACL限制telnet登录

  1. 实验步骤

(1)IP地址的配置

R1的配置

<Huawei>system-view

[Huawei]undo info-center enable

[Huawei]sysname R1

[R1]interface g0/0/1

[R1-GigabitEthernet0/0/1]ip address 192.168.1.254 24

[R1-GigabitEthernet0/0/1]undo shutdown

[R1-GigabitEthernet0/0/1]quit

[R1]interface g0/0/0

[R1-GigabitEthernet0/0/0]ip address 192.168.2.254 24

[R1-GigabitEthernet0/0/0]undo shutdown

[R1-GigabitEthernet0/0/0]quit

R2的配置

<Huawei>system-view

[Huawei]undo info-center enable

[Huawei]sysname R2

[R2]interface g0/0/0

[R2-GigabitEthernet0/0/0]ip address 192.168.1.1 24

[R2-GigabitEthernet0/0/0]undo shutdown

[R2-GigabitEthernet0/0/0]quit

R3的配置

<Huawei>system-view

[Huawei]undo info-center enable

[Huawei]sysname R3

[R3]interface g0/0/1

[R3-GigabitEthernet0/0/1]ip address 192.168.2.1 24

[R3-GigabitEthernet0/0/1]undo shutdown

[R3-GigabitEthernet0/0/1]quit

(2)设置telnet

[R1]user-interface vty 0 4  //进入VTY界面,同时允许5条线路

[R1-ui-vty0-4]authentication-mode password  // 认证模式为密码认证

Please configure the login password (maximum length 16):1234  //密码为1234

[R1-ui-vty0-4]user privilege level 15  //设置用户权限为15

[R1-ui-vty0-4]quit

(3)基本ACL配置

[R1]acl 2000

[R1-acl-basic-2000]rule 10 deny source 192.168.2.1 0.0.0.0

[R1-acl-basic-2000]rule 20 permit  //因为不是应用在接口,所以ACL拒绝所有

[R1]user-interface vty 0 4

[R1-ui-vty0-4]acl 2000 inbound   //在VTY下调用 ACL 2000

[R1-ui-vty0-4]quit

  1. 实验调试

(1)查看R2是否可以telnet R1

<R2>telnet 192.168.1.254

  Press CTRL_] to quit telnet mode

  Trying 192.168.1.254 ...

  Connected to 192.168.1.254 ...

Login authentication

Password:

<R1>

通过以上输出,可以看到R2可以telnet R1。

(3)查看R3是否可以telnet R1

<R3>telnet 192.168.2.254

  Press CTRL_] to quit telnet mode

  Trying 192.168.2.254 ...

通过以上输出可以看到R3不能telnetR1,验证了实验的正确性。

11.6 实验五:自反ACL

  1. 实验需求

① 掌握高级自反ACL的配置方法

② 掌握自反ACL在接口下的应用方法

③掌握流量过滤的基本方式

  1. 实验拓扑

实验拓扑如图11-20所示:

图11-20自反ACL

  1. 实验步骤

(1)IP地址的配置

PC1的配置在ipv4下选择静态配置,输入对应的ip地址子网掩码和网关,然后点击应用。如图11-21所示:

             图11-21在PC1上手动添加IP地址

PC2的配置如图11-22所示:

  图11-22在PC2上手动添加IP地址

R1的配置

<Huawei>system-view

[Huawei]undo info-center enable

[Huawei]sysname R1

[R1]interface g0/0/0

[R1-GigabitEthernet0/0/0]ip address 192.168.1.254 24

[R1-GigabitEthernet0/0/0]undo shutdown

[R1-GigabitEthernet0/0/0]quit

[R1]interface g0/0/1

[R1-GigabitEthernet0/0/1]ip address 192.168.2.254 24

[R1-GigabitEthernet0/0/1]undo shutdown

[R1-GigabitEthernet0/0/1]quit

(2)测试PC1和PC2的连通性

PC1访问PC2,结果如图11-23所示:

                             图11-23PC1上显示的ping程序测试信息 

通过以上输出可以看到PC1可以访问PC2。

PC2访问PC1,结果如图11-24所示:

                                图11-24PC2上显示的ping程序测试信息 

通过以上输出可以看到PC2可以访问PC1。

(3)使用高级ACL实现单向访问控制

[R1]acl 3000

[R1-acl-adv-3000]rule 10 permit tcp source 192.168.2.0 0.0.0.255 destination 192.168.1.0 0.0.0.255 tcp-flag syn ack  //允许员工办公室到总裁办公室的syn+ack报文通过,即允许对总裁办公室发起的TCP连接进行回应

[R1-acl-adv-3000]rule 20 deny tcp source 192.168.2.0 0.0.0.255 destination 192.168.1.0 0.0.0.255 tcp-flag syn  //拒绝员工办公室到总裁办公室的syn请求报文通过,防止员工办公室主动发起TCP连接

[R1-acl-adv-3000]rule 30 deny icmp source 192.168.2.0 0.0.0.255 destination 192.168.1.0 0.0.0.255 icmp-type echo  //拒绝员工办公室到总裁办公室的echo请求报文通过,防止员工办公室主动发起ping连通性测试。

[R1]interface g0/0/1

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

[R1-GigabitEthernet0/0/1]quit

  1. 实验调试

(1)测试PC1是否可以访问PC2,结果如图11-25所示:

                                     图11-25 PC1上显示的ping程序测试信息 

通过以上输出,可以看到PC1可以访问PC2。

(2)测试PC2是否可以访问PC1,结果如图11-26所示:

                                  图11-26PC2上显示的ping程序测试信息 

通过以上输出可以看到PC2不能主动访问PC1,达到实验目的,实验结束。

11.7 ACL命令汇总

同上表11-1列出了本章出现的命令

                                                                    表11-1 ACL命令汇总

命令

作用

acl 2000

创建ACL2000

rule deny source 192.168.1.0  0.0.0.255

拒绝192.168.1.0这个网段

traffic-filter inbound acl 2000

在接口上配置基于ACL对报文进行过滤。

display acl

查看ACL的配置信息

time-range

定义时间

display time-range

查看时间段信息

本文出自作者的《华为认证HCIA-datacom认证实验指南》

  • 3
    点赞
  • 66
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值