<返回更多

二层网络安全你知道多少

2019-07-15    
加入收藏

二层转发的转发表是mac表,设备通过MAC表查找报文的出接口,如果查表失败,报文就会进行广播,所以广播风暴是二层网络中最常见的现象。因此,如何保证转发表的安全和如何抑制广播风暴,是二层网络安全的重点问题

如何保证转发表安全?

为了保证二层流量能够正常转发,针对不同的应用场景,交换机提供了不同的方法保证转发表的安全。譬如:MAC防漂移和端口安全通过MAC和接口的绑定,保证MAC表的安全。DHCP Snooping通过记录用户DHCP的认证信息,保证动态用户的安全接入。

MAC防漂移

接口只要接收到报文,就会进行MAC表项学习。交换机从正确的接口学习到合法用户的MAC表后,又从其他接口接收到非法用户的攻击报文时,就会导致MAC表项学习错误,二层转发出现异常。

最典型的场景如下图所示,非法用户通过模拟网关的源MAC向接入交换机发送报文,网关对应MAC1的出接口就会从IF1漂移到IF2。这样下行用户向网关发送报文时,通过MAC表项查询到的出接口就是错误的IF2,用户的报文就无法转发到网关,二层转发异常。

二层网络安全你知道多少

 

针对该场景,S交换机有两种方法进行安全预防:

配置静态MAC:

把网关的MAC和接口手动绑定,使网关的MAC无法发生漂移。

[SwitchA] mac-address static 3-3-3 gigabitethernet 0/0/10 vlan 4 //假设网关的MAC是3-3-3,接口是GE0/0/10,把接口和MAC在VLAN 4的广播域内绑定

配置MAC学习优先级:

使IF1接口MAC学习优先级高于IF2接口,这样如果IF2接口再收到源MAC是MAC1的报文时,不再进行MAC学习,使MAC地址不进行漂移。

[SwitchA] interface gigabitethernet 0/0/10 //连接网关的接口[SwitchA-GigabitEthernet0/0/10] mac-learning priority 3 //配置接口MAC学习优先级为最高值3

说明:有些交换机不支持配置MAC学习优先级,可以通过配置MAC Spoofing功能设置网关接口为信任接口,防止网关的MAC地址漂移,配置方法如下:

[SwitchA] mac-spoofing-defend enable //全局使能MAC Spoofing功能
[SwitchA] interface gigabitethernet 0/0/10 //连接网关的接口
[SwitchA-GigabitEthernet0/0/10] mac-spoofing-defend enable //配置接口为信任接口

端口安全

端口安全也是一种保证转发表安全的特性。在接口上使能端口安全功能后,接口上学习到的MAC地址就会自动转换为安全MAC,实现MAC地址和接口绑定,这样该MAC对应的用户就只能从该接口接入,无法再从其他接口接入。

另外,端口安全还可以通过设置接口下MAC表项的个数限制用户接入,保证只有先到的用户能够接入,后来的用户无法接入,同时也防止了黑洞MAC泛洪攻击导致MAC表溢出的问题。

但是端口安全无法判断接入的用户是否合法,只能保证先到的用户可以接入,如果先到的用户是非法的,也是可以接入的。

二层网络安全你知道多少

 

如上图,某企业为了保证接入用户的安全性,防止非法用户通过发送源MAC频繁变化的报文攻击网络,同时防止非法用户通过仿冒MAC地址接入网络。要求一个接口下只允许三个用户接入,同时要求这三个用户只能从指定接口接入,不能从任意端口接入。

为了实现上面安全策略,可以在SwitchA的GE0/0/1接口上配置端口安全功能,在有非法用户想要通过该接口接入时,还可以上报告警。在交换机配置端口安全的方法如下:

[SwitchA] interface gigabitethernet 0/0/1
[SwitchA-GigabitEthernet0/0/1] port-security enable //接口使能端口安全功能
[SwitchA-GigabitEthernet0/0/1] port-security max-mac-num 3 //配置接口下只允许绑定三个MAC地址,也就是说只允许三个用户接入,默认情况下接口使能端口安全后,只能绑定一个MAC地址
[SwitchA-GigabitEthernet0/0/1] port-security mac-address sticky //使能Sticky MAC功能,在保存配置重启后,接口和MAC的绑定不会消失

如何抑制广播风暴?

什么是广播风暴?

就是广播、未知组播以及未知单播报文过多或者在网络中成环的一种现象。

为什么会有广播风暴?

二层转发是根据MAC表项转发的,如果报文的MAC地址在MAC表中找不到对应的出接口,报文就会在VLAN内所有端口进行转发,从而产生广播风暴。

怎么抑制广播风暴呢?

抑制广播风暴最根本的方法是找到报文的出接口,使报文进行单播转发。然而在实际应用中,由于MAC表的规格限制和二层转发的原理,广播风暴是无法彻底解决的,只能尽可能的减少安全风险。

交换机提供了两种安全方法:一是基于不同维度进行流量抑制,二是通过风暴控制阻塞端口或Error-Down端口。

流量抑制

流量抑制可以从下面3个维度进行抑制:

1、基于接口进行流量限制

在接口的入方向上,分别对三类报文按百分比、包速率和比特速率进行流量抑制。

2、基于VLAN进行流量限制

对某个VLAN的上行流量,分别对三类报文按比特速率进行流量抑制。

3、基于接口进行流量阻塞

在接口的出方向上,阻塞这三类报文的转发。

这些功能又该怎么应用呢?我们从下图拓扑看一下应用场景和配置方法。

二层网络安全你知道多少

 

SwitchA是汇聚层交换机,通过接口GE0/0/1接入网络的用户属于两个VLAN,VLAN 10和 VLAN 20;通过接口GE0/0/2接入网络的用户属于VLAN 30;通过接口GE0/0/3接入网络只有一个固定的用户,该用户对安全要求较高,不希望收到广播、未知组播以及未知单播报文。

配置思路:

  1. 接口GE0/0/1下的用户属于不同的VLAN域,可以针对不同的VLAN分别进行流量抑制。
  2. 接口GE0/0/2下的用户属于同一个VLAN,可以直接针对该接口进行流量抑制。
  3. 接口GE0/0/3下的用户对安全要求较高,基于接口阻塞广播、未知组播以及未知单播报文的流量

配置方法:

基于VLAN配置流量抑制,限制每个VLAN广播、未知组播以及未知单播报文的流量。

[SwitchA] qos car qoscar1 cir 1000 //配置Qos模板,承诺速率是1000kbit/s
[SwitchA] vlan 10
[SwitchA-vlan10] broadcast-suppression qoscar1 //在VLAN视图下应用该模板,对广播报文进行抑制,承诺速率是1000kbit/s
[SwitchA-vlan10] multicast-suppression qoscar1 //在VLAN视图下应用该模板,对未知组播的抑制,承诺速率是1000kbit/s
[SwitchA-vlan10] unicast-suppression qoscar1 //在VLAN视图下应用该模板,对未知单播的抑制,承诺速率是1000kbit/

基于接口配置流量抑制,限制该接口广播、未知组播以及未知单播报文的流量。

[SwitchA] interface gigabitethernet 0/0/2
[SwitchA-GigabitEthernet0/0/2] broadcast-suppression 5 //广播报文速率最多占接口速率的5%
[SwitchA-GigabitEthernet0/0/2] multicast-suppression 5 //未知组播报文速率最多占接口速率的5%
[SwitchA-GigabitEthernet0/0/2] unicast-suppression 5 //未知单播报文速率最多占接口速率的5%

说明:基于接口的流量抑制,有三种配置方式:可以基于百分比,包速率和比特速率分别抑制

基于接口阻塞广播、未知组播以及未知单播报文的流量

[SwitchA] interface gigabitethernet 0/0/3
[SwitchA-GigabitEthernet0/0/3] broadcast-suppression block outbound //阻塞广播报文
[SwitchA-GigabitEthernet0/0/3] multicast-suppression block outbound //阻塞未知组播报文
[SwitchA-GigabitEthernet0/0/3] unicast-suppression block outbound //阻塞未知单播报文

风暴控制

风暴控制不仅可以通过设置速率控制广播、未知组播以及未知单播报文,还可以在速率超过设置阈值时对接口执行惩罚动作。

1、阻塞端口:

2、 Error-Down端口:

配置方法:

[SwitchA] error-down auto-recovery cause storm-control interval 20 //如果接口被风暴控制error down,20秒后接口自动恢复
[SwitchA] interface gigabitethernet 0/0/5
[SwitchA-GigabitEthernet0/0/5] storm-control broadcast min-rate 1000 max-rate 2000 //广播报文执行惩罚动作的阈值
[SwitchA-GigabitEthernet0/0/5] storm-control action error-down //风暴控制的惩罚动作是error down
[SwitchA-GigabitEthernet0/0/5] quit 
[SwitchA] interface gigabitethernet 0/0/6
[SwitchA-GigabitEthernet0/0/6] storm-control multicast min-rate percent 5 max-rate percent 20 //未知组播报文执行惩罚动作的阈值
[SwitchA-GigabitEthernet0/0/6] storm-control action block //风暴控制的惩罚动作是阻塞端口
声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>