以太网交换安全
端口隔离
同属于一个VLAN内的主机,默认情况可以通过二层互访,当有业务需求,某主机和某主机在同一个VLAN,但不想互访,可以把这两个端口部署在同一个隔离组内,组内的成员不能互访。
端口隔离的技术原理:
隔离类型:
- 双向隔离:两台设备都进行隔离,A不能发也不收,B也不能也不能收。
- 单向隔离:只对一台设备进行隔离。A可以收到B发的,但不能发送给B。
隔离模式:
- L2:二层隔离,不隔离三层。开始ARP代理功能,可以实现三层的通信。
- ALL:二三层都隔离。
配置:
端口视图下,使能端口隔离功能:port-isolate enable [group] //不指定组ID,默认组为1.
全局视图下,配置端口隔离模式:port-isolate mode[l2 | all] //默认为L2
端口视图下,配置端口单向隔离:am isolate //默认未配置单向隔离
MAC地址表安全
MAC地址表类型:
- 动态MAC地址表项:该表项5分钟老化时间,断电就丢失,需要重新学习,由交换机自动学习。
- 静态MAC地址表项:该表项不可老化,即使断电也不会丢失。该接口只处理源MAC和目的MAC是绑定MAC地址的报文。
- 黑洞MAC地址表项:该表项不可老化,配置黑洞MAC后,源MAC或目的MAC是该MAC的报文会被丢弃。
实现MAC地址表的安全:
- 静态MAC地址表项:一般配合禁止MAC地址学习功能使用。绑定了该接口接入的MAC地址,再禁止其他MAC地址学习。
- 黑洞MAC地址表象:可以防止黑客通过MAC地址攻击网络。
- 动态MAC地址老化时间:可以适当减少老化时间。防止爆炸式增长,及时删除废弃MAC。配置为0,表示永不老化
- 禁止MAC地址学习功能:限制非信任用户接入。
- 限制MAC地址学习数量:防止私接电脑。
配置:
mac-address static //配置静态MAC表项
mac-address blackhole //配置黑洞MAC表项
mac-address aging-time //配置动态MAC表项老化时间
以上在全局视图下配置
mac-address learning disable //关闭基于接口的MAC地址学习功能
mac-address learning disable //关闭基于VLAN的MAC地址学习功能
以上在接口或VLAN视图下配置。基于VLAN优先级高于基于接口的
mac-limit maximum //配置基于接口限制MAC地址学习数量
mac-limit action //配置当MAC地址数量达到限制时,对报文采取的动作
mac-limit alarm //配置当MAC地址数达到限制后是否进行告警
mac-limit maximum //配置基于VLAN的MAC地址学习数量
以上在接口或VLAN视图下配置
端口安全
安全MAC地址分为:
- 安全动态MAC地址:设备重启表项丢失,需要重新学习。默认不会被老化,需配置老化时间。
- 安全静态MACA地址:手动绑定MAC,不会被老化,保存配置重启配置不会丢失。
- Sticky MAC地址:动态学习MAC地址后,再配置Sticky,就相当于由动态转为静态。不会被老化,保存配置重启配置不会丢失。
安全MAC地址保护动作:
Restrict:丢弃报文,并告警
Protect:只丢弃报文,不告警。
Shutdown:直接关闭端口,并告警。
MAC地址漂移
MAC地址漂移是交换机上的两个端口学习到了同一个MAC地址。
防止MAC地址漂移可以配置接口MAC地址学习优先级和配置不允许相同优先级接口MAC地址漂移。优先级默认为0,越大越优先。
MAC地址漂移检测功能
- 基于VLAN的检测:可以指定检测VLAN下的所有MAC地址是否漂移,可以配置指定的动作。
- 全局MAC地址检测:华为默认开启全局检测功能。缺省情况下,只是作告警,并不会采取动作,可以配置采取的动作,error-down或quit-vlan。
交换机流量控制
配置流量控制或风暴控制时注意白名单问题。
流量控制和风暴控制是两种用于控制广播、组播、单播报文,防止这三类报文引起广播风暴的安全技术。
流量控制主要通过配置阈值来限制流量速率,风暴控制主要通过关闭端口阻断流量。
流量控制可以在接口的出、入方向进行抑制,风暴控制只能为入方向进行抑制。
流量控制可以通过配置阈值来限制广播、组播、单播的速率,防止报文的大量泛洪。
流量控制可以在接口和VLAN视图内配置:
- 接口配置:在接口入方向上,对数据帧按百分比、包速率或比特速率进行控制。当入口流量超过配置的阈值时,设备会丢弃超额的流量。
- 在VLAN视图:当VLAN内的流量超过配置的阈值时,会丢弃超额的流量。
DHCP Snooping
DHCP中继场景:
- DHCP客户端发送Discover报文,中继设备收到后,转为单播发给DHCP服务器,再由服务器回复Offer报文给中继设备,再由中继设备发给DHCP客户端。
DHCP Snooping通过在客户端和服务器中间建立一道防火墙用来防止网络中私接无线路由器导致的DHCP客户端无法获取合法的IP地址。
DHCP Snooping有信任区和非信任区,以及DHCP Snooping绑定表实现DHCP网络安全。
DHCP Snooping信任功能
用来保证DHCP客户端从合法的DHCP服务器获取IP地址。
DHCP Snooping的信任功能将接口分为信任接口和非信任接口。
- 信任接口正常接收DHCP服务器响应的ACK、NAK、Offer报文。
- 设备只会把DHCP客户端的DHCP请求报文通过信任接口发给DHCP服务器,不会通过非信任接口发给服务器。
- 非信任接口收到DHCP服务器发送的Offer、ACK、NAK报文会被直接丢弃。
开启DHCP Snooping功能的接口,默认为非信任接口
非信任接口,收到DHCP请求报文后,转发给所有的信任接口;丢弃DHCP响应报文。
信任接口,收到DHCP请求报文后,转发给所有的信任接口,如果没有其他信任接口,则丢弃该DHCP请求报文;收到DHCP响应报文后,只转发给连接客户端的接口且开启了DHCP Snooping功能的接口。
DHCP Snooping绑定表
从ACK报文中提取的信息,包含了客户端的IP地址,MAC地址,VLAN,接口,租期。可以用来防范有效攻击。
DHCP的攻击
DHCP饿死攻击:
攻击者通过伪造不同的MAC地址持续向DHCP服务器申请IP地址,导致DHCP服务器的地址枯竭。
解决方法:
通过DHCP Snooping的MAC地址限制功能来防止,限制交换机可以学习的最多MAC地址数目。因为攻击者是通过不同的MAC来申请的IP地址。
DHCP改变CHADDR值的Dos攻击:
攻击者通过伪造不同的CHADDR字段向服务器申请大量IP地址,导致地址枯竭。CHADDR字段是客户端发送DHCP消息时携带的,服务器针对CHADDR来分配IP地址。
解决方法:
通过DHCP Snooping功能,检查Request报文中的CHADDR字段,如果该字段和报文中的源MAC相同,则会转发,不同则丢弃。
DHCP中间人攻击:
攻击者利用ARP机制,让客户端学习到中间人的MAC地址和服务器IP地址的对应关系,又让DHCP服务器学习到客户端IP地址和中间人的MAC地址对应关系。这样客户端与服务器之间交互的IP报文会经过攻击者,攻击者再向服务器发送带有自己MAC地址和客户端IP地址的报文,让服务器学到中间人的MAC地址,达到仿冒DHCP客户端的目的。
解决方法:
使用DHCP Snooping的绑定表,当接口收到ARP和IP报文时,去和DHCP Snooping绑定表作匹配,匹配则转发。
IPSG
IPSG,IP源防攻击是基于二层接口的源IP地址过滤技术。防止不合法的主机伪造合法的主机用来上网。 IPSG一般用在与用户直连的接入设备上。
工作原理:
IPSG利用绑定表(DHCP Snooping绑定表)去匹配二层接口收到的IP报文,只有匹配绑定表的报文才可以通过。
IPSG需要配合DHCP Snooping功能使用,如果未配置DHCP Snooping,却开启了IPSG,那么设备将拒绝除了DHCP请求报文以外的所有IP报文。