jueves, mayo 21, 2015

Port Security en switches Cisco y los modos de bloqueo de port-security: protect, restrict y shutdown.

Tras haber revisado las maneras de asegurar nuestros puertos ante equipos no autorizados mediante los comandos "switchport port-security" y "switchport port-security mac-address", hemos visto que el comportamiento predeterminado cuando se produce una violación en el acceso es tirar el puerto. Existen otros dos comportamientos configurables por comando. La forma general del comando es la siguiente, una vez que estamos dentro de la interfaz en que lo queremos configurar:

SW1(config-if)#switchport port-security violation <protect | restrict | shutdown>

Veamos cada uno de los modos.

shutdown


Es el modo por defecto, así que no hace falta configurarlo. En este modo el puerto, en cuanto se produce una violación en el acceso, queda deshabilitado, cortándose todo tráfico de raíz. Es el comportamiento que hemos visto en los ejemplos de la entrada a que nos referimos al principio. Si fuese necesario volver a configurarlo porque hemos configurado previamente uno de los otros modos el comando sería el siguiente:

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

Podemos verificar en qué modo está el puerto con el comando show port-security interface fastEthernet x/y

SW1#show port-security interface fastEthernet 0/2
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       : 1
Last Source Address:Vlan   : 00D0.97EA.6C5A:1
Security Violation Count   : 0


protect


Con protect el puerto no se deshabilita, sino que se corta el tráfico al equipo que haya producido la violación de acceso dejando pasar el resto, si hay más de un equipo conectado a dicho puerto. El comando es:

SW1(config-if)#switchport port-security violation protect

Y para verificarlo:

SW1# show port-security interface fastEthernet 0/2
Port Security              : Enabled
Port Status                : Secure-up
Violation Mode             : Protect
Aging Time                 : 0 mins
Aging Type                 : Absolute
SecureStatic Address Aging : Disabled
Maximum MAC Addresses      : 3
Total MAC Addresses        : 0
Configured MAC Addresses   : 0
Sticky MAC Addresses       : 0
Last Source Address:Vlan   : 0002.1758.D55A:1
Security Violation Count   : 0


Veamos un ejemplo con la siguiente topología:


Al puerto FastEthernet 0/2 del switch SW1 va conectado un hub con tres equipos pinchados. Hay además un cuarto equipo, que se conectará más tarde. Los equipos tienen las siguientes IPs:

PC0: 192.168.1.11
PC2: 192.168.1.12
PC3: 192.168.1.13
PC4: 192.168.1.14

El puerto FastEthernet 0/2 está configurado para aceptar tres MACs distintas y activar la protección cuando se conecte una cuarta o más, y además se ha configurado el modo de protección en protect:

!
interface FastEthernet0/2
 switchport mode access
 switchport port-security
 switchport port-security maximum 3
 switchport port-security violation protect
!


Las tres IPs de los equipos conectados responden:

SW1#ping 192.168.1.11

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.11, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 6/7/8 ms

SW1#ping 192.168.1.12

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.12, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 5/5/7 ms

SW1#ping 192.168.1.14

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.14, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/5/7 ms



Veamos qué pasa si conectamos el cuarto equipo:


No veremos nada por pantalla, ningún aviso, ningún bloqueo del puerto, ninguna alerta. El nuevo equipo conectado dará link de forma normal, pero veamos qué ocurre al hacer ping ahora a todos los equipos:

SW1#ping 192.168.1.11

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.11, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/5/8 ms

SW1#ping 192.168.1.12

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.12, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/5/6 ms

SW1#ping 192.168.1.13

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.13, timeout is 2 seconds:
.....
Success rate is 0 percent (0/5)


SW1#ping 192.168.1.14

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.14, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 5/6/7 ms



Todos los equipos que respondían antes, pero el nuevo equipo (IP 192.168.1.13) no responde pese a estar dando link: el switch está parando todo el tráfico dirigido y proveniente de él.


restrict

El modo restrict se comporta exactemente igual que protect con la diferencia de que se notificará la puesta en marcha de la protección mediante mensajes de SNMP o Syslog, si los tenemos configurados adecuadamente en el switch.

El comando para configurarlo es:

SW1(config-if)#switchport port-security violation restrict

Y para verificarlo:

SW1#show port-security interface fastEthernet 0/2
Port Security              : Enabled
Port Status                : Secure-up
Violation Mode             : Restrict
Aging Time                 : 0 mins
Aging Type                 : Absolute
SecureStatic Address Aging : Disabled
Maximum MAC Addresses      : 3
Total MAC Addresses        : 3
Configured MAC Addresses   : 0
Sticky MAC Addresses       : 0
Last Source Address:Vlan   : 0002.1758.D55A:1
Security Violation Count   : 6

lunes, mayo 04, 2015

Port Security en switches Cisco: los comandos "switchport port-security" y "switchport port-security mac-address" y el error "Found duplicate mac-address"

En una entrada anterior (Port Security en switches Cisco: cuando no podemos asegurar el puerto y nos sale "Command rejected: FastEthernet0/1 is a dynamic port") vimos la razón de cierto error y cómo asegurar un puerto de un switch Cisco para permitir que por el mismo pasase única y exclusivamente una sola MAC y que el puerto se deshabilitase al pasar MACs adicionales, como ocurre cuando se conecta un hub u otro switch a un puerto donde debería haber un único cliente.