acl
交换机 s2000-HI
ACL
访问控制列表 主要用来实现流识别功能。网络设备为
了过滤数据包,需要配置一系列的匹配规则,以识别需要过滤的报文。在识别出特
定的报文之后,才能根据预先设定的策略允许或禁止相应的数据包通过。
ACL 通过一系列的匹配条件对数据包进行分类,这些条件可以是数据包的源地址、
目的地址、端口号等。
由ACL 定义的数据包匹配规则,可以被其它需要对流量进行区分的功能引用,如
QoS 中流分类规则的定义。
根据应用目的,可将ACL 分为下面几种:
基本ACL :只根据三层源IP 地址制定规则。
高级ACL :根据数据包的源 IP 地址信息、目的 IP 地址信息、IP 承载的协议类
型、协议特性等三、四层信息制定规则。
二层ACL :根据源MAC地址、目的MAC地址、VLAN 优先级、二层协议类
型等二层信息制定规则。
ACL 在交换机上的应用方式
1. ACL直接下发到硬件中的情况
交换机中ACL 可以直接下发到交换机的硬件中用于数据转发过程中报文的过滤和
流分类。此时一条 ACL 中多个规则的匹配顺序是由交换机的硬件决定的,用户即使
在定义ACL 时配置了匹配顺序,该匹配顺序也不起作用。
ACL 直接下发到硬件的情况包括:交换机实现 QoS 功能时引用ACL 、通过 ACL 过
滤转发数据等。
2. ACL被上层模块引用的情况
交换机也使用ACL 来对由软件处理的报文进行过滤和流分类。此时ACL 规则的匹
配顺序有两种:config(指定匹配该规则时按用户的配置顺序)和 auto(指定匹配
该规则时系统自动排序,即按“深度优先”的顺序)。这种情况下用户可以在定义
ACL 的时候指定一条ACL 中多个规则的匹配顺序。用户一旦指定某一条ACL 的匹
配顺序,就不能再更改该顺序。只有把该列表中所有的规则全部删除后,才能重新
指定其匹配顺序。
ACL 被软件引用的情况包括:对登录用户进行控制时引用ACL 等。
ACL 匹配顺序
ACL 支持两种匹配顺序:
配置顺序:根据配置顺序匹配ACL 规则。
自动排序:根据“深度优先”规则匹配ACL 规则。
“深度优先”的原则是指:把指定数据包范围最小的语句排在最前面。这一
点可以通过比较地址的通配符来实现,通配符越小,则指定的主机的范围就
越小。比如129.102.1.1 0.0.0.0 指定了一台主机:129.102.1.1,而129.102.1.1
0.0.255.255 则指定了一个网段:129.102.1.1~129.102.255.255。显然前者
在访问控制规则中排在前面。具体标准为:对于基本访问控制规则的语句,
直接比较源地址通配符,通配符相同的则按配置顺序;对于基于接口过滤的
访问控制规则,配置了“any ”的规则排在后面,其它按配置顺序;对于高级
访问控制规则,首先比较源地址通配符,相同的再比较目的地址通配符,仍
相同的则比较端口号的范围,范围小的排在前面,如果端口号范围也相同则
按配置顺序。
基于时间段的ACL
基于时间段的ACL 使用户可以区分时间段对报文进行ACL 控制。
ACL 中的每条规则都可选择一个时间段。如果规则引用的时间段未配置,则系统给
出提示信息,并允许这样的规则创建成功。但是规则不能立即生效,直到用户配置
了引用的时间段,并且系统时间在指定时间段范围内才能生效。如果用户手工删除
ACL 规则引用的时间段,则在ACL 规则定时器刷新后,该规则将失效。
交换机支持的ACL 如下:
基本ACL
高级ACL
S2000-HI交换机上定义的ACL 只能用于被上层模块引用的情况,不能下发到硬件。
在同一个名字下可以配置多个时间段,这些时间段之间是“或”的关系。
案例
配置时间段,取值为周一到周五每天8:00 到18:00。
und 基本ACL 的序号取值范围为2000~2999。注意:
在定义ACL 规则时如果不指定编号,用户将创建并定义一个新规则,设备将自动为
这个规则分配一个编号。
配置ACL 2000,禁止源地址为1.1.1.1的报文通过
定义高级ACL
高级ACL 可以使用数据包的源地址信息、目的地址信息、IP 承载的协议类型、针对
协议的特性,例如TCP 或UDP的源端口、目的端口,TCP 标记,ICMP 协议的类
型、code等内容定义规则。
高级ACL 序号取值范围3000~3999。
高级ACL 支持对三种报文优先级的分析处理:ToS (Type Of Service,服务类型)
优先级、IP 优先级和DSCP (Differentiated Services Codepoint Priority,差分服务
编码点优先级)。
用户可以利用高级ACL 定义比基本ACL 更准确、更丰富、更灵活的规则。
注意
sour-wildcard 与dest -wildcard 为目标子网掩码的反码,点分十进制表示。例如,如
果用户想指定子网掩码255.255.0.0,则需要输入0.0.255.255。可以为0,表示主
机地址。
如果选择dscp关键字直接输入数值0~63
如果选择precedence关键字直接输入数值0~7
如果选择tos 关键字直接输入数值 0~15
对于在定义ACL 规则时指定编号的情况
如果指定编号对应的规则已经存在,用户将编辑该规则,规则中编辑后的部分
将覆盖原来的内容,未被编辑的部分保持不变;
如果指定编号对应的规则不存在,用户将创建并定义一个新的规则。
编辑后或新创建的规则不能和已经存在的规则内容完全相同,否则会导致编辑
或创建不成功,系统会提示该规则已经存在。
这个规则分配一个编号。
配置ACL 3000,允许从 129.9.0.0网段的主机向202.38.160.0 网段的主机发送的
端口号为80的报文通过。
<Quidway>system-view
[Quidway] acl number 3000
ACL S3500系列以太网交换机
定义高级访问控制列表
高级访问控制列表根据源IP 、目的IP 、使用的TCP 或UDP端口号、报文优
先级等数据包的属性信息制定分类规则,对数据包进行相应的处理。高级访
问控制列表支持对三种报文优先级的分析处理:TOS(Type Of Service)优先
级、IP 优先级和 DSCP 优先级。
基于数字表示的高级访问控制列表198 、199 号ACL 是交换机预留给集群模
块的。如果交换机没有启动集群,用户可以对这两条访问控制列表进行配置
和修改,但是此后如果用户在交换机上打开了集群特性,集群产生的访问控
制列表将自动取代用户配置的访问控制列表。如果交换机上已经启动了集群
特性,将禁止用户进行配置和修改,但是用户可以在其它应用中引用198 、
199 号ACL 规则,也可以查看这两条规则。
高级访问控制列表的数字标识取值范围为100 ~199 。
需要注意的是,上面命令中的port1、port2 参数指的是各种高层应用使用的
TCP 或者UDP的端口号,对于部分常见的端口号,可以用相应的助记符来代
替其实际数字,如使用“bgp ”来代替BGP协议使用的 TCP 端口号179 。
说明:
对于S3026 FM、S3026 FS、S3526 、S3526 FM、S3526 FS交换机,用户
在配置IP-any 的规则的时候,即源地址为主机IP 地址,目的地址为任意IP
地址,不能配置协议类型(即rule 命令中protocol 参数)。如果用户配置了
协议类型,交换机会返回配置错误信息。
基于数字标识的接口访问控制列表的数字标识的取值范围为1000~1999
说明:
在以太网交换机中,不存在三层物理接口,只存在三层Vlan 虚接口,因此当
命令行提示用户输入接口类型时,只能选择 Vlan-interface型的接口,选择了
其他类型的接口类型,命令行将会提示失败
定义二层访问控制列表
二层访问控制列表根据源MAC地址、源 VLAN ID 、二层协议类型、报文二层
接收端口、报文二层转发端口、目的 MAC地址等二层信息制定规则,对数据
进行相应处理。
二层访问控制列表的数字标识取值范围为200 ~299 。
激活访问控制列表
将访问控制列表定义好后,必须激活之后才能使之生效。本配置用来激活那
些对交换机硬件转发的数据进行过滤或分类的访问控制列表。
本命令支持同时激活二层访问控制列表和IP 访问控制列表(IP 访问控制列表
包括基本访问控制列表、高级访问控制列表),但是要求组合项的动作一致,
如果动作冲突(一个是permit ,而另一个是deny)则不能激活。
公司企业网通过Switch 的百兆端口实现各部门之间的互连。财务部门的工资
查询服务器由Ethernet2/1端口接入(子网地址129.110.1.2)。要求正确配
置ACL ,限制其它部门在上班时间 8:00 至12:00 访问工资服务器,而总裁办
公室(IP 地址:129.111.1.2)不受限制,可以随时访问。
定义上班时间段
# 定义8:00 至18:00 的周期时间段。
[Quidway] time-range huawei 8:00 to 18:00 working-day
(2) 定义到工资服务器的ACL
进入基于名字的高级访问控制列表视图,命名为traffic-of-payserver 。
[Quidway] acl name traffic-of-payserver advanced
# 定义其它部门到工资服务器的访问规则。
[Quidway-acl-adv-traffic-of-payserver] rule 1 deny ip source any destination
129.110.1.2 0.0.0.0 time-range huawei
# 定义总裁办公室到工资服务器的访问规则。
[Quidway-acl-adv-traffic-of-payserver] rule 2 permit ip source 129.111.1.2
0.0.0.0 destination 129.110.1.2 0.0.0.0
(3) 激活ACL 。
# 将traffic-of-payserver 的ACL 激活。
[Quidway] packet-filter ip-g roup traffic-of-payserver
配置对TELNET 用户的ACL 控制
通过配置对TELNET 用户的 ACL 控制,可以在进行口令认证之前将一些恶意
或者不合法的连接请求过滤掉,保证设备的安全。
ACL 控制功能能够引用的访问控制列表只能是基于数字标识的基本访
问控制列表,数字的取值范围为1~99。
注意
在定义过程中,可以多次使用rule 命令给同一个访问控制列表定义多条规则。
TELNET 用户的ACL 控制功能只能引用基于数字标识的基本访问控制列表
定义基本访问控制列表。
[Quidway] acl number 20 match-order config
[Quidway-acl-20] rule 1 pe rmit source 10.110.100.52 0
[Quidway-acl-20] rule 2 pe rmit source 10.110.100.46 0
[Quidway-acl-20] quit
# 引用访问控制列表。
[Quidway] user-interface vty 0 4
[Quidway-user-interface-vty0-4] acl 20 inbound
对通过SNMP 访问交换机的用户的ACL 控制
仅允许来自10.110.100.52 和10.110.100.46 的SNMP 用户访问交换机。
[Quidway] acl number 21 match-order config
[Quidway-acl-21] rule 1 pe rmit source 10.110.100.46 0
[Quidway-acl-21] quit
[Quidway] acl number 22 match-order config
[Quidway-acl-22] rule 1 pe rmit source 10.110.100.55 0
[Quidway-acl-22] quit
引用访问控制列表。
[Quidway] snmp-agent community read huawei acl 20
[Quidway] snmp-agent group v2c huaweigroup acl 21
[Quidway] snmp-agent usm-user v2c huaweiuser huaweigroup acl 22
对通过HTTP 访问交换机的用户的 ACL 控制