jueves, 25 de septiembre de 2008

CONFIGURACION PORT-SECURITY SWITCH CISCO

Implementando port-security en los switches de acceso


Fundamentos:


Conjunto de medidas de seguridad a nivel de puertos disponibles en la mayoría de los switchs de gama media y alta, la funciones provistas dependen de la marca, el modelo y la versión de firmware del switch en cuestión.

Es así que Port Security es un feature (rasgo) de los switches Cisco que nos permite retener las direcciones MAC conectadas a cada puerto del dispositivo o switch y permitir solamente a esas direcciones MAC registradas comunicarse a través de ese puerto del switch.

Que nos permite restringir entre otras cosas?
  • Restringir el acceso a los puertos del switch según la MAC.
  • Restringir el numero de MACs por puerto en el switch.
  • Reaccionar de diferentes maneras a violaciones de las restricciones anteriores.
  • Establecer la duración de las asociaciones MAC-Puerto.

Si un dispositivo con otra dirección MAC intenta comunicarse a través de un puerto de la LAN, port-security deshabilitará el puerto. Incluso se puede implementar SNMP(ver definiciones) para recibir al momento en el sistema de monitoreo la notificación correspondiente al bloqueo del puerto.

Configuración de Port-Security:

El proceso de configuración requiere ingresar a la configuración de la interfaz en cuestión e ingresar el comando port-security. Ejemplo (para nuestros ejemplos vamos a tomar el puerto 15 del switch:


Switch)#config ter

Switch(config)#int fa0/15

Switch(config-if)#switchport port-security ?

..aging.........Port-security aging commands

..mac-address...Secure mac address

..maximum.......Max secure addresses

..violation.....Security violation mode

Switch(config-if)# switchport port-security

Si se ingresa solamente el comando básico, se asumen los valores por defecto: solo permite una dirección MAC en el puerto, que será la primera que se conecte al mismo, en caso de que otra dirección MAC intente conectarse utilizando el mismo puerto, este será deshabilitado o bloqueado. Claro esta que todos estos parámetros son modificables:

Switch(config-ig)#switchport port-security maximum [cantidad de MAC permitidas]

Esta opción permite definir el número de direcciones MAC que está permitido que se conecten a través de la interfaz del swtich. El número máximo de direcciones permitidas por puerto va desde 1 a 132. Es importante tener presente que este feature (rasgo) también limita la posibilidad de un ataque de seguridad por inundación de la tabla CAM (ver definiciones) del switch. El siguiente ejemplo ilustra la configuración del puerto 15 y que solo acepte hasta 10 direcciones MAC máximas posibles:

Switch(config)#interface FastEthernet 0/15
(Dentro del modo configuración de interface del puerto a configurar)
Switch(config-if)# switchport mode access
Switch(config-if)# switchport port-securitySwitch(config-if)#switchport port-security maximum 10

Switch(config-if)# switchport port-security violation [shutdown restrict protect]

Este comando establece la acción que tomará el switch en caso de que se supere el número de direcciones MAC que se establece con el comando anterior. Las opciones son deshabilitar el puerto, alertar al Administrador de la Red o permitir exclusivamente el tráfico de la MAC que se registró inicialmente.
En el siguiente ejemplo trabajando con el puerto 15 del switch, podemos especificar qué hacer si ese número de direcciones MAC es superado (por default deshabilitar el puerto

Switch(config)#interface FastEthernet 0/15

Que deje de prender:
Switch(config-if)# switchport port-security violation protect

Que envíe una alerta administrativa:
Switch(config-if)# switchport port-security violation restrict

Que desabilite el Puerto del switch:
Switch(config-if)# switchport port-security violation shutdown

Posterior al haber deshabilitado el puerto del switch, este se puede volver habilitar con el siguiente comando previa autorización del Administrador de la Red:
Switch(config-if)# switchport port-security mac-address
Switch(config-if)# shutdown
Switch(config-if)# no shutdown

switchport port-security mac-address [MAC address]

Esta opción permite definir manualmente la dirección MAC que se permite conectar a través de ese puerto, o dejar que la aprenda dinámicamente varias direcciones MAC. Ejemplo:

Switch(config)#interface FastEthernet 0/15

(Dentro del modo configuración de interface del puerto a configurar)
Switch(config-if)# switchport port-security mac-address sticky (esta opcion leera y aprendera la primera mac-address que se conecte)


Switch(config-if)# switchport port-security mac-address xxxx.xxxx.xxxx (este comando te permitira definir una mac-address estatica) es decir:

  1. Con la primera línea de comando le digo que agregue las MACs que va aprendiendo a la lista de MACs seguras.
  2. Con la segunda linea de comando, que agregue la MAC 00:0a:5e:5a:18:1b a la lista de MACs seguras.
  3. Si no agrego una segunda MAC, la primera MAC que escuche distinta a 00:0a:5e:5a:18:1b será agregada a la lista de MACs seguras.

Atención..! Este comando no debe ser configurado en un puerto troncal o de backbone, ya que por estos puertos circulan tramas con múltiples direcciones MAC, diferentes de origen. Esto daría como resultaría el bloqueo del puerto.

El monitoreo de este feature (rasgo):

Hay comandos específicos que permiten monitorear el estado de los puertos que tienen implementado port-security, Ejemplo:

Switch# show port-security address

......Secure Mac Address Table

---------------------------------------------------------

Vlan..Mac Address....Type..........Ports..Remaining Age

..............................................(mins)

----..-----------....----..........-----..-------------

1....xxxx.xxxx.xxxx..SecureDynamic Fa0/15.......

-----------------------------------------------------------

Total Addresses in System (excluding one mac per port).....:.0

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

Switch# show port-security interface fa0/15

Port Security.....................: EnabledPort

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...............: xxxx.xxxx.xxxx

Security Violation Count..........: 0

Switch#


Deficiones Complementarias

Tabla CAM:

  • Los switchs guardan las asociaciones MAC e información de VLAN en un tabla llamada tabla CAM.
    La tabla CAM de un switch tiene un tamaño fijo y finito.
  • Cuando la tabla CAM no tiene espacio para almacenar más asociaciones MAC, envía a todos los puertos las tramas que tengan una dirección MAC destino no almacenada en la tabla CAM. (Actúa como un HUB para cualquier MAC que no haya aprendido).
  • Existe un ataque que se basa en el tamaño limitado de la tabla CAM.
  • Para realizar el ataque sólo hace falta enviar gran número de tramas con direcciones MAC distintas (usualmente generadas al azar) a cualquier puerto del switch hasta que se llene la tabla CAM.

Port Security:

  • Port Security es un conjunto de medidas de seguridad a nivel de puertos disponibles.
  • Permite entre otras cosas: restringir el acceso a los puertos según la MAC, restringir el número de MACs por puerto, reaccionar de diferentes maneras a violaciones de las restricciones anteriores, establecer la duración de las asociaciones MAC.
  • Tomar en cuenta que: No se puede activar port security en puertos dynamic access o trunk, por defecto Port Security está desactivado y sólo almacena una MAC por puerto.

Simple Network Management Protocol - SNMP

  • El Protocolo Simple de Administración de Red o SNMP es un protocolo de la capa de aplicación que facilita el intercambio de información de administración entre dispositivos de red. Es parte de la familia de protocolos TCP/IP. SNMP permite a los administradores supervisar el desempeño de la red, buscar y resolver sus problemas, y planear su crecimiento.
  • Las versiones de SNMP más utilizadas son dos: SNMP versión 1 (SNMPv1) y SNMP versión 2 (SNMPv2). Ambas versiones tienen un número de características en común, pero SNMPv2 ofrece mejoras, como por ejemplo, operaciones adicionales.
  • SNMP en su última versión (SNMPv3) posee cambios significativos con relación a sus predecesores, sobre todo en aspectos de seguridad, sin embargo no ha sido mayoritariamente aceptado en la industria.

Saludos cordiales,

Aurelio Valverde Silva

Ing. de Sistemas - UPC

4 comentarios:

Unknown dijo...

Estimado,

Me fui de mucha ayuda. su mini tutorial, Muchas Gracias.

Unknown dijo...

Gracias por el aporte es bastante útil y nuevamente agradecemos su buena actitud de compartir su tiempo en realizar este tutorial.

Unknown dijo...

Amigo muy beneficiosa su ayuda, pero tengo un percance, necesito realizar un port security para varios switches conectados entre si lo que seria un total de 680 puertos, hay alguna forma de hacerlo de manera masiva, no se si desarrollando un script o no se si cisco tendra un software en especifico para ello. Agradezco su respuesta.

Victor Manuel dijo...

Muchas gracias por el tutorial de Port-security, me pareció de muy buena calidad tu explicación y en caso de duda lo puedo volver a repetir, gracias por compartir tu tiempo y conocimiento con nosotros, un saludo y mucho éxito en lo que hagas.

Victor Lopez.