Настройка Port Security

cdp
Port security — технология контроля трафика на втором уровне модели OSI используемая в коммутаторах Cisco Catalyst. Эта технология позволяет пропускать только кадры с определенными MAC адресами источника через порты коммутатора на которых она настроена. Основным предназначением данной технологии является предотвращение подключения пользователями или злоумышленниками устройств к доступным портам коммутатора. Хорошо известны примеры, когда подключение несанкционированного устройства (например точки доступа с включенным DHCP сервером) приводит к сбоям в работе сети.

Включение Port Security

Port security может быть включена на порту одной командой:

Switch(config)# interface f0/13
Switch(config-if)# switchport port-security

В данном примере Port Security включается только на одном порту, хотя в реальных условиях она обычно задействуется на всех пользовательских портах.

После включения Port Security можно посмотреть настройки Port Security по-умолчанию при помощи командыshow port-security:

Switch# show port-security interface f0/13
Port Security              : Enabled
Port Status                : Secure-down
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

Как можно заметить, в настройках существует ряд параметров, которые можно настроить. Обо всем по порядку.

Когда какое-либо устройство подключается к порту коммутатора, коммутатор изучает MAC адрес источника первого кадра поступившего на его порт:

Switch# show port-security interface f0/13
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        : 1
Configured MAC Addresses   : 0
Sticky MAC Addresses       : 0
Last Source Address:Vlan   : 001b.d41b.a4d8:10
Security Violation Count   : 0

Теперь в качестве эксперимента подключим к этому порту коммутатора хаб, к которому подключим то-же устройство, плюс еще одно новое устройство. В такой ситуации порт коммутатора будет получать кадры с двумя разными MAC адресами источника. Посмотрим, что произойдет, когда второе устройство начнет передавать трафик:

%PM-4-ERR_DISABLE: psecure-violation error detected on Fa0/13, putting Fa0/13 in err-disable state
%PORT_SECURITY-2-PSECURE_VIOLATION: Security violation occurred, caused by MAC address 0021.55c8.f13c on port FastEthernet0/13.
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/13, changed state to down
%LINK-3-UPDOWN: Interface FastEthernet0/13, changed state to down

Снова просмотрим состояние Port Security на порту, появление кадров с новым MAC адресом на порту коммутатора привело к выключению этого порта :

Switch# show port-security interface f0/13
Port Security              : Enabled
Port Status                : Secure-shutdown
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   : 0021.55c8.f13c:10
Security Violation Count   : 1
Switch# show interfaces f0/13
FastEthernet0/13 is down, line protocol is down (err-disabled) 
  Hardware is Fast Ethernet, address is 0013.c412.0f0d (bia 0013.c412.0f0d)
  MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec, 
     reliability 255/255, txload 1/255, rxload 1/255
  Encapsulation ARPA, loopback not set
...

По умолчанию, port security violation переводит порт в состояние error-disabled. В данном случае администратор может вновь включить порт применяя последовательно команды shutdown и no shutdown. Но это имеет смысл делать только после отключения «лишнего» усройства, иначе порт будет снова отключен при полученнии кадра с MAC адресом этого устройства.

Настройка Port Security

Violation Mode

Port security может быть настроена на выполнение трех различных действий при наступлении исключения (violation):

shutdown (default)
Интерфейс переводится в состояние error-disabled, и блокирует весь трафик проходящий через него.
protect
Кадры с MAC адресом отличающимся от разрешенных на порту отбрасываются; При этом, разрешенный трафик проходит беспрепятственно.
restrict
То-же, что иprotect, но генерирует сообщения syslog и увеличивает счетчик violation counter, при блоркировании неразрешенного трафика.

При изменении режима violation на restrict, генерируются сообщения о нелигитимном трафике он блокируется, а разрешенный передается без проблем:

Switch(config-if)# switchport port-security violation restrict
Switch(config-if)# ^Z
Switch#
%PORT_SECURITY-2-PSECURE_VIOLATION: Security violation occurred, caused by MAC address 0021.55c8.f13c on port FastEthernet0/13.
Switch# show port-security interface f0/13
Port Security              : Enabled
Port Status                : Secure-up
Violation Mode             : Restrict
Aging Time                 : 0 mins
Aging Type                 : Absolute
SecureStatic Address Aging : Disabled
Maximum MAC Addresses      : 1
Total MAC Addresses        : 1
Configured MAC Addresses   : 0
Sticky MAC Addresses       : 0
Last Source Address:Vlan   : 0021.55c8.f13c:10
Security Violation Count   : 3

Генерация сообщений в log будет продолжаться, пока устройство с неразрешенным MAC адресом будет подключено к коммутатору.

Максимальное к-во MAC адресов

По умолчанию, port security ограничивает количество разрешенных MAC адресов одним. Эта настройка может быть изменена, например для одновременного подключения IP телефона и компьютера к одному порту коммутатора:

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

Так-же существует возможность настроить максимальное к-во адресов для Voice и обычного VLAN отдельно.:

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

MAC Address Learning

Администратор имеет возможность статически назначать разрешенные MAC адреса на порту. MAC адреса могут быть сконфигурированы отдельно для VLAN (access или voice).

Switch(config-if)# switchport port-security mac-address 001b.d41b.a4d8 ?
  vlan  set VLAN ID of the VLAN on which this address can be learned
  <cr>
Switch(config-if)# switchport port-security mac-address 001b.d41b.a4d8 vlan access

Настроенные адреса храняться в running configuration:

Switch# show running-config interface f0/13
Building configuration...

Current configuration : 259 bytes
!
interface FastEthernet0/13
 switchport access vlan 10
 switchport mode access
 switchport voice vlan 20
 switchport port-security
 switchport port-security violation restrict
 switchport port-security mac-address 001b.d41b.a4d8
 spanning-tree portfast
end

В общем эта практика трудно применима в сетях с большим количеством портов, наиболее удлобный вариант в данном случае — это «sticky learning» MAC адресорв — при таком режиме адреса изучаются динамически до достижения лимита к-ва адресов (maximum MAC address).

Switch(config-if)# no switchport port-security mac-address 001b.d41b.a4d8
Switch(config-if)# switchport port-security mac-address sticky
Switch(config-if)# ^Z
Switch# show port-security interface f0/13
Port Security              : Enabled
Port Status                : Secure-up
Violation Mode             : Restrict
Aging Time                 : 0 mins
Aging Type                 : Absolute
SecureStatic Address Aging : Disabled
Maximum MAC Addresses      : 1
Total MAC Addresses        : 1
Configured MAC Addresses   : 0
Sticky MAC Addresses       : 1
Last Source Address:Vlan   : 001b.d41b.a4d8:10
Security Violation Count   : 0

В процессе изучения адреса помещаются в running config, так-же, как если бы они были настроены вручную:

Switch# show running-config interface f0/13
Building configuration...

Current configuration : 311 bytes
!
interface FastEthernet0/13
 switchport access vlan 10
 switchport mode access
 switchport voice vlan 20
 switchport port-security
 switchport port-security violation restrict
 switchport port-security mac-address sticky
 switchport port-security mac-address sticky 001b.d41b.a4d8
 spanning-tree portfast
end

MAC Address Aging

По умолчанию, MAC адреса запоминаются фактически навсегда (до перезагрузки). Возможно настроить устаревание «Aging» адресов. Это позволит новым устройствам быть подключенными к порту коммутатора через некоторое время. Aging может быть настроен на обновление MAC адресов на регулярной основе (через определенные интервалы), либо после определенного периода неактивности устройства. Следующая конфигурация устанавливает время устаревания записи MAC адреса через 5 минут неактивности:

Switch(config-if)# switchport port-security aging time 5
Switch(config-if)# switchport port-security aging type inactivity
Switch(config-if)# ^Z
Switch# show port-security interface f0/13
Port Security              : Enabled
Port Status                : Secure-up
Violation Mode             : Restrict
Aging Time                 : 5 mins
Aging Type                 : Inactivity
SecureStatic Address Aging : Disabled
Maximum MAC Addresses      : 1
Total MAC Addresses        : 1
Configured MAC Addresses   : 0
Sticky MAC Addresses       : 0
Last Source Address:Vlan   : 001b.d41b.a4d8:10
Security Violation Count   : 0

Через 5 минут неактивности можно увидеть, что адрес стерт из памяти, освободив место для изучения любого другого:

Switch# show port-security interface f0/13
Port Security              : Enabled
Port Status                : Secure-up
Violation Mode             : Restrict
Aging Time                 : 5 mins
Aging Type                 : Inactivity
SecureStatic Address Aging : Disabled
Maximum MAC Addresses      : 1
Total MAC Addresses        : 0
Configured MAC Addresses   : 0
Sticky MAC Addresses       : 0
Last Source Address:Vlan   : 001b.d41b.a4d8:10
Security Violation Count   : 0

Auto-recovery

Для того, чтобы избежать необходимости вручную включать порт после его блокировки (error-disabled state) возможно применение функции автоматтическо восстановления (auto-recovery). Интервал настраивается в секундах.

Switch(config)# errdisable recovery cause psecure-violation
Switch(config)# errdisable recovery interval 600

Через десять минут (600 сек) после перевода порта в режим error-disabled, можно увидеть, что порт автоматически вернулся в рабочее состояние:

%PM-4-ERR_RECOVER: Attempting to recover from psecure-violation err-disable state on Fa0/13
%LINK-3-UPDOWN: Interface FastEthernet0/13, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/13, changed state to up

Помните, что в случае если ситуация с подключенными устройствами не меняется, то после автоматического восстановления он будет снова переведен в состояние error-disabled.

Так-же необходимо понимать, что MAC адрес легко подменить, а несколько подключенных к порту устройств можно скрыть за простым маршрутизатором. Стандарт IEEE 802.1X является более бескомпромисной технологией безопастности на уровне доступа.

2 Responses to “Настройка Port Security”
  • emsgr.us

    Так как после команды switchport port-security, сразу включается Port security с настройками по умолчанию, то ее стоит давать вначале только если настройки по умолчанию подходят.

Leave a Reply

Your email address will not be published.





Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Яндекс.Метрика