组网图形
访问控制列表ACL(Access Control List)是由一条或多条规则组成的集合。所谓规则,是指描述报文匹配条件的判断语句,这些条件可以是报文的源地址、目的地址、端口号等。
ACL本质上是一种报文过滤器,规则是过滤器的滤芯。设备基于这些规则进行报文匹配,可以过滤出特定的报文,并根据应用ACL的业务模块的处理策略来允许或阻止该报文通过。
基于ACL规则定义方式,可以将ACL分为基本ACL、高级ACL、二层ACL等种类。基本ACL根据源IP地址、分片信息和生效时间段等信息来定义规则,对IPv4报文进行过滤。如果只需要根据源IP地址对报文进行过滤,可以配置基本ACL。
本例,就是将基本ACL应用在流策略模块,使设备可以对内网主机访问外网的报文进行过滤,达到限制内网特定主机上网的目的。
本举例适用于S系列交换机所有产品的所有版本。
以下涉及的命令行及回显信息以V200R007C00版本的S7712交换机为例。
如图1所示,某公司通过Switch实现各部门之间的互连。现要求Switch能够禁止研发部和市场部的部分主机访问外网,防止公司机密泄露。
采用如下的思路在Switch上进行配置:
# 创建VLAN10和VLAN20。
<HUAWEI> system-view
[HUAWEI] sysname Switch
[Switch] vlan batch 10 20
# 配置Switch的接口GE1/0/1、GE1/0/2为trunk类型接口,并分别加入VLAN10和VLAN20;配置Switch的接口GE2/0/1为trunk类型接口,加入VLAN10和VLAN20。
[Switch] interface gigabitethernet 1/0/1
[Switch-GigabitEthernet1/0/1] port link-type trunk
[Switch-GigabitEthernet1/0/1] port trunk allow-pass vlan 10
[Switch-GigabitEthernet1/0/1] quit
[Switch] interface gigabitethernet 1/0/2
[Switch-GigabitEthernet1/0/2] port link-type trunk
[Switch-GigabitEthernet1/0/2] port trunk allow-pass vlan 20
[Switch-GigabitEthernet1/0/2] quit
[Switch] interface gigabitethernet 2/0/1
[Switch-GigabitEthernet2/0/1] port link-type trunk
[Switch-GigabitEthernet2/0/1] port trunk allow-pass vlan 10 20
[Switch-GigabitEthernet2/0/1] quit
# 创建VLANIF10和VLANIF20,并配置各VLANIF接口的IP地址。
[Switch] interface vlanif 10
[Switch-Vlanif10] ip address 10.1.1.1 24
[Switch-Vlanif10] quit
[Switch] interface vlanif 20
[Switch-Vlanif20] ip address 10.1.2.1 24
[Switch-Vlanif20] quit
# 创建基本ACL 2001并配置ACL规则,拒绝源IP地址为10.1.1.11和10.1.2.12的主机的报文通过。
[Switch] acl 2001
[Switch-acl-basic-2001] rule deny source 10.1.1.11 0 //禁止IP地址为10.1.1.11的主机访问外网
[Switch-acl-basic-2001] rule deny source 10.1.2.12 0 //禁止IP地址为10.1.2.12的主机访问外网
[Switch-acl-basic-2001] quit
# 配置流分类tc1,对匹配ACL 2001的报文进行分类。
[Switch] traffic behavior tb1 //创建流行为
[Switch-behavior-tb1] deny //配置流行为动作为拒绝报文通过
[Switch-behavior-tb1] quit
# 配置流行为tb1,动作为拒绝报文通过。
[Switch] traffic behavior tb1 //创建流行为
[Switch-behavior-tb1] deny //配置流行为动作为拒绝报文通过
[Switch-behavior-tb1] quit
# 定义流策略,将流分类与流行为关联。
[Switch] traffic policy tp1 //创建流策略
[Switch-trafficpolicy-tp1] classifier tc1 behavior tb1 //将流分类tc1与流行为tb1关联
[Switch-trafficpolicy-tp1] quit
# 由于内网主机访问外网的流量均从接口GE2/0/1出口流向Internet,所以可以在接口GE2/0/1的出方向应用流策略。
[Switch] interface gigabitethernet 2/0/1
[Switch-GigabitEthernet2/0/1] traffic-policy tp1 outbound //流策略应用在接口出方向
[Switch-GigabitEthernet2/0/1] quit
# 查看ACL规则的配置信息。
[Switch] display acl 2001
Basic ACL 2001, 2 rules
Acl's step is 5
rule 5 deny source 10.1.1.11 0 (match-counter 0)
rule 10 deny source 10.1.2.12 0 (match-counter 0)
# 查看流分类的配置信息。
[Switch] display traffic classifier user-defined
User Defined Classifier Information:
Classifier: tc1
Precedence: 5
Operator: OR
Rule(s) : if-match acl 2001
Total classifier number is 1
# 查看流策略的配置信息。
[Switch] display traffic policy user-defined tp1
User Defined Traffic Policy Information:
Policy: tp1
Classifier: tc1
Operator: OR
Behavior: tb1
Deny
# IP地址为10.1.1.11和10.1.2.12的主机无法访问外网,其他主机均可以访问外网。
Switch的配置文件
#
sysname Switch
#
vlan batch 10 20
#
acl number 2001
rule 5 deny source 10.1.1.11 0
rule 10 deny source 10.1.2.12 0
#
traffic classifier tc1 operator or precedence 5
if-match acl 2001
#
traffic behavior tb1
deny
#
traffic policy tp1 match-order config
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
#
interface GigabitEthernet1/0/2
port link-type trunk
port trunk allow-pass vlan 20
#
interface GigabitEthernet2/0/1
port link-type trunk
port trunk allow-pass vlan 10 20
traffic-policy tp1 outbound
#
return