华为交换机Vlan间访问控制配置案例

华为交换机ACL/QOS调用ACL配置案例

1 ACL概述

随着网络规模的扩大和流量的增加,对网络安全的控制和对带宽的分配成为网络管理的重要内容。

通过对报文进行过滤,可以有效防止非法用户对网络的访问,同时也可以控制流量,节约网络资源。

ACL(Access Control List,访问控制列表)即是通过配置对报文的匹配规则和处理操作来实现包

过滤的功能。

ACL 通过一系列的匹配条件对报文进行分类,这些条件可以是报文的源 MAC 地址、目的 MAC 地

址、源 IP地址、目的 IP地址、端口号等。

2 案例背景

网络环境拓扑如下(客户端接入交换机约有几十个,所有设备均采用静态IP)

clip_image001

服务器区所有服务器网关均在核心交换机上,共有9个Vlan,9个网段分别如下;

Vlan10-Vlan11网段分别为10.0.10.0/24-10.0.11.0/24

Vlan14-Vlan19网段分别为10.0.14.0/24-10.0.19.0/24

交换机管理Vlan为Vlan1: 10.0.13.0/24,核心交换机的管理ip为10.0.13.254,其余接入交换机网关均在核心交换机上;

客户端共有8个Vlan,分别为Vlan20-Vlan100,网段分别为10.0.20.0/24-10.0.100.0/24,网关均在核心交换机上;

3 需求一:对服务器区服务器做安全防护,只允许客户端访问服务器某些端口

由于网络环境拓扑为 客户端——客户端接入交换机——核心交换机——防火墙——服务器接入交换机——服务器,也即客户端访问服务器需要通过防火墙,所以对服务器的防护应该放到防火墙上来做,因为若用交换机来做过滤,配置麻烦且失去了防火墙应有的作用(此处不做防火墙配置介绍);

4 需求二:交换机只允许固定管理员通过ssh登陆

此处做防护有较为方便的俩种方法

一:在所有交换机配置VTY时,调用ACL只允许源为网络管理员的IP访问,但此方法虽配置不复杂,但是配置工作量较大需要在所有交换机上配置,而且不灵活例如在网络管理员人员或者IP变迁时,需要重新修改所有交换机ACL,所以并不是首选方案;

二:因为管理交换机管理Vlan与所有客户端Vlan不在同一Vlan,也即客户端访问接入交换机必须通过核心交换机,所以可以在核心交换机上做ACL来控制客户端访对接入交换机的访问,核心交换机的访问通过VTY来调用ACL;

配置部分在下面;

5 需求三:客户端VLAN之间不能互相访问,客户端只允许访问服务器VLAN

一:在核心交换机上的所有链接客户端接入交换机端口做ACL,只放行访问服务器的流量,拒绝其余流量,但由于客户端接入交换机约有几十台,所以配置工作量大几十个端口都需要配置,所以也不是首选方案;

二:在核心交换机上的客户端Vlan做Acl,只放行访问服务器的流量,拒绝其余流量,由于客户端Vlan共有8个所以相对于在物理接口上做ACL而言,工作量较小,所以选择此方案;

6 配置部分

6.1 ACL配置部分

acl number 2000

rule 5 permit source 10.0.20.11 0

rule 10 permit source 10.0.21.15 0

rule 15 deny

//定义允许访问核心交换机的俩位网络管理员IP地址;

acl number 3000

rule 51 permit ip destination 10.0.10.0 0.0.0.255

rule 53 permit ip destination 10.0.12.0 0.0.0.255

rule 55 permit ip destination 10.0.14.0 0.0.0.255

rule 56 permit ip destination 10.0.15.0 0.0.0.255

rule 57 permit ip destination 10.0.16.0 0.0.0.255

rule 58 permit ip destination 10.0.17.0 0.0.0.255

rule 59 permit ip destination 10.0.18.0 0.0.0.255

rule 60 permit ip destination 10.0.19.0 0.0.0.255

//定义所有客户端只允许访问服务器Vlan

rule 71 permit tcp source 10.0.20.11 0 destination 10.0.13.0 0.0.0.255 destination-port eq 22

rule 72 permit tcp source 10.0.21.15 0 destination 10.0.13.0 0.0.0.255 destination-port eq 22

//定义允许访问核心交换机的tcp22端口(即SSH)的俩位网络管理员IP;

acl number 3100

rule 5 permit ip

//拒绝除允许网段外的其余所有流量

//由于此处的acl3000及3100是给下面的QOS做调用的,所以此处的permit或deny不起作用,随意设置即可;

6.2 Qos调用部分

traffic classifier 3000 operator or precedence 5

if-match acl 3000

// 定义名为classifier 3000的流分类,并调用ACL3000

traffic classifier 3100 operator or precedence 10

if-match acl 3100

// 定义名为classifier 3100的流分类,并调用ACL3100

//定义流分类

traffic behavior 3000

permit

//定义名为behavior 3000的流行为,并赋予允许值

traffic behavior 3100

deny

//定义名为behavior 3100的流行为,并赋予拒绝值

//定义流行为

//上面ACL的允许或拒绝不起作用,通过此处来定义拒绝或允许

traffic policy 634acl

classifier 3000 behavior 3000

classifier 3100 behavior 3100

//定义名为policy 634acl流策略,并将classifier 3000流分类与behavior 3000流行为关联,以及classifier 3100流分类与behavior 3100流行为关联(注意:允许在前,拒绝在后);

vlan 20

description kjfzb jimi

traffic-policy 634acl inbound

//依次登录客户端Vlan应用流策略

至此完成了所有客户端Vlan之间不能互访,以及除网络管理员之外不能访问接入交换机管理网段的访问控制;

user-interface vty 0 4

acl 2000 inbound

//在vty界面中调用Acl2000,即只允许俩网络管理员登录;

authentication-mode aaa

user privilege level 3

protocol inbound ssh

//至此完成了只允许网络管理员登录核心交换机的访问控制;