小乔 发表于 2022-5-6 13:48:11

华为访问控制列表ACL配置详解

ACL简介
介绍ACL的定义和作用。

定义
访问控制列表ACL(Access Control List)是由一条或多条规则组成的集合。所谓规则,是指描述报文匹配条件的判断语句,这些条件可以是报文的源地址、目的地址、端口号等。

ACL本质上是一种报文过滤器,规则是过滤器的滤芯。设备基于这些规则进行报文匹配,可以过滤出特定的报文,并根据应用ACL的业务模块的处理策略来允许或阻止该报文通过。


配置ACL后,还需将ACL在业务模块中应用,ACL才能生效。

ACL可以应用于诸多业务模块,其中最基本的ACL应用,就是在简化流策略/流策略中应用ACL,使设备能够基于全局、VLAN或接口下发ACL,实现对转发报文的过滤。此外,ACL还可以应用在Telnet、FTP、路由等模块。业务模块之间的ACL默认处理动作和处理机制有所不同,具体请参见ACL应用模块的ACL默认动作和处理机制。

目的
随着网络的飞速发展,网络安全和网络服务质量QoS(Quality of Service)问题日益突出。
企业重要服务器资源被随意访问,企业机密信息容易泄露,造成安全隐患。

Internet病毒肆意侵略企业内网,内网环境的安全性堪忧。

网络带宽被各类业务随意挤占,服务质量要求最高的语音、视频业务的带宽得不到保障,造成用户体验差。

以上种种问题,都对正常的网络通信造成了很大的影响。因此,提高网络安全性服务质量迫在眉睫。ACL就在这种情况下应运而生了。

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

某企业为保证财务数据安全,禁止研发部门访问财务服务器,但总裁办公室不受限制。实现方式:

在Interface 1的入方向上部署ACL,禁止研发部门访问财务服务器的报文通过。Interface 2上无需部署ACL,总裁办公室访问财务服务器的报文默认允许通过。

保护企业内网环境安全,防止Internet病毒入侵。实现方式:

在Interface 3的入方向上部署ACL,将病毒经常使用的端口予以封堵。

ACL由一系列规则组成,通过将报文与ACL规则进行匹配,设备可以过滤出特定的报文。ACL的组成一条ACL的结构组成,如图4-2所示。图4-2ACL的结构组成
https://download.huawei.com/mdl/image/download?uuid=5daa98ed0ea24017bdb189847b968282


[*]ACL编号:用于标识ACL,表明该ACL是数字型ACL。根据ACL规则功能的不同,ACL被划分为基本ACL、高级ACL、二层ACL和用户ACL这几种类型,每类ACL编号的取值范围不同。关于每类ACL编号的详细介绍,请参见ACL的分类。除了可以通过ACL编号标识ACL,设备还支持通过名称来标识ACL,就像用域名代替IP地址一样,更加方便记忆。这种ACL,称为命名型ACL。命名型ACL实际上是“名字+数字”的形式,可以在定义命名型ACL时同时指定ACL编号。如果不指定编号,则由系统自动分配。例如,下面就是一个既有名字“deny-telnet-login”又有编号“3998”的ACL。#                                                                               acl name deny-telnet-login 3998                                                rule 0 deny tcp source 10.152.0.0 0.0.63.255 destination 10.64.0.97 0 destination-port eq telnet                                                                rule 5 deny tcp source 10.242.128.0 0.0.127.255 destination 10.64.0.97 0 destination-port eq telnet                                                            #                        
[*]规则:即描述报文匹配条件的判断语句。
[*]规则编号:用于标识ACL规则。可以自行配置规则编号,也可以由系统自动分配。ACL规则的编号范围是0~4294967294,所有规则均按照规则编号从小到大进行排序。所以,图4-2中的rule 5排在首位,而规则编号最大的rule 4294967294排在末位。系统按照规则编号从小到大的顺序,将规则依次与报文匹配,一旦匹配上一条规则即停止匹配。
[*]动作:包括permit/deny两种动作,表示允许/拒绝。
[*]匹配项:ACL定义了极其丰富的匹配项。除了图4-2中的源地址和生效时间段,ACL还支持很多其他规则匹配项。例如,二层以太网帧头信息(如源MAC、目的MAC、以太帧协议类型)、三层报文信息(如目的地址、协议类型)以及四层报文信息(如TCP/UDP端口号)等。关于每种匹配项的详细介绍,请参见ACL的常用匹配项。
https://download.huawei.com/mdl/image/download?uuid=4b128745a0de49b38ec21fbcc77f5d9c如果设备启动使用的配置文件中配置了超规格的ACL规则,当设备启动加载该配置文件时,能生成ACL配置,但有部分配置不生效。



ACL的匹配机制设备将报文与ACL规则进行匹配时,遵循“一旦命中即停止匹配”的机制,如图4-3所示。图4-3ACL的匹配机制
https://download.huawei.com/mdl/image/download?uuid=cf0059508bd94a99bf6977026d0ecb9a

首先系统会查找设备上是否配置了ACL。
[*]如果ACL不存在,则返回ACL匹配结果为:不匹配。
[*]如果ACL存在,则查找设备是否配置了ACL规则。
[*]如果规则不存在,则返回ACL匹配结果为:不匹配。
[*]如果规则存在,则系统会从ACL中编号最小的规则开始查找。
[*]如果匹配上了permit规则,则停止查找规则,并返回ACL匹配结果为:匹配(允许)。
[*]如果匹配上了deny规则,则停止查找规则,并返回ACL匹配结果为:匹配(拒绝)。
[*]如果未匹配上规则,则继续查找下一条规则,以此循环。如果一直查到最后一条规则,报文仍未匹配上,则返回ACL匹配结果为:不匹配。



从整个ACL匹配流程可以看出,报文与ACL规则匹配后,会产生两种匹配结果:“匹配”和“不匹配”。
[*]匹配(命中规则):指存在ACL,且在ACL中查找到了符合匹配条件的规则。不论匹配的动作是“permit”还是“deny”,都称为“匹配”,而不是只是匹配上permit规则才算“匹配”。
[*]不匹配(未命中规则):指不存在ACL,或ACL中无规则,再或者在ACL中遍历了所有规则都没有找到符合匹配条件的规则。以上三种情况,都叫做“不匹配”。



使用高级ACL限制不同网段的用户互访示例
组网需求如图4-17所示,某公司通过Router实现各部门之间的互连。为方便管理网络,管理员为公司的研发部和市场部规划了两个网段的IP地址。同时为了隔离广播域,又将两个部门划分在不同VLAN之中。现要求Router能够限制两个网段之间互访,防止公司机密泄露。图4-17使用高级ACL限制不同网段的用户互访示例
https://download.huawei.com/mdl/image/download?uuid=f06a152ce9284ff48ab251c068acfe48



配置思路采用如下的思路在Router上进行配置:
[*]配置高级ACL和基于ACL的流分类,使设备可以对研发部与市场部互访的报文进行过滤。
[*]配置流行为,拒绝匹配上ACL规则的报文通过。
[*]配置并应用流策略,使ACL和流行为生效。



操作步骤
配置接口所属的VLAN以及接口的IP地址
# 创建VLAN10和VLAN20。

<Huawei> system-view
sysname Router
vlan batch 10 20
# 配置Router的接口GE1/0/1和GE1/0/2为trunk类型接口,并分别加入VLAN10和VLAN20。

interface gigabitethernet 1/0/1
port link-type trunk
port trunk allow-pass vlan 10
quit
interface gigabitethernet 1/0/2
port link-type trunk
port trunk allow-pass vlan 20
quit
# 创建VLANIF10和VLANIF20,并配置各VLANIF接口的IP地址。

interface vlanif 10
ip address 10.1.1.1 24
quit
interface vlanif 20
ip address 10.1.2.1 24
quit
配置ACL
# 创建高级ACL 3001并配置ACL规则,拒绝研发部访问市场部的报文通过。

acl 3001
rule deny ip source 10.1.1.0 0.0.0.255 destination 10.1.2.0 0.0.0.255
quit
# 创建高级ACL 3002并配置ACL规则,拒绝市场部访问研发部的报文通过。

acl 3002
rule deny ip source 10.1.2.0 0.0.0.255 destination 10.1.1.0 0.0.0.255
quit
配置基于高级ACL的流分类
# 配置流分类tc1,对匹配ACL 3001和ACL 3002的报文进行分类。

traffic classifier tc1
if-match acl 3001
if-match acl 3002
quit
配置流行为
# 配置流行为tb1,动作为拒绝报文通过。

traffic behavior tb1
deny
quit
配置流策略
# 定义流策略,将流分类与流行为关联。

traffic policy tp1
classifier tc1 behavior tb1
quit
在接口下应用流策略
# 由于研发部和市场部互访的流量分别从接口GE1/0/1和GE1/0/2进入Router,所以在接口GE1/0/1和GE1/0/2的入方向应用流策略。

interface gigabitethernet 1/0/1
traffic-policy tp1 inbound
quit
interface gigabitethernet 1/0/2
traffic-policy tp1 inbound
quit
验证配置结果
# 查看ACL规则的配置信息。

display acl 3001
Advanced ACL 3001, 1 rule                                                      
Acl's step is 5                                                               
rule 5 deny ip source 10.1.1.0 0.0.0.255 destination 10.1.2.0 0.0.0.255
display acl 3002
Advanced ACL 3002, 1 rule                                                      
Acl's step is 5                                                               
rule 5 deny ip source 10.1.2.0 0.0.0.255 destination 10.1.1.0 0.0.0.255
# 查看流分类的配置信息。

display traffic classifier user-defined
User Defined Classifier Information:                                          
   Classifier: class1                                                         
    Operator: OR                                                               
    Rule(s) :-none-                                                         
   Classifier: tc1                                                            
    Operator: OR                                                               
    Rule(s) :                                                                  
   if-match acl 3001                                                         
   if-match acl 3002
# 查看流策略的配置信息。

display traffic policy user-defined tp1
User Defined Traffic Policy Information:                                    
Policy: tp1                                                                  
   Classifier: tc1                                                            
    Operator: OR                                                               
   Behavior: tb1                                                            
      Deny                                                                     

# 研发部和市场部所在的两个网段之间不能互访。

配置文件
Router的配置文件

#
sysname Router
#
vlan batch 10 20
#
acl number 3001                                                               
rule 5 deny ip source 10.1.1.0 0.0.0.255 destination 10.1.2.0 0.0.0.255      
acl number 3002                                                               
rule 5 deny ip source 10.1.2.0 0.0.0.255 destination 10.1.1.0 0.0.0.255
#
traffic classifier tc1 operator or   
if-match acl 3001                                                            
if-match acl 3002   
#
traffic behavior tb1
deny
#
traffic policy tp1
classifier tc1 behavior tb1
#
interface Vlanif10
ip address 10.1.1.1 255.255.255.0
#
interface Vlanif20
ip address 10.1.2.1 255.255.255.0
#
interface GigabitEthernet1/0/1
port link-type trunk                                                         
port trunk allow-pass vlan 10
traffic-policy tp1 inbound
#
interface GigabitEthernet1/0/2
port link-type trunk                                                         
port trunk allow-pass vlan 20
traffic-policy tp1 inbound
#
return



**** Hidden Message *****




yang11 发表于 2022-5-6 14:48:05

{:6_269:}{:6_267:}

bluesky9611 发表于 2022-5-7 08:33:15

非常好,谢谢了!!!

朱大帅爱皇马 发表于 2022-5-7 08:33:46

感谢楼主分享!

hh00a1 发表于 2022-6-1 15:15:24

66666666666666

guptmzh 发表于 2022-8-15 15:37:00

很不错的HCIA HCIP全套视频

judsonjia1 发表于 2022-8-16 11:41:42

好资料

cpukdi 发表于 2022-8-17 12:54:31

{:1_1:}
页: [1]
查看完整版本: 华为访问控制列表ACL配置详解