Configuration

Activation

  • Le port-security s'applique sur les interfaces access
SW1(config)#int fa 0/3
SW1(config-if)#switchport port-security

Nombre d'adresse maximum

  • on peut spécifier un nombre maximum d'adresse: 1 (par défaut) à 132.
SW1(config-if)#switchport port-security maximum 2

Violation

  • la commande violation permet de spécifier le comportement à avoir en cas de détection de violation:
    • protect : les trames venant des adresses non autorisées sont droppées et il n'y a aucun message de log signalant la violation.
    • restrict : les trames venant des adresses non autorisées sont droppées, un message de log est créé et une trap SNMP est envoyée.
    • shutdown : si une trame venant d'une adresse non autorisée est détécté, le port est mis en err-disabled, un message de log est créé et une trap SNMP est envoyée. Une intervention manuelle est nécessaire ou errdisable revovery doit être configuré pour automatiquement faire remonter le port après un certain laps de temps.
SW1(config-if)#switchport port-security violation shutdown

Adresse Mac

  • On peut spécifier des adresses mac statiquement. A noter que si aucune adresse n'est spécifiée, elle sera apprise automatiquement.
SW1(config-if)#switchport port-security mac-address 0050.5611.06b1

Il n'est pas possible de mettre n'importe quoi

SW1(config-if)#switchport port-security mac-address 0500.4333.5431
Invalid secure mac-address 0500.4333.5431.

On peut spécifier autant d'adresse que le nombre maximum spécifié. Attention les adresses apprises dynamiquement compte pour une adresse.

SW1(config-if)#switchport port-security mac-address 0050.1111.3332
Total secure mac-addresses on interface FastEthernet0/3 has reached maximum limit.

Vérification

Dans l'exemple suivant, nous voyons que pour le port Fa0/3, 2 adresses sont autorisées et une seule a été configurée. En cas de violation, le port est mis en shutdown.

SW1#sh port-security
Secure Port  MaxSecureAddr  CurrentAddr  SecurityViolation  Security Action
               (Count)       (Count)          (Count)

      Fa0/3              2            1                  0         Shutdown

Total Addresses in System (excluding one mac per port)     : 0
Max Addresses limit in System (excluding one mac per port) : 1024

Voir les adresses affectées une interface

Dans l'example ci-dessous, la première adresse est configurée statiquement et la seconde a été apprise dynamiquement.

SW1#sh port-security address
          Secure Mac Address Table

Vlan    Mac Address       Type                Ports   Remaining Age
                                                         (mins)

  11    0050.5564.2111    SecureConfigured    Fa0/3        -
  11    0050.5611.06b1    SecureDynamic       Fa0/3        -

Total Addresses in System (excluding one mac per port)     : 1
Max Addresses limit in System (excluding one mac per port) : 1024

Voir l'état d'un port

SW1#sh port-security interface fa 0/3
Port Security              : Enabled
Port Status                : Secure-up
Violation Mode             : Shutdown
Aging Time                 : 0 mins
Aging Type                 : Absolute
SecureStatic Address Aging : Disabled
Maximum MAC Addresses      : 2
Total MAC Addresses        : 1
Configured MAC Addresses   : 1
Sticky MAC Addresses       : 0
Last Source Address        : 0000.0000.0000
Security Violation Count   : 0

Adresse Dynamic ou Configured

Si l'adresse n'a pas été configuré statiquement sur un port, elle peut avoir été apprise dynamiquement

SW1#sh port-security address
          Secure Mac Address Table

Vlan    Mac Address       Type                Ports   Remaining Age
                                                         (mins)

  11    0050.5611.06b1    SecureDynamic       Fa0/3        -

Total Addresses in System (excluding one mac per port)     : 0
Max Addresses limit in System (excluding one mac per port) : 1024

Si l'on souhaite ajouter l'adresse dynamiquement dans la configuration de l'interface, un message d'erreur nous indique que l'adresse est déja connue.

SW1(config)#int fa 0/3
SW1(config-if)#switchport port-security mac-address 0050.5611.06b1
Found duplicate mac-address 0050.5611.06b1.

Il faut alors supprimer cette adresse (bien que n'apparaissant pas dans la configuration), et la re-assigner. Si vous n'avez pas le temps entre ces 2 lignes, mettez le port en shut et faites la modification calmement.

SW1(config-if)#no switchport port-security mac-address 0050.5611.06b1
SW1(config-if)#switchport port-security mac-address 0050.5611.06b1

L'adresse est maintenant bien connue comme static.

SW1#sh port-security address
          Secure Mac Address Table

Vlan    Mac Address       Type                Ports   Remaining Age
                                                         (mins)

  11    0050.5611.06b1    SecureConfigured    Fa0/3        -

Total Addresses in System (excluding one mac per port)     : 0
Max Addresses limit in System (excluding one mac per port) : 1024

Exemple de Violation

En fonctionnement normal

SW1#sh port-security
Secure Port  MaxSecureAddr  CurrentAddr  SecurityViolation  Security Action
                (Count)       (Count)          (Count)

      Fa0/3              1            1                  0         Shutdown

Total Addresses in System (excluding one mac per port)     : 0
Max Addresses limit in System (excluding one mac per port) : 1024

Log lors de la violation

*Mar  2 19:00:58: %PM-4-ERR_DISABLE: psecure-violation error detected on Fa0/3, putting Fa0/3 in err-disable state
*Mar  2 19:00:58: %PORT_SECURITY-2-PSECURE_VIOLATION: Security violation occurred, caused by MAC address 0010.f6b3.d000 on port FastEthernet0/3.
*Mar  2 19:00:59: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/3, changed state to down
*Mar  2 19:01:00: %LINK-3-UPDOWN: Interface FastEthernet0/3, changed state to down

Le port est bloqué

SW1#sh port-security
Secure Port  MaxSecureAddr  CurrentAddr  SecurityViolation  Security Action
                (Count)       (Count)          (Count)

      Fa0/3              1            1                  1         Shutdown

Total Addresses in System (excluding one mac per port)     : 0
Max Addresses limit in System (excluding one mac per port) : 1024

L'état du port est passé en err-disabled.

SW1#sh int fa 0/3 status

Port      Name               Status       Vlan       Duplex  Speed Type
Fa0/3     PC win XP          err-disabled 11           full    100 10/100BaseTX
SW1#sh port-security interface fa 0/3
Port Security              : Enabled
Port Status                : Secure-shutdown
Violation Mode             : Shutdown
Aging Time                 : 0 mins
Aging Type                 : Absolute
SecureStatic Address Aging : Disabled
Maximum MAC Addresses      : 2
Total MAC Addresses        : 2
Configured MAC Addresses   : 2
Sticky MAC Addresses       : 0
Last Source Address        : 0010.f6b3.d000
Security Violation Count   : 1

Recovery

Il est possible de faire remonter le port automatiquement après un certain delais. Dans l'exemple suivant, si un port est en err-disabled à cause d'une

violation port-security, il est remonté au bout de 30 secondes.

errdisable recovery cause psecure-violation
errdisable recovery interval 30
  • Mar 2 19:26:24: %PM-4-ERR_RECOVER: Attempting to recover from psecure-violation err-disable state on Fa0/3
  • Mar 2 19:26:29: %LINK-3-UPDOWN: Interface FastEthernet0/3, changed state to up
  • Mar 2 19:26:30: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/3, changed state to up

Sticky

En mode sticky, le switch va apprendre automatiquement l'adresse de l'utilisateur et la conserve (une ligne apparait automatiquement dans la configuration de l'interface). Ainsi, une fois que l'adresse est connue, on ne peut plus la changer. En mode dynamique, on peut limiter le nombre d'adresse mais si un utilisateur disparaît, un nouveau peut prendre la place.

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

Vérifier

SW1#sh run int fa 0/3
Building configuration...

Current configuration : 236 bytes
!
interface FastEthernet0/3
 description PC win XP
 switchport access vlan 11
 switchport mode access
 switchport port-security
 switchport port-security mac-address sticky
 shutdown
 speed 100
 duplex full
 spanning-tree portfast
end
Vérification
SW1#show  port-security address
          Secure Mac Address Table

Vlan    Mac Address       Type                Ports   Remaining Age
                                                         (mins)

  11    0010.f6b3.d000    SecureSticky        Fa0/3        -

Total Addresses in System (excluding one mac per port)     : 0
Max Addresses limit in System (excluding one mac per port) : 1024

On voit qu'une ligne est automatiquement ajoutée dans la configuration

SW1#sh run int fa 0/3
Building configuration...

Current configuration : 286 bytes
!
interface FastEthernet0/3
 description PC win XP
 switchport access vlan 11
 switchport mode access
 switchport port-security
 switchport port-security mac-address sticky
 switchport port-security mac-address sticky 0010.f6b3.d000
 speed 100
 duplex full
 spanning-tree portfast
end

Changer son adresse Mac

ifconfig eth0 hw ether 0050.1234.4567