FAQ-交换机通过ACL实现VLAN间单向流量控制的实践

发布时间:  2016-12-20 浏览次数:  1321 下载次数:  0
问题描述
某客户基于成本考虑,给每个站点部署了一台三层交换机,下行接入终端,上行联接去往总部的专线;基于安全考虑,需要在这台交换机上实现VLAN间的互访控制,同时希望实现部分VLAN间的单向流量控制。

1,由于VLAN间的互访控制属于交换机的基本功能特性,本文不展开讨论。
2,而对于VLAN间的单向流量控制,我们假设有VLAN A和B,需要做到A可以访问B,而B不可以访问A。

A的地址段为 X.X.X.X/24
B的地址段为 Y.Y.Y.Y/24


解决方案
对于单向流量的控制,一般来说是属于防火墙的功能。但实际上,交换机也是可以通过ACL的灵活配置,来实现最基本的单向流量控制。具体配置如下:

对于ICMP协议,需要允许B->A的icmp echo-reply报文:
#
acl 3001
   rule 5 permit icmp source Y.Y.Y.Y 0.0.0.255 destination X.X.X.X 0.0.0.255  icmp-type echo-reply

对于TCP协议,需要允许B->A,报文头中SYN Flag的类型为ack(010000)或rst(000100)的TCP报文:
----------V2R2版本及以前的配置------------
   rule 9 permit tcp source Y.Y.Y.Y 0.0.0.255 destination X.X.X.X 0.0.0.255 tcp-flag ack
   rule 10 permit tcp source Y.Y.Y.Y 0.0.0.255 destination X.X.X.X 0.0.0.255 tcp-flag rst
----------V2R3版本及以后的配置------------
   rule 10 permit tcp source Y.Y.Y.Y 0.0.0.255 destination X.X.X.X 0.0.0.255 tcp-flag established

对于UDP协议,由于其为无状态的特性,无法实现单通,基于业务优先原则,放开所有UDP协议文:
   rule 15 permit udp source Y.Y.Y.Y 0.0.0.255 destination X.X.X.X 0.0.0.255

最后,deny其他B->A的IP流量,并基于业务优先原则,放开其他所有未知流量:
   rule 20 deny ip source Y.Y.Y.Y 0.0.0.255 destination X.X.X.X 0.0.0.255
   rule 25 permit ip
#
将该ACL通过traffic-filter应用于VLAN之上
#
traffic-filter vlan B inbound acl 3001
#

END