交換機端口安全配置

在一般的企業環境中,交換機是使用最多的設備,下面簡單介紹一些關於交換機端口安全的配置並就《CCNA學習指南(第六版)》書中的不足做一些補充:

在交換機端口配置模式下輸入

Switch(config-if)#switchport port-security 

  mac-address     Secure mac address

  maximum           Max secure addresses

  violation            Security violation mode

Switch(config-if)#switchport port-security maximum ? ''該命令用來設置此端口可以連接的客戶機的最大數量,範圍是1-132

  <1-132>           Maximum addresses

Switch(config-if)#switchport port-security violation ?     ''該命令用來設置如果連接的客戶機數量超過規定時所要採取的措施

  protect             Security violation protect mode           ‘’保護模式:超過限制客戶機的幀將被拋棄

  restrict             Security violation restrict mode            ''限制模式:超過限制就通過SNMP通告管理員

  shutdown         Security violation shutdown mode       ''關閉模式:超過限制就關閉端口

Switch(config-if)#switchport port-security mac-address ? ''該命令用來綁定客戶機MAC地址

  H.H.H               48 bit mac address                                ''手動輸入要綁定的地址

  sticky               Configure dynamic secure addresses as sticky ''自動粘貼前N臺客戶機的地址,N是maximum命令設置的最大客戶機數量

一個典型的示例:

Switch(config-if)#switchport port-security maximum 1

Switch(config-if)#switchport port-security violation shutdown

Switch(config-if)#switchport port-security mac-address sticky

配置這些命令後,該端口只允許一個客戶機通過它進行通信,並且會自動粘貼第一個客戶機的MAC地址,如果有其它客戶機嘗試通過,則該端口會因爲違反端口安全被關閉。

但是,僅僅配置完以上命令是不夠的,你會發現它完全不起作用。爲什麼呢?

使用

Switch#show port-security interface fa0/1 

查看結果:

Port Security                                : Disabled

Port Status                                   : Secure-up

Violation Mode                             : Shutdown

Aging Time                                  : 0 mins

Aging Type                                  : Absolute

SecureStatic Address Aging        : Disabled

Maximum MAC Addresses            : 1

Total MAC Addresses                  : 0

Configured MAC Addresses         : 0

Sticky MAC Addresses                 : 0

Last Source Address:Vlan            : 0000.0000.0000:0

Security Violation Count               : 0

注意上面結果第一行Port Security爲Disable。問題就在這裏!要使端口安全起作用,首先要在端口模式下啓用端口安全:

Switch(config-if)#switchport port-security

等等!爲什麼我輸入上面命令的時候會提示:

Command rejected: FastEthernet0/1 is a dynamic port.

對!原因就是動態端口是不能啓用端口安全的,必須使用命令

Switch(config-if)#switchport mode access

來把端口改變爲訪問端口。然後再啓用端口安全,然後重新驗證結果:

Switch#show port-security interface fa0/1

Port Security                                 : Enabled

Port Status                                    : Secure-up

Violation Mode                              : Shutdown

Aging Time                                    : 0 mins

Aging Type                                    : Absolute

SecureStatic Address Aging          : Disabled

Maximum MAC Addresses             : 1

Total MAC Addresses                    : 0

Configured MAC Addresses           : 0

Sticky MAC Addresses                   : 0

Last Source Address:Vlan              : 0000.0000.0000:0

Security Violation Count                 : 0

好了,現在端口安全纔可以正式的起作用了。

如果違反端口安全端口會被關閉,則上面結果中的Port Status會變爲Secure-down,這時需要在端口配置模式下使用shut和no shut(禁用再啓用)即可使端口恢復正常。





Cisco IOS交換機中的端口安全(Port security)功能可以使你限制在端口上使用的MAC地址(稱之爲安全MAC地址)數,允許你阻止未授權MAC地址的訪問,其實也就是通常所說的端口與MAC地址綁定。


Cisco IOS交換機的端口安全功能允許你通過配置靜態安全MAC地址實現僅允許固定設備連接,也允許你在一個端口上配置一個最大的安全MAC地址數,僅允許在此數之前識別到的設備連接在該端口上。當超過了所設置的最大安全端口數,將觸發一個安全違例事件,在端口上配置的一個基於違例行爲模式的違例行爲將被執行。如果你在某個端口上配置的最大安全MAC地址數爲1,則設備上的該安全端口僅允許與固定設備連接。如果一個安全MAC地址在一個端口上進行了安全綁定,則這個MAC地址不能進入該端口加入的VLAN以外的任何其他端口,否則包將在硬件層被悄悄地丟棄。

1.    端口安全功能支持的安全MAC地址類型

Cisco IOS交換機端口安全功能支持以下幾種安全MAC地址類型:

l  動態或者學習類型:動態安全MAC地址是在接收到連接在安全端口上主機發來的包時學習到的。在用戶的MAC地址不固定時(如網絡用戶使用的經常移動的便攜式電腦,如筆記本電腦),你可以使用此種類型。

l  靜態或配置類型:靜態安全MAC地址是用戶通過CLI或者SNMP配置的MAC地址。在你的MAC地址保持固定時(如用戶使用的是PC機),可以使用這種類型。

l  粘性(Sticky)類型:粘性安全MAC地址也是像動態安全MAC地址一樣,是通過學習得到的,但是它是交換機重啓後仍然有效,又有點像靜態安全MAC地址那樣。在存在大量固定MAC地址,而且你又不想手動配置這些安全MAC地址時,就可以使用這種類型。

    如果一個端口已達到了它最大的安全MAC地址數,而你又想配置一個靜態安全MAC地址,此時會被拒絕的,並顯示一個錯誤提示。如果一個端口已達到了它最大的安全MAC地址數,而又添加了一個新的動態安全MAC地址,則會觸發一個違例行爲。

    你可以使用clear port-security命令清除動態安全MAC地址,你可以使用no switchport port-securitymac-address命令一次性清除粘性和靜態安全MAC地址。

2.    安全MAC地址的最大數

    一個安全端口默認有一個安全MAC地址。你可以改變這個默認值在1~3000之間。當你在一個端口上設置最大安全MAC數後,你可以以下任一方式在地址表中包括這些安全MAC地址:

l  你可以使用switchport port-securitymac-address mac_address接口配置模式命令配置安全MAC地址。

l  你可以通過port-security mac-address VLAN範圍配置命令在中繼端口上一個範圍VLAN中配置所有安全MAC地址。

l  你可以允許端口用所連接設備的MAC地址動態配置安全MAC地址。

l  你可以靜態配置一些安全MAC地址,而允許其餘的安全MAC地址動態配置(如果端口鏈路關閉,則該端口上所有動態安全MAC地址將不再是安全的)。

  l  你可以MAC地址爲粘性的(sticky)。這些安全MAC地址可以動態學習,也可以手動配置,然後保存在MAC地址表中,並添加到運行配置文件中。然後這些地址會保存在交換機的啓動配置文件中,在交換機重啓後,接口不用再重新學習。雖然你可以手動配置粘性安全MAC地址,但這種做法是不建議的。

    【經驗之談】在一箇中繼端口上,最大的安全MAC地址數可以基於端口和基於端口VLAN來配置。端口上配置的最大安全MAC地址數可以大於或等於(不能小於)端口VLAN上配置的最大安全MAC地址數。如果端口上配置的最大安全MAC地址數小於端口VLAN上配置的最大安全MAC地址數(例如VLAN 10上設置的最大安全MAC地址爲3,而端口的最大安全MAC地址數採用默認的1),則在端口VLAN上的安全MAC地址數超過端口上設置的最大安全MAC地址數時,端口就將被關閉。

3.安全MAC地址老化

    在接收超過3000MAC地址時,你可能想要老化安全MAC地址,以便對一些長時間沒有連接的安全MAC地址從MAC地址表中除去。但是粘性(sticky)安全MAC地址不支持老化過程。

    默認情況下,端口安全不會對安全地址進行老化的,學習到後,這個MAC地址將一直在端口上保留,直到交換機重啓或才鏈路斷開(當然這是在沒有啓用粘性MAC地址功能時)。端口安全允許你基於絕對(absolute)或者靜止(inactivity)模式配置MAC地址老化和老化時間。絕對模式的老化週期是n~n+1分鐘之間;靜止模式的老化週期是在n+1~n+2分鐘之間(時間增量爲1分鐘)。

    使用安全MAC地址老化功能可以還沒達到端口上配置的最大安全MAC地址數之前,在安全端口上刪除和添加PC,無需手動刪除現有的安全MAC地址。

    除非明確地使用switchport port-security aging static命令靜態配置MAC地址老化時間,靜態安全MAC地址是不會進行老化進程的,即使在在該端口上配置了老化進程。

     4.端口上的粘性MAC地址

    通過啓用粘性端口安全功能,你可以配置一個接口去轉換動態MAC地址爲粘性安全MAC地址,並添加他們到交換機的運行配置文件中。在你不需要用戶移動到其他端口時,你可以使用這種功能,這樣你就無需要在每個端口上手動配置大量的安全MAC地址。

    要啓用粘性端口安全功能,可鍵入switchport port-securitymac-address sticky接口配置模式命令。此時,接口將轉換所有動態安全MAC地址爲粘性安全MAC地址,包括在啓用粘性安全MAC地址功能前動態學習到的所有MAC地址。

粘性安全MAC地址不會自動成爲交換機啓動配置文件的一部分,如果你保存了運行配置文件,則在交換機重啓後,接口也不用再重新學習MAC地址了,但是如果你不保存運行配置文件,則以前自動轉換的粘性安全MAC地址表將丟失。

如果禁止粘性端口安全功能,則粘性安全MAC地址將自動轉換爲動態安全MAC地址,並自動從交換機的運行配置文件中刪除。在配置了最大安全MAC地址數後,這些粘性安全MAC地址將以表的形式存儲。要使某設備成爲某端口唯一的連接者,則可以在該端口上配置最大的安全MAC地址數爲1如果添加到某端口的安全MAC地址數超過配置的最大安全MAC地址數將發生違例事件。

5. 違例行爲模式

     你可以配置發生違例事件後所採取的行爲模式:

l    保護(protect):當安全MAC地址數超過端口上配置的最大安全MAC地址數時,未知源MAC地址的包將被丟棄,直到MAC地址表中的安全MAC地址數降到所配置的最大安全MAC地址數以內,或者增加最大安全MAC地址數。而且這種行爲沒有安全違例行爲發生通知。建議不要在中繼端口上配置保護行爲,因爲在中繼端口上某個VLAN達到該VLAN中所配置的最大安全MAC地址數時端口將被禁止,即使端口上的安全MAC地址數並未達到端口上配置的最大安全MAC地址數。

l  限制(Restrict):與前面的保護模式差不多,也是在安全MAC地址數達到端口上配置的最大安全MAC地址數時,未知源MAC地址的包將被丟棄,直到MAC地址表中的安全MAC地址數降到所配置的最大安全MAC地址數以內,或者增加最大安全MAC地址數。但這種行爲模式會有一個SNMP捕獲消息發送,並記錄系統日誌,違例計數器增加1SNMP捕獲通知發送的頻率可以通過snmp-server enable traps port-securitytrap-rate命令來控制,默認值爲0,表示在發生任何安全違例事件時發送SNMP捕獲通知。

l  關閉(Shutdown):發生安全違例事件時,端口立即呈現錯誤(error-disabled)狀態,關閉端口(端口指示燈熄滅)。同時也會發送一個SNMP捕獲消息並記錄系統日誌,違例計數器增加1。在想禁止非MAC地址,需要安全安全環境下,你可以使用這種模式。

l  關閉VLANShutdown VLAN):適用於VLAN的安全違例模式。在這種模式下,在發生安全違者罰款例事件時,該端口對應的VLAN都將呈錯誤禁止狀態,關閉對應VLAN,而不關閉對應的端口。


15-1列出了各種違例模式和對應採取的行爲。


wKioL1R5U77BlfMCAADoni542V4646.jpg

 當一個安全端口處於錯誤禁止(error-disabled)狀態,你可以通過errdisable recovery causepsecure-violation全局配置模式命令進行恢復,或者你可以通過shutdownno shut down接口配置模式命令重啓。如果端口是處於每VLAN錯誤禁止(per-VLAN errdisable)狀態,則你可以使用clear errdisable interface name vlan range命令在端口上重啓這個VLAN你也可以使用errdisable recovery interval interval命令自定義從指定的錯誤禁止狀態恢復的時間,默認爲300秒。

    【經驗之談】如果你可以預見有非法安全MAC地址包將在某端口上發送,你可能想要在安全端口上對非法安全MAC地址包進行傳輸速率限制。端口安全認爲MAC地址爲0的包爲組播或廣播源MAC地址,認爲是非法包。你可以選擇限制這些包的傳輸速率,在超過速率時將在端口上捕獲一個違例事件。也就爲像組播或廣播包傳輸留有一定的空間。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章