4. 违规处理机制:Protect模式、Restrict模式、Shutdown模式

端口安全配置好了,MAC地址也绑定了。但总有不听话的设备想接入网络,对吧?

这时候交换机该怎么反应?是默默拒绝,还是大声报警,还是直接躺平?

嗯,这就是我们今天要聊的——违规处理机制。

我个人习惯把这三种模式叫做「温柔拒绝」「礼貌警告」和「暴力断网」。你想想看,不同场景下,我们需要不同的处理方式。

4.1 Protect模式——温柔拒绝

Protect模式,说白了就是「我不理你」。

当非法设备试图接入时,交换机会直接丢弃来自该设备的流量。但注意了——它不会产生任何告警,也不会记录日志。

我曾经在一个客户的生产线上遇到过这种情况。他们用了Protect模式,结果网络偶尔卡顿,排查了半天才发现是有人偷偷接了测试设备。因为没有日志,定位问题花了整整两天。

Protect模式特点:

  • 丢弃违规流量,但不通知管理员
  • 不产生日志,不触发SNMP Trap
  • 端口状态保持UP,不影响正常用户
  • 适合对安全性要求不高、不想频繁收到告警的环境

注意:Protect模式下,你根本不知道网络里发生了什么。我个人建议只在测试环境或临时场景下使用。

4.2 Restrict模式——礼貌警告

Restrict模式就聪明多了。它既会丢弃违规流量,又会记录日志、发送告警。

说白了就是:「你的包我扔了,但我告诉你老板了。」

我记得有一次帮一家学校做网络改造,他们教学楼里总有学生偷偷接路由器。用了Restrict模式后,网管每周都能收到几十条告警。虽然烦了点,但至少知道谁在搞事情。

Restrict模式特点:

  • 丢弃违规流量
  • 生成日志信息,发送SNMP Trap
  • 端口保持UP状态
  • 计数器会增加(show port-security 能看到)

我的建议:生产环境首选Restrict模式。既能阻止非法接入,又能保留审计证据。你想想看,万一出了安全问题,日志就是你的救命稻草。

4.3 Shutdown模式——暴力断网

Shutdown模式是最狠的。一旦检测到违规,直接把这个端口给你关了。

为什么会这样?因为交换机认为这个端口已经「不安全」了,干脆物理隔离。

我曾经在数据中心里吃过这个模式的亏。有一次新员工配置错了,把一台测试服务器的MAC地址绑到了核心交换机上。结果合法设备一接入,端口直接shutdown,整个业务中断了半小时。

Shutdown模式特点:

  • 端口进入err-disable状态
  • 所有流量都被切断,包括合法用户
  • 生成日志和告警
  • 需要手动或自动恢复

警告:Shutdown模式杀伤力太大。我建议只在接入层端口使用,而且一定要配合恢复策略。否则一个误触发,你就得跑机房去插console线。

4.4 三种模式对比

特性 Protect Restrict Shutdown
丢弃违规流量 ✓(端口关闭)
记录日志
发送SNMP Trap
端口状态 UP UP err-disable
影响范围 仅违规设备 仅违规设备 整个端口
恢复方式 自动 自动 手动/自动

4.5 违规恢复策略

端口被shutdown了怎么办?总不能每次都跑机房吧?

嗯,这里有两个办法:手动恢复和自动恢复。

4.5.1 手动恢复

最直接的方式,就是进到接口下执行:

interface GigabitEthernet0/1
 shutdown
 no shutdown

或者用全局命令:

errdisable recovery cause psecure-violation

我个人习惯用第二种。为什么?因为有时候你忘了是哪个端口被关了,全局恢复省事儿。

4.5.2 自动恢复

自动恢复需要配置定时器。比如:

errdisable recovery cause psecure-violation
errdisable recovery interval 300

这个300是秒数,也就是5分钟后自动恢复。

经验之谈:自动恢复的时间间隔我一般设300-600秒。太短了容易反复震荡,太长了用户等不及。你想想看,一个端口断了10分钟,领导电话早就打爆了。

4.5.3 恢复策略选择建议

  • 办公网络:建议用Restrict模式 + 自动恢复。用户误操作时,端口自动恢复,不影响办公。
  • 数据中心:建议用Shutdown模式 + 手动恢复。安全第一,宁可断网也不能让非法设备接入。
  • 测试环境:Protect模式就够了,省心省力。

避坑指南:我曾经遇到过一个问题——自动恢复后,端口虽然起来了,但违规设备还在。结果端口又立刻被shutdown,反复震荡。后来我加了MAC地址的粘滞学习,才彻底解决。所以记住:自动恢复只是临时方案,根本解决还是要管好接入设备。

4.6 配置示例

最后,给你一个完整的配置模板。我建议你直接复制到交换机上,改改接口名就行:

! 进入接口
interface GigabitEthernet0/1
 ! 开启端口安全
 switchport port-security
 ! 设置最大MAC地址数
 switchport port-security maximum 2
 ! 绑定MAC地址
 switchport port-security mac-address 0050.7966.6800
 ! 设置违规模式(Restrict推荐)
 switchport port-security violation restrict
 ! 开启粘滞学习
 switchport port-security mac-address sticky
! 全局配置自动恢复
errdisable recovery cause psecure-violation
errdisable recovery interval 300

嗯,到这里,端口安全的违规处理机制就讲完了。记住一句话:Protect省心但没日志,Restrict平衡最实用,Shutdown安全但麻烦。选哪个,看你自己的场景。