Asegurar el acceso de un switch
Los switches Catalyst ofrecen una característica de seguridad para limitar qué y/o cuantas direcciones MAC pueden acceder en un interface. Se puede configurar en una interface con Vlan de voz (VoIP) pero No en TRUNKs. Para ello primero se debe habilitar la característica con el comando:
switch(config-if)# switchport port-security
Una vez activado, por defecto SOLO permite una dirección MAC, por lo que si queremos habilitar más debemos indicarlo con este comando:
switch(config-if)# switchport port-security maximum max-addr
donde max-addr puede ser de 1 a 1024. Como por defecto solo se permite una MAC, si el puerto está configurado con VoIP debemos permitir al menos 3 (recomendación de Cisco).
Un dato a tener en cuenta es que cuando se activa port-security las direcciones de MAC no expiran como lo harían por defecto, si queremos que expiren debemos configurar el comando (minutos puede ser de 1 a 1440 minutos):
switch(config-if)# switchport port-security aging time minutos
También podemos definir estáticamente direcciones MAC que pueden transmitir tráfico por el interface usando el comando:
switch(config-if)# switchport port-security mac-address mac-addr
La dirección MAC mac-addr debe expresarse como 3 grupos separados por puntos (0000.0000.0000). En caso de que definamos estáticamente menos direcciones de las permitidas en la interface, el resto de direcciones MAC que queden hasta el máximo permitido serán aprendidas dinámicamente.
Por último debemos especificar que acción se debe tomar en caso de que se supere el número de direcciones MAC permitidas o que se aprenda una dirección MAC no definida estáticamente, con el siguiente comando:
switch(config-if)# switchport port-security violation {shutdown | restrict | protect}
Con el siguiente comando conseguimos que las MACs aprendidas dinámicamente sean persistentes incluso después de un reinicio del switch:
switch(config-if)# switchport port-security mac-address sticky
Solo se quedan en la running config por lo que si queremos que tras un reinicio del switch se mantengan las MAC debemos copiar la running a la startup config.
En caso de que queramos limpiar la(s) MAC(s) de un interface para poder permitir otra MAC podemos usar este comando a nivel de dirección MAC o de interface:
switch# clear port-security dynamic [address mac-addr | interface type mod/num]
Para ver el estado de una interface usaremos el comando:
switch# show port-security interface type mod/num
Para ver un resumen rápido SOLO de interfaces que están en modo errdisable (que incluye la razón de por qué está así), podemos usar el comando:
switch# show interfaces status err-disabled
Para un listado de las interfaces configuradas con port security con sus contadores y la acción configuradas por cada una de las interfaces, podemos usar el comando:
switch# show port-security
Los switches Catalyst soportan autenticación basada en interface, una combinación de autenticación AAA y seguridad de interface. Esta característica está basada en el estándar 802.1x que una vez activado no pasa nada de tráfico hasta que un usuario se autentica.
Como es lógico tanto el ordenador o servidor del usuario final como el switch deben soportar el estándar 802.1x usando EAPOL (Extensible Authentication Protocol Over LANs). Si la parte del cliente (PC) está configurado con soporte de 802.1x pero el switch no, el cliente se comunica normalmente descartando el protocolo 802.1x. Si es al contrario, el switch está configurado con soporte de 802.1x y el cliente (PC) no, entonces no se transmite ningún tipo de tráfico.
El protocolo 802.1x es un protocolo de Capa 2, en el momento que un switch detecta la presencia de un dispositivo deja la interface en estado NO autorizado. El cliente (PC) solo puede comunicarse usando EAPOL. Por eso el cliente (PC) requiere de una aplicación o software que soporte 802.1x.
Cuando un dispositivo se conecta a un interface configurado con 802.1x sigue estos pasos:
El protocolos 802.1x requiere de tres diferentes dispositivos que sean configurados para que la autenticación basada en puerto funcione:
switch(config)# aaa new-model
switch(config)# radius-server host {hostname | ip-address} [key string]
switch(config)# aaa authentication dot1x default group radius
switch(config)# dot1x system-auth-control
switch(config)# interface type mod/num switch(config)# dot1x port-control {force-authorized | force-unauthorized | auto}donde cada estado puede ser:
switch(config-if)# dot1x host-mode multi-host
Para poder verificar las interfaces configuradas con 802.1x podemos usar el comando:
switch# show dot1x all
Para configurar, lo hacemos a nivel de interface usando el comando:
Switch(config-if)# storm-control {broadcast | multicast | unicast} level { level [level-low] | bps bps [bps-low] | pps pps [pps-low] }
Puede establecer el umbral de tráfico con la palabra clave de level y una de las siguientes palabras clave y valores:
Tenemos que establecer la acción una vez se supera el umbral, con el comando:
Switch(config-if)# storm-control action {shutdown | trap}
Podemos visualizar los umbrales ascendentes y descendentes de Storm Control, además de la tasa actual, con el siguiente comando:
Switch# show storm-control [interface-id] [broadcast | multicast | unicast]
switch(config)# ip http secure server switch(config)# acces-list num permit IP wildcard switch(config)# ip http access-class num