28、以太网交换安全

端口隔离

采用端口隔离功能,可以实现同一VLAN内端口之间的隔离。用户只需要将端口加入到隔离组中,就可以实现隔离组内端口之间二层数据的隔离。端口隔离功能为用户提供了更安全、更灵活的组网方案。

image-20250323182206650

技术原理

image-20250323182425960

配置命令

image-20250323182605559

配置举例

Switch配置如下:

[Switch] vlan 2
[Switch] port-isolate mode all
[Switch] interface GigabitEthernet 0/0/1
[Switch-GigabitEthernet0/0/1] port link-type access
[Switch-GigabitEthernet0/0/1] port default vlan 2
[Switch-GigabitEthernet0/0/1] port-isolate enable group 2 
[Switch] interface GigabitEthernet 0/0/2
[Switch-GigabitEthernet0/0/2] port link-type access
[Switch-GigabitEthernet0/0/2] port default vlan 2
[Switch-GigabitEthernet0/0/2] port-isolate enable group 2 
[Switch] interface GigabitEthernet 0/0/3
[Switch-GigabitEthernet0/0/3] port link-type access
[Switch-GigabitEthernet0/0/3] port default vlan 2

image-20250323182636404

配置验证

[SW]display port-isolate group 2

image-20250323182751784

MAC地址表安全

MAC地址表项类型包括:

  • 动态MAC地址表项:由接口通过报文中的源MAC地址学习获得,表项可老化。在系统复位、接口板热插拔或接口板复位后,动态表项会丢失。
  • 静态MAC地址表项:由用户手工配置并下发到各接口板,表项不老化。在系统复位、接口板热插拔或接口板复位后,保存的表项不会丢失。接口和MAC地址静态绑定后,其他接口收到源MAC是该MAC地址的报文将会被丢弃
  • 黑洞MAC地址表项:由用户手工配置,并下发到各接口板,表项不可老化。配置黑洞MAC地址后,源MAC地址或目的MAC地址是该MAC的报文将会被丢弃。

image-20250323183030819

MAC地址表项配置

image-20250323183207744

静止MAC地址学习功能

image-20250323183441445

限制MAC地址学习数量

image-20250323183542951

配置举例

Switch3的配置如下:

配置方式一:在接口视图下配置

# 在接口GE0/0/1上配置禁止MAC地址学习
[Switch3-GigabitEthernet0/0/1] mac-address learning disable action discard
#在接口GE0/0/2上配置限制MAC地址学习数量,超过阈值策略及告警
[Switch3-GigabitEthernet0/0/2] mac-limit maximum 100 
[Switch3-GigabitEthernet0/0/2] mac-limit alarm enable
[Switch3-GigabitEthernet0/0/2] mac-limit action discard 

配置方式二:在VLAN视图下配置

# 在VLAN 10上配置禁止MAC地址学习
[Switch3-vlan10] mac-address learning disable
#在VLAN 20上配置限制MAC地址学习数量与告警
[Switch3-vlan20] mac-limit maximum 100 alarm enable

image-20250323183704880

配置验证

display mac-limit

image-20250323183858697

端口安全

通过在交换机的特定接口上部署端口安全,可以限制接口的MAC地址学习数量,并且配置出现越限时的惩罚措施。

端口安全通过将接口学习到的动态MAC地址转换为安全MAC地址(包括安全动态MAC,安全静态MAC和Sticky MAC),阻止非法用户通过本接口和交换机通信,从而增强设备的安全性。

image-20250323184205956

安全MAC地址分为以下类型:

image-20250323184232775

安全MAC地址通常与安全保护动作结合使用,常见的安全保护动作有:

  • Restrict:丢弃源MAC地址不存在的报文并上报告警。
  • Protect:只丢弃源MAC地址不存在的报文,不上报告警。
  • Shutdown:接口状态被置为error-down,并上报告警。

配置命令

image-20250323192123531

image-20250323192515314

配置举例-安全动态MAC

image-20250323192534128

Switch1配置如下:

[Switch1] interface GigabitEthernet 0/0/1
[Switch1-GigabitEthernet 0/0/1] port-security enable
[Switch1-GigabitEthernet 0/0/1] port-security max-mac-num 1
[Switch1-GigabitEthernet 0/0/1] port-security protect-action restrict
[Switch1] interface GigabitEthernet 0/0/2
[Switch1-GigabitEthernet 0/0/2] port-security enable
[Switch1-GigabitEthernet 0/0/2] port-security max-mac-num 1
[Switch1-GigabitEthernet 0/0/2] port-security protect-action restrict
[Switch1] interface GigabitEthernet 0/0/3
[Switch1-GigabitEthernet 0/0/3] port-security enable
[Switch1-GigabitEthernet 0/0/3] port-security max-mac-num 2
[Switch1-GigabitEthernet 0/0/3] port-security protect-action shutdown

MAC地址漂移防止与检测

MAC地址漂移是指交换机上一个VLAN内有两个端口学习到同一个MAC地址,后学习到的MAC地址表项覆盖原MAC地址表项的现象。

当一个MAC地址在两个端口之间频繁发生迁移时,即会产生MAC地址漂移现象。

image-20250323193512741

如果是环路引发MAC地址漂移,治本的方法是部署防环技术,例如STP,消除二层环路。

如果由于网络攻击等其他原因引起,则可使用如下MAC地址防漂移特性:

image-20250323193605878

MAC地址漂移检测

交换机支持MAC地址漂移检测机制,分为以下两种方式:

  • 基于VLAN的MAC地址漂移检测:
    • 配置VLAN的MAC地址漂移检测功能可以检测指定VLAN下的所有的MAC地址是否发生漂移。
    • 当MAC地址发生漂移后,可以配置指定的动作,例如告警、阻断接口或阻断MAC地址。
  • 全局MAC地址漂移检测:
    • 该功能可以检测设备上的所有的MAC地址是否发生了漂移。
    • 若发生漂移,设备会上报告警到网管系统。
    • 用户也可以指定发生漂移后的处理动作,例如将接口关闭或退出VLAN。

image-20250323193901935

全局MAC地址漂移检测

当交换机检测到MAC地址漂移,在缺省情况下,它只是简单地上报告警,并不会采取其他动作。在实际网络部署中,可以根据网络需求,对检测到MAC地址漂移之后定义以下动作:

  • error-down:接口状态置为error-down,不再转发数据。
  • quit-vlan:将接口退出当前所属的VLAN。

配置命令

image-20250323194156530

image-20250323194227523

再VRRP场景下,可能需要配置VLAN白名单。当主设备故障,备用设备出现顶替,使用的是虚拟网关的虚拟IP和虚拟MAC,此时虚拟MAC漂移到了备份设备连接的端口上,这是正常情况的漂移,应当被允许。

配置举例

1、在Switch1与Server相连的接口GE0/0/1上配置MAC地址学习优先级高于其他接口,此优先级默认值为0。

[Switch1] interface GigabitEthernet 0/0/1
[Switch1-GigabitEthernet 0/0/1] mac-leaning priority 3

2、 在Switch2上配置MAC地址漂移检测功能,并配置接口MAC地址漂移后的处理动作。

[Switch2] mac-address flapping detection
[Switch2] mac-address flapping aging-time 500
[Switch2-GigabitEthernet0/0/1] mac-address flapping action error-down
[Switch2-GigabitEthernet0/0/2] mac-address flapping action error-down
[Switch2] error-down auto-recovery cause mac-address-flapping interval 500

image-20250323200133745

配置完成后,当Switch2的接口GE0/0/1的MAC地址漂移到接口GE0/0/2后,接口GE0/0/2关闭;使用display mac-address flapping record可查看到漂移记录。

image-20250323200324099

MACsec

image-20250323200459063

交换机流量控制

流量抑制

image-20250323200651209

工作原理

在接口入方向上,设备支持对广播、未知组播、未知单播、已知组播和已知单播报文按百分比、包速率和比特速率进行流量抑制。

设备监控接口下的各类报文速率并和配置的阈值相比较,当入口流量超过配置的阈值时,设备会丢弃超额的流量。

image-20250323200817100

在VLAN视图下,设备支持对广播报文按比特速率进行流量抑制。设备监控同一VLAN内广播报文的速率并和配置的阈值相比较,当VLAN内流量超过配置的阈值时,设备会丢弃超额的流量。

image-20250323200851372

流量抑制通过对不同类型的报文采取不同的限制措施,达到限制报文发送速率的目的。具体实施可分为以下三种情况:

  • 在交换机接口的入方向,例如下图中SW1的GE0/0/1入方向,通过流量抑制功能可以限制任意报文的发送速率。
  • 在交换机接口出方向,例如下图中SW1的GE0/0/1出方向,通过流量抑制功能可以阻塞广播,未知组播和未知单播报文。
  • 在交换机的VLAN视图下,通过配置VLAN 内流量抑制限制VLAN内广播报文。

image-20250323201054245

配置命令

image-20250323201121315

配置举例

Switch配置如下:

[Switch]suppression mode by-packets
[Switch-GigabitEthernet0/0/1] unicast-suppression 80
[Switch-GigabitEthernet0/0/1] multicast-suppression 70
[Switch-GigabitEthernet0/0/1] broadcast-suppression 60

image-20250323201152256

使用命令display flow-suppression interface查看流量抑制配置信息。

image-20250323201308311

风暴控制

image-20250323201502812

工作原理

image-20250323201521569

image-20250323201612660

流量抑制中,可以为接口入方向的报文流量配置阈值。当流量超过阈值时,系统将丢弃多余的流量,阈值范围内的报文可以正常通过,从而将流量限制在合理的范围内。此外,流量抑制还支持对接口出方向的流量进行阻塞。

风暴控制中,只可以为接口入方向的报文流量配置阈值。当流量超过阈值时,系统会阻塞该接口收到的该类型报文流量或者直接将该接口关闭

配置命令

image-20250323201715038

配置举例

Switch配置如下:

[Switch] storm-control whitelist protocol arp-request
[Switch] interface gigabitethernet0/0/1
[Switch-GigabitEthernet0/0/1] storm-control broadcast min-rate 1000 max-rate 2000
[Switch-GigabitEthernet0/0/1] storm-control multicast min-rate 1000 max-rate 2000
[Switch-GigabitEthernet0/0/1] storm-control unicast min-rate 1000 max-rate 2000
[Switch-GigabitEthernet0/0/1] storm-control interval 90
[Switch-GigabitEthernet0/0/1] storm-control action block
[Switch-GigabitEthernet0/0/1] storm-control enable trap
#使能风暴控制上报告警

image-20250323201737800

执行命令display storm-control interface查看GE0/0/1接口下的风暴控制配置情况。

image-20250323201832810

DHCP Snooping

为了保证网络通信业务的安全性,引入了DHCP Snooping技术,在DHCP Client和DHCP Server之间建立一道防火墙,以抵御网络中针对DHCP的各种攻击。

目前DHCP协议在应用的过程中遇到很多安全方面的问题,网络中存在一些针对DHCP的攻击,如DHCP Server仿冒者攻击、DHCP Server的拒绝服务攻击、仿冒DHCP报文攻击等。

DHCP Snooping的信任功能,能够保证DHCP客户端从合法的DHCP服务器获取IP地址。

DHCP Snooping信任功能将接口分为信任接口和非信任接口:

  • 信任接口正常接收DHCP服务器响应的DHCP ACK、DHCP NAK和DHCP Offer报文。
  • 设备只将DHCP客户端的DHCP请求报文通过信任接口发送给合法的DHCP服务器,不会向非信任接口转发。
  • 非信任接口收到的DHCP Server发送的DHCP OFFER、DHCP ACK、DHCP NAK报文会被直接丢弃。

image-20250323203603940

DHCP Snooping绑定表

二层接入设备使能了DHCP Snooping功能后,从收到DHCP ACK报文中提取关键信息(包括PC的MAC地址以及获取到的IP地址、地址租期),并获取与PC连接的使能了DHCP Snooping功能的接口信息(包括接口编号及该接口所属的VLAN),根据这些信息生成DHCP Snooping绑定表。

由于DHCP Snooping绑定表记录了DHCP客户端IP地址与MAC地址等参数的对应关系,故通过对报文与DHCP Snooping绑定表进行匹配检查,能够有效防范非法用户的攻击。

image-20250323203740585

DHCP饿死攻击

攻击原理:攻击者持续大量地向DHCP Server申请IP地址,直到耗尽DHCP Server地址池中的IP地址,导致DHCP Server不能给正常的用户进行分配。

漏洞分析:DHCP Server向申请者分配IP地址时,无法区分正常的申请者与恶意的申请者。

image-20250323204022581

解决方法:对于饿死攻击,可以通过DHCP Snooping的MAC地址限制功能来防止。该功能通过限制交换机接口上允许学习到的最多MAC地址数目,防止通过变换MAC地址,大量发送DHCP请求。

image-20250323204124979

改变CHADDR值的DoS攻击

攻击原理:攻击者持续大量地向DHCP Server申请IP地址,直到耗尽DHCP Server地址池中的IP地址,导致DHCP Server不能给正常的用户进行分配。

漏洞分析:DHCP Server向申请者分配IP地址时,无法区分正常的申请者与恶意的申请者。

image-20250323204414879

解决方法:为了避免受到攻击者改变CHADDR值的攻击,可以在设备上配置DHCP Snooping功能,检查DHCP Request报文中CHADDR字段。如果该字段跟数据帧头部的源MAC相匹配,转发报文;否则,丢弃报文。从而保证合法用户可以正常使用网络服务。

image-20250323205133017

DHCP中间人攻击

攻击原理:攻击者利用ARP机制,让Client学习到DHCP Server IP与Attacker MAC的映射关系,又让Server学习到Client IP与Attacker Mac的映射关系。如此一来,Client与Server之间交互的IP报文都会经过攻击者中转。

漏洞分析:从本质上讲,中间人攻击是一种Spoofing IP/MAC攻击,中间人利用了虚假的IP地址与MAC地址之间的映射关系来同时欺骗DHCP的客户端和服务器。

image-20250323205449825

解决方法:为防御中间人攻击与IP/MAC Spoofing攻击,可使用DHCP Snooping的绑定表工作模式,当接口接收到ARP或者IP报文,使用ARP或者IP报文中的“源IP+源MAC”匹配DHCP Snooping绑定表。如果匹配就进行转发,如果不匹配就丢弃。

image-20250323205611986

配置命令

image-20250323205636407

image-20250323205646567

配置举例

配置方式一:接口视图

[Switch] dhcp snooping enable ipv4
[Switch] interface GigabitEthernet 0/0/1
[Switch-GigabitEthernet0/0/1] dhcp snooping enable
[Switch] interface GigabitEthernet 0/0/2
[Switch-GigabitEthernet0/0/2] dhcp snooping enable
[Switch] interface GigabitEthernet 0/0/3
[Switch-GigabitEthernet0/0/3] dhcp snooping enable
[Switch-GigabitEthernet0/0/3] dhcp snooping trusted

配置方式二:VLAN视图

[Switch] dhcp snooping enable ipv4
[Switch] vlan 2
[Switch-vlan2] dhcp snooping enable
[Switch] interface GigabitEthernet 0/0/3
[Switch-GigabitEthernet0/0/3] dhcp snooping trusted

image-20250323205710647

IP Source Guard

IP地址欺骗攻击中,攻击者通过伪造合法用户的IP地址获取网络访问权限,非法访问网络,甚至造成合法用户无法访问网络,或者信息泄露。IPSG针对IP地址欺骗攻击提供了一种防御机制,可以有效阻止此类网络攻击行为。

IP源防攻击IPSG,IP Source Guard)是一种基于二层接口的源IP地址过滤技术。它能够防止恶意主机伪造合法主机的IP地址来仿冒合法主机,还能确保非授权主机不能通过自己指定IP地址的方式来访问网络或攻击网络。

image-20250323210400726

IPSG利用绑定表(源IP地址、源MAC地址、所属VLAN、入接口的绑定关系)去匹配检查二层接口上收到的IP报文,只有匹配绑定表的报文才允许通过,其他报文将被丢弃。

常见的绑定表有静态绑定表和DHCP Snooping动态绑定表。

image-20250323210524762

image-20250323210550477

配置命令

image-20250323210611346

配置举例

Switch1配置如下:

#在接入交换机上配置静态绑定表
[Switch1] user-bind static ip-address 10.1.1.1 mac-address 5489-98C2-1486 
[Switch1] user-bind static ip-address 10.1.1.10 mac-address 5489-98AB-22A7
#使能GE0/0/1接口IPSG和IP报文检查告警功能
[Switch1] interface GigabitEthernet 0/0/1
[Switch1-GigabitEthernet0/0/1] ip source check user-bind enable
[Switch1-GigabitEthernet0/0/1] ip source check user-bind alarm enable
[Switch1-GigabitEthernet0/0/1] ip source check user-bind alarm threshold 100
#接口GE0/0/2配置与GE0/0/1类似,此处省略

image-20250323210629425

在Switch1上执行display dhcp static user-bind all命令,可以查看静态绑定表信息。

PC1和PC2使用管理员分配的固定IP地址可以正常访问网络,更改IP地址后无法访问网络。

image-20250323210742273

思考题

image-20250323210759453

  1. ABD
posted @ 2025-05-28 12:16  最爱喝开水  阅读(83)  评论(0)    收藏  举报