什么是端口安全?

huawei
2024-12-12

端口安全是根据MAC地址对网络流量进行控制和管理的安全功能,该功能不仅将MAC地址与端口绑定,还可以限制端口学到的MAC地址的数量。它将端口学习到的动态MAC地址转换为安全MAC地址(包括安全动态MAC、安全静态MAC和Sticky MAC)后,端口只允许源MAC地址在安全MAC地址列表里的报文通过,源MAC地址不在安全MAC地址列表里的报文被认为非法的用户报文。端口安全功能可以阻止非法用户通过本端口和交换机通信,从而增强网络的安全性。

为什么需要端口安全?

非法用户获取到设备某端口的MAC地址以后,企图以该端口的MAC地址为目的MAC地址与设备通信,从而发起攻击。比如非法用户构造大量源MAC地址变化的报文并发送给交换机后,交换机的MAC表项资源就可能被耗尽。当MAC表资源被耗尽后,即使交换机再收到正常的报文,也无法学习到报文中的源MAC地址。再比如,在对接入用户的安全性要求较高的网络中,外来人员使用自己带来的电脑访问公司网络,会给网络带来极大的安全隐患。

为避免这种攻击及隐患,设备可以使能端口安全功能,将端口学习到的动态MAC地址转换为安全MAC地址。此时,端口上之前学习到的动态MAC地址表项将被删除,端口重新学习的MAC数量达到上限后不再学习新的MAC地址。对于端口收到的报文,如果其中的源MAC地址在安全MAC地址表项中,则放通该报文进来;如果其中的源MAC地址在安全MAC地址表项中不存在,均视为非法用户攻击,并实施丢弃报文、告警上报、或者关闭端口的保护动作。

端口安全如何工作?

MAC地址表中的表项可以分为动态表项、静态表项和黑洞表项。而安全MAC是一种业务类型的MAC地址表项,是通过动态表项转换来的。

使能端口安全后,并实施丢弃报文、告警上报、或者关闭端口的保护动作。

安全MAC地址的分类

安全MAC地址分为安全动态MAC、安全静态MAC与Sticky MAC,详细情况请参见下表。

表1-1 安全MAC地址的说明

类型

定义

特点

安全动态MAC地址

使能端口安全而未使能Sticky MAC功能时转换的MAC地址。

设备重启后表项会丢失,需要重新学习。

缺省情况下不会被老化,只有在配置安全MAC的老化时间后才可以被老化。

安全动态MAC地址的老化类型分为:绝对时间老化和相对时间老化。

  • 如设置绝对老化时间为5分钟:系统每隔1分钟计算一次每个MAC的存在时间,若大于等于5分钟,则立即将该安全动态MAC地址老化。否则,等待下1分钟再检测计算。

  • 如设置相对老化时间为5分钟:系统每隔1分钟检测一次是否有该MAC的流量。若没有流量,则经过5分钟后将该安全动态MAC地址老化。

安全静态MAC地址

使能端口安全时手工配置的静态MAC地址。

不会被老化,手动保存配置后重启设备不会丢失。

使能安全静态MAC需要事先知道终端的MAC,然后手工配置端口、MAC和VLAN的对应关系。

Sticky MAC地址

使能端口安全后又同时使能Sticky MAC功能后转换到的MAC地址。

不会被老化,手动保存配置后重启设备不会丢失。

使能Sticky MAC功能不需要事先知道终端的MAC,使能Sticky MAC功能后端口自动实现端口、MAC、VLAN的对应关系。

MAC地址变化情况

当端口安全功能或者Sticky MAC功能使能/去使能时,端口上的MAC地址会变化或者被删除,详细情况请参见下表。

功能

使能

去使能

端口安全功能

端口上之前学习到的动态MAC地址表项将被删除,之后学习到的MAC地址将变为安全动态MAC地址。

端口上的安全动态MAC地址将被删除,重新学习动态MAC地址。

Sticky MAC功能

端口上的安全动态MAC地址表项将转化为Sticky MAC地址,之后学习到的MAC地址也变为Sticky MAC地址。

端口上的Sticky MAC地址,会转换为安全动态MAC地址。

超过安全MAC地址限制数后的动作

使能端口安全后,端口默认只能学习一个安全MAC,可以手工设置端口学习安全MAC数目。端口上安全MAC地址数达到限制后,如果收到源MAC地址是安全MAC列表里不存在的MAC地址,无论目的MAC地址是否存在,交换机即认为有非法用户攻击,就会根据配置的动作对端口做保护处理。端口安全保护动作有restrict、protect和shutdown三种。端口安全的保护动作请参见下表,缺省情况下,保护动作是丢弃该报文并上报告警。

表1-2 超过安全MAC地址限制的端口保护动作

动作

说明

restrict

丢弃源MAC地址不在安全MAC地址列表里的报文并上报告警。推荐使用restrict动作。

protect

只丢弃源MAC地址不在安全MAC地址列表里的报文,不上报告警。

shutdown

端口状态被置为error-down,并上报告警。

出现静态MAC地址漂移时的动作

安全MAC地址也属于静态MAC地址,端口上配置静态MAC地址漂移的检测功能后,如果收到报文的源MAC地址已经存在在其他端口的静态MAC表中,交换机则认为存在安全静态MAC地址漂移,就会根据配置的动作对端口做保护处理。端口安全保护动作有restrict、protect和shutdown三种。

表1-3 静态MAC地址漂移的端口保护动作

动作

说明

restrict

丢弃触发静态MAC地址漂移的报文并上报告警。推荐使用restrict动作。

protect

只丢弃触发静态MAC地址漂移的报文,不上报告警。

shutdown

端口状态被置为error-down,并上报告警。

网络中如何应用端口安全?

端口安全经常使用在以下几种场景:

  • 应用在接入层设备,通过配置端口安全可以防止仿冒用户从其他端口攻击。

  • 应用在汇聚层设备,通过配置端口安全可以控制接入用户的数量。

接入层使用场景

如下图所示,用户PC1和PC3通过IP Phone接入SwitchA设备,用户PC2直接接入设备SwitchA,为了保证接入设备SwitchA的安全性,防止非法用户攻击,可以在接入设备SwitchA连接终端的端口上配置端口安全功能,限定交换机端口下所连接的主机MAC。组网中的终端MAC都确定后,如果接入设备SwitchA收到源MAC地址不在安全MAC列表里的报文,无论目的MAC地址是否存在,接入交换机即认为有非法用户攻击,就会根据配置的动作对端口做保护处理。在接入交换机配置端口安全功能,可以防止以下两点:
  • 防止外来人员使用自己带来的电脑访问公司网络。

  • 防止本公司员工私下更换位置。

端口安全使用在接入设备的组网场景
端口安全使用在接入设备的组网场景
  • 如果接入用户变动比较频繁,可以通过端口安全把动态MAC地址转换为安全动态MAC地址。这样可以在用户变动时,及时清除绑定的MAC地址表项。

  • 如果接入用户变动较少,可以通过端口安全把动态MAC地址转换为Sticky MAC地址。这样在保存配置重启后,绑定的MAC地址表项不会丢失。

  • 如果接入用户变动较少,且数量较少的情况下,可以通过配置为安全静态MAC地址,实现MAC地址表项的绑定。

汇聚层使用场景

如下图所示,树状组网中,多个用户通过SwitchA和汇聚层设备Switch进行通信。为了保证汇聚设备的安全性,控制接入用户的数量,可以在汇聚Switch设备配置端口安全功能,同时指定安全MAC地址的限制数,防止MAC地址泛洪造成汇聚Switch设备MAC地址表填满。

端口安全使用在汇聚层设备的组网场景
端口安全使用在汇聚层设备的组网场景


阅读5
分享
下一篇:这是最后一篇
上一篇:这是第一篇