本文通过学习华为官方文档-以太网交换安全对相关概念进行概述及总结。若有兴趣学习其他技术可自行访问华为官网获取相关文档。
一.端口隔离
背景:随着网络规模不断扩大,用户的业务也随之增多,变为繁重,则需要规划大量的vlan进行承载,浪费大量的vlan资源
作用:可以实现不同的端口之间业务流量的隔离,端口隔离的优先级高于vlan
原理:用户通过将需要隔离的端口加入到端口隔离组中实现端口隔离
配置命令:
[接口视图]port-isolate enable group 1 //使能端口隔离功能并将该端口加入到指定的隔离组中
[接口视图]am isolate GigabitEthernet 0/0/2 //配置端口单向隔离,设置本端口不向指定端口转发数据
[系统视图]port-isolate mode all/L2 //配置端口隔离的模式
[vlanif端口]arp-proxy inner-sub-vlan-proxy enable //使能vlan内代理功能
[系统视图]dis port-isolate gourp 1 //查看端口隔离的配置
二.MAC地址表安全
MAC地址表的分类
1.动态MAC地址表:系统通过接收到报文后基于报文的源MAC地址和接收端口动态的学习生成(可以被老化(默认5分钟),并且系统重启表项会丢失需重新学习)
2.静态MAC地址表:通过管理员手工的将MAC地址和端口进行映射(不可老化,保存配置后,系统重启表项不会丢失)
3.黑洞MAC地址表:管理员手工配置,不可老化,配置了黑洞MAC地址后,若系统收到的数据的源或目的MAC地址为该黑洞MAC地址,则丢弃该数据
MAC地址表的安全功能:
静态MAC地址表项:MAC地址欺骗攻击的防范,将合法用户的MAC地址和某一端口进行绑定,当攻击者通过模仿MAC地址从其他端口接入进网络后,由于和管理员配置的映射表项不一致,则将数据丢弃
配置命令:[系统视图] mac-address static H-H-H interface-type interface-number vlan vlan-id
黑洞MAC地址表项:
配置命令:[系统视图]mac-address blackhole mac-address vlan vlan-id
动态MAC地址表老化时间更改配置命令:[系统]mac-address aging-time aging-time
禁止MAC地址学习功能(固定的网络环境下):在二层网络中业务的访问端口或访问路径已经确定,将某些端口关闭MAC地址的学习功能,防止非法用户接入
配置命令:
基于接口:[接口视图] mac-address learning disable action discard/action
discard:若该接口收到的数据的源MAC地址与表项相同则通过,不同则丢弃
forword:端口不学习MAC地址,收到数据后直接进行转发(默认)
基于vlan:
[vlan视图] mac-address learning disable //禁止基于该vlan的MAC地址学习功能(默认是不禁止的)
限制MAC地址学习数量(MAC地址泛洪攻击)
[接口视图]mac-limit maximum 0-4096 //基于接口的MAC地址学习数量限制
[接口视图]mac-limit action discard/forward //当MAC地址学习到上限后,对之后的报文采取的动作(默认丢弃)
[接口视图]mac-limit alarm disable/enable //配置超过限制的MAC地址学习行为进行告警
三.端口安全
作用:防止非法用户接入网络
实现原理:端口安全功能将端口学习的MAC地址转换为安全MAC地址
安全MAC地址有如下几类:
动态安全MAC地址:端口使能端口安全功能但是没有使能粘性MAC地址功能动态学习的MAC地址
特性:设备重启后表项会丢失,需要重新学习,缺省(默认)情况下不会被老化,只有在配置了安全MAC地址老化时间后才会被老化
动态安全MAC地址的老化时间:
绝对老化时间:系统每隔一分钟检测一次每个MAC地址的存在时间,若存在MAC地址大于等于5分钟,则立即将该安全动态MAC地址老化,否则等待下一分钟的检测(计算)
相对老化时间:系统每隔一分钟检测是否有该MAC地址的数据,若没有数据(流量),则等待5分钟,若5分钟内检测到有则不老化,若5分钟后都没有携带该MAC地址的数据,则将该MAC地址老化
静态安全MAC地址:使能端口安全功能时配置静态安全MAC地址
特性:配置之后永不老化,且保存配置后重启表项不会丢失
粘性(Sticky)MAC地址:端口使能了端口安全功能同时使能了粘性MAC地址功能而学习的MAC地址
特性:动态学习,永不老化且保存配置后系统重启表项不会丢失
端口安全限制性动作:当启用了端口安全功能后在收到非法MAC地址设备发送的数据后,可以执行以下动作:
protect:丢弃不告警
restrict:丢弃并告警(默认执行该动作)
shutdown:接口error-down,并告警,默认情况下,端口关闭后,不会自动恢复,需要通过管理员在接口上配置restart命令重启端口
PS:配置端口安全的端口安全MAC地址学习的最大数量为1,可以通过调整最大安全MAC地址学习数量使得端口可以学习更多的安全MAC地址,配置后交换机只会学习指定
数量的安全MAC地址,其他未学习的MAC地址若其设备访问网络则均认为是非法用户接入,执行安全限制性动作
配置命令:
[接口视图]port-security enable //使能端口安全的功能
[接口视图]port-security mac-address sticky //使能粘性MAC地址的功能
[接口视图]port-security protect-action ? //配置安全限制性动作
protect Discard packets
restrict Discard packets and warning
shut down Shutdown
[接口视图] port-security aging-time 10 type? //配置安全动态MAC地址老化时间
absolute Absolute time 绝对老化时间
inactivity Inactivity time 相对老化时间
四.MAC地址漂移防止和检测
概念:交换机在不同的接口上学习到相同的MAC地址表项的现象(导致MAC地址表不断刷新,造成网络震荡)称为MAC地址漂移
解决办法:
1.更改接口学习MAC地址的优先级(优先级高的覆盖优先级低的)
2.配置不允许相同优先级的接口MAC地址漂移
3.配置MAC地址漂移检测
①VLAN的MAC地址漂移检测
1)发送告警:当检测到MAC地址漂移时只给管理员发送告警
2)接口阻断:当检测到MAC地址漂移时,根据设置的阻塞时间对接口进行阻塞,并关闭接口收发能力
3)MAC地址阻断:当检测到MAC地址漂移时,只阻塞当前MAC地址,而不对物理接口进行阻塞,当前接口下的其他MAC地址业务不受影响
②全局的MAC地址漂移检测
1)error-down:当检测到MAC地址表漂移时,将对应的接口的状态置为error-down,不再转发数据,影响该接口下的所有业务
2)quit-vlan:当检测到MAC地址表漂移时,将退出当前接口的所属vlan
五.交换机流量控制
1.流量抑制
问题:由于交换机在收到BUM帧时,会进行泛洪处理,会导致大量流量产生,严重影响整个网络的正常运行
解决办法:可以在接口的出入方向配置相应报文的通过阈值,当报文的包速率或大小超过阈值,则丢弃那超过的部分的流量
2.风暴控制(二层环路带来的问题)
解决办法:配置阈值,当收到三种报文的平均速率超过阈值,可以阻塞报文或关闭端口