端口安全技術:你的網絡防線在哪里?
端口安全技術背景
企業要求接入層交換機上每個連接終端設備的接口均只允許一臺PC接入網絡(限制MAC地址接入數量)。如果有員工試圖在某個接口下級聯一臺小交換機或集線器從而擴展上網接口,那么這種行為應該被發現或被禁止,如下圖所示:
另一些企業還可能會要求只有MAC地址為可信任的終端發送的數據幀才允許被交換機轉發到上層網絡,員工不能私自更換位置(變更交換機的接入端口),如下圖所示:
通過交換機的端口安全(port security)特性可以解決這些問題。
端口安全概述
通過在交換機的特定接口上部署端口安全,可以限制接口的MAC地址學習數量,并且配置出現越限時的懲罰措施。
端口安全通過將接口學習到的動態MAC地址轉換為安全MAC地址(包括安全動態MAC,安全靜態MAC和Sticky MAC),阻止非法用戶通過本接口和交換機通信,從而增強設備的安全性。
端口安全技術原理
安全MAC地址通常與安全保護動作結合使用,常見的安全保護動作有:
- Restrict:丟棄源MAC地址不存在的報文并上報告警。
- Protect:只丟棄源MAC地址不存在的報文,不上報告警。
- Shutdown:接口狀態被置為error-down,并上報告警。
端口安全技術應用
在對接入用戶的安全性要求較高的網絡中,可以配置端口安全功能及端口安全動態MAC學習的限制數量。此時接口學習到的MAC地址會被轉換為安全MAC地址,接口學習的最大MAC數量達到上限后不再學習新的MAC地址,僅允許這些MAC地址和交換機通信。而且接口上安全MAC地址數達到限制后,如果收到源MAC地址不存在的報文,無論目的MAC地址是否存在,交換機即認為有非法用戶攻擊,就會根據配置的動作對接口做保護處理。這樣可以阻止其他非信任用戶通過本接口和交換機通信,提高交換機與網絡的安全性。
配置端口安全功能后,接口學習到的MAC地址會轉換為安全MAC地址,接口學習的最大MAC數量達到上限后不再學習新的MAC地址,僅允許這些MAC地址和交換機通信。如果接入用戶發生變動,可以通過設備重啟或者配置安全MAC老化時間刷新MAC地址表項。對于相對比較穩定的接入用戶,如果不希望后續發生變化,可以進一步使能接口Sticky MAC功能,這樣在保存配置之后,MAC地址表項不會刷新或者丟失。
端口安全配置命令
(1)使能端口安全功能:
[Huawei-GigabitEthernet0/0/1] port-security enable
缺省情況下,未使能端口安全功能。
(2)配置端口安全動態MAC學習限制數量:
[Huawei-GigabitEthernet0/0/1] port-security max-mac-num max-number
缺省情況下,接口學習的安全MAC地址限制數量為1。
(3)(可選)手工配置安全靜態MAC地址表項:
[Huawei-GigabitEthernet0/0/1] port-security mac-address mac-address vlan vlan-id
(4)(可選)配置端口安全保護動作:
[Huawei-GigabitEthernet0/0/1] port-security protect-action { protect | restrict | shutdown }
缺省情況下,端口安全保護動作為restrict。
當出現靜態MAC地址漂移時,接口將執行error down操作,同時發出告警:
- 當學習到的MAC地址數超過接口限制數時,接口將執行error down操作,同時發出告警。
- 當出現靜態MAC地址漂移時,接口將執行error down操作,同時發出告警。
- 當學習到的MAC地址數超過接口限制數時,接口將丟棄源地址在MAC表以外的報文,同時發出告警。
- 當出現靜態MAC地址漂移時,接口將丟棄帶有該MAC地址的報文,同時發出告警。
- 當學習到的MAC地址數超過接口限制數時,接口將丟棄源地址在MAC表以外的報文。
- 當出現靜態MAC地址漂移時,接口將丟棄帶有該MAC地址的報文。
- protect
- restrict
- shutdown
(5)(可選)配置接口學習到的安全動態MAC地址的老化時間:
[Huawei-GigabitEthernet0/0/1] port-security aging-time time [ type { absolute | inactivity } ]
缺省情況下,接口學習的安全動態MAC地址不老化。
(6)使能接口Sticky MAC功能
[Huawei-GigabitEthernet0/0/1] port-security mac-address sticky
缺省情況下,接口未使能Sticky MAC功能。
(7)配置接口Sticky MAC學習限制數量。
[Huawei-GigabitEthernet0/0/1] port-security max-mac-num max-number
[Huawei-GigabitEthernet0/0/1] port-security max-mac-num max-number
使能接口Sticky MAC功能后,缺省情況下,接口學習的MAC地址限制數量為1。
(8)(可選)手動配置一條sticky-mac表項:
[Huawei-GigabitEthernet0/0/1] port-security mac-address sticky mac-address vlan vlan-id
端口安全配置舉例
安全動態MAC
配置要求:
- 在Switch1上部署端口安全。
- GE0/0/1及GE0/0/2接口將學習MAC地址的數量限制為1。當該接口連接多臺PC時,Switch1需發出告警,且要求此時接口依然能正常轉發合法PC的數據幀。
- GE0/0/3接口將學習MAC地址的數量限制為2,并且當學習到的MAC地址數超出接口限制數時,交換機需發出告警,并且將接口關閉。
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
配置驗證:執行命令display mac-address security ,查看動態安全MAC表項。
[Switch1]display mac-address security
MAC address table of slot 0:
----------------------------------------------------------------------------------------------------------------
MAC Address VLAN/ PEVLAN CEVLAN Port Type LSP/LSR-ID
VSI/SI MAC-Tunnel
----------------------------------------------------------------------------------------------------------------
5489-98ac-71a9 1 - - GE0/0/3 security -
5489-98b1-7b30 1 - - GE0/0/1 security -
5489-9815-662b 1 - - GE0/0/2 security -
----------------------------------------------------------------------------------------------------------------
Total matching items on slot 0 displayed = 3
Sticky MAC
配置要求:
- 在Switch上部署端口安全。將GE0/0/1~G0/0/3都激活端口安全。
- GE0/0/1及GE0/0/2接口都將學習MAC地址的數量限制為1,并將在這兩個接口上學習到的動態安全MAC地址轉換為Sticky MAC地址。
- 對于GE0/0/3將學習MAC地址的數量限制為1,但是通過手工的方式為該接口創建一個sticky MAC地址表項,將該接口與MAC地址5489-98ac-71a9綁定。各接口違例懲罰保持缺省。
Switch配置如下:
[Switch] interface GigabitEthernet 0/0/1
[Switch-GigabitEthernet 0/0/1] port-security enable
[Switch-GigabitEthernet 0/0/1] port-security max-mac-num 1
[Switch-GigabitEthernet 0/0/1] port-security mac-address sticky
[Switch] interface GigabitEthernet 0/0/2
[Switch-GigabitEthernet 0/0/2] port-security enable
[Switch-GigabitEthernet 0/0/2] port-security max-mac-num 1
[Switch-GigabitEthernet 0/0/2] port-security mac-address sticky
[Switch] interface GigabitEthernet 0/0/3
[Switch-GigabitEthernet 0/0/3] port-security enable
[Switch-GigabitEthernet 0/0/3] port-security max-mac-num 1
[Switch-GigabitEthernet 0/0/3] port-security mac-address sticky
[Switch-GigabitEthernet 0/0/3] port-security mac-address sticky 5489-98ac-71a9 vlan 1
配置驗證執行命令display mac-address sticky,查看Sticky MAC表項:
[Switch1]display mac-address sticky
MAC address table of slot 0:
-------------------------------------------------------------------------------------------------------
MAC Address VLAN/ PEVLAN CEVLAN Port Type LSP/LSR-ID
VSI/SI MAC-Tunnel
-------------------------------------------------------------------------------------------------------
5489-98ac-71a9 1 - - GE0/0/3 sticky -
5489-98b1-7b30 1 - - GE0/0/1 sticky -
5489-9815-662b 1 - - GE0/0/2 sticky -
-------------------------------------------------------------------------------------------------------
Total matching items on slot 0 displayed = 3