En este escenario, partimos de un switch principal Cisco gestionable, con una configuración preestablecida, con sus VLAN e interfaces configuradas. El objetivo es eliminar un switch no gestionable de la red (actualmente conectado al switch principal) y sustituirlo por un segundo Cisco gestionable, conectando ambos equipos mediante un enlace troncal por fibra óptica a través de sus puertos SFP.

Estudio de caso, cambio de switch secundario no gestionable a gestionable

A continuación, mostramos los escenarios inicial (actual) y al que el que se pretende alcanzar. En líneas generales, se trata de cambiar un switch secundario no gestionable por uno gestionable, para poder establecer redes/VLAN del switch principal en el secundario.

Escenario inicial (con switch secundario no gestionable)

1. Conexión a Internet:

  • Nube: Internet.
  • Router: router a Internet (IP 192.168.1.1).

2. Switch principal (Cisco Catalyst 1000-16):

  • Equipo: switch Principal sw1000_16 (IP 192.168.10.2).
  • Puerto Gi1/0/16: conectado al Router (VLAN 99).
  • Puerto Gi1/0/12: conectado a Proxmox Server (VLAN Trunk: 10, 50, 99). Proxmox incluye la máquina virtual FW OPNsense gestionando las VLAN 10, 50 y 99.
  • Puerto Gi1/0/1: conectado al switch secundario. Interfaz GigabitEthernet1/0/1: modo acceso (access) VLAN 10 untagged.

3. Enlace entre switches:

  • Enlace ethernet de cobre.

4. Switch secundario (el equipo a sustituir):

  • Equipo: switch no gestionable, sin IP de gestión ni protocolo IEEE 802.1Q para gestión de VLAN.
  • Conexiones finales (todas heredan la VLAN 10 del puerto Gi1/0/1 del principal):

Escenario final (con switch secundario gestionable)

1. Conexión a Internet:

  • Nube: Internet.
  • Router: router a Internet (IP 192.168.1.1).

2. Switch principal (Cisco Catalyst 1000-16):

  • Equipo: switch Principal sw1000_16 (IP 192.168.10.2).
  • Puerto Gi1/0/16: conectado al Router (VLAN 99).
  • Puerto Gi1/0/12: conectado a Proxmox Server (VLAN Trunk: 10, 50, 99). Proxmox incluye la máquina virtual FW OPNsense gestionando las VLAN 10, 50 y 99.
  • Puerto Gi1/0/18 (SFP): puerto configurado en modo troncal (trunk) para conectar con el switch secundario. Permite el paso de las redes de forma etiquetada (VLAN Trunk permitidas: 10 y 50).

3. Enlace entre switches:

  • Conexión: enlace mediante módulos SFP (Transceivers) y cable de fibra óptica (o cable DAC/cobre soportado). Transporta el tráfico etiquetado mediante el protocolo IEEE 802.1Q (Trunk VLAN 10 y 50).

4. Switch secundario (nuevo Cisco Catalyst 1000-10):

  • Puerto Gi1/0/4 (Televisión): configurado en modo acceso (VLAN 50 WIFI) con portfast activado. Gracias al switch gestionable y al enlace troncal, la televisión queda aislada correctamente en la red de invitados/WiFi.
  • Equipo: switch gestionable sw1000_secundario (IP de gestión 192.168.10.3), configurado con protocolo VTP en modo transparente y acceso seguro por SSH.
  • Puerto Gi1/0/10 (SFP): puerto troncal de recepción conectado al switch principal (VLAN Trunk permitidas: 10 y 50).
  • Conexiones finales (segmentadas por VLAN):

De esta forma, todo el tráfico de los ordenadores PC1, PC2 y de la Televisión, que conectaremos al nuevo switch secundario, viajará etiquetado por la VLAN 10 y VLAN 50 respectivamente.

Reconfiguración del switch secundario y conexión al principal por SFP

Paso 1: Limpiar la configuración del switch secundario

Antes de empezar, es vital asegurarnos de que el nuevo equipo no arrastre configuraciones antiguas, especialmente si estuvo funcionando en otra red y con alguna configuración, incluso si perteneció a un dominio VTP. Para dejarlo totalmente en «limpio», debemos borrar el archivo de configuración de inicio y, muy importante, eliminar la base de datos de VLAN de la memoria flash. Para hacer esto, si tenemos acceso al swtich a través de SSH, realizaremos la conexión, aunque para este procedimiento, donde vamos a cambiar toda la configuración del switch, para no perder el acceso, lo más seguro es conectar al puerto de consola (console) por serial:

Necesitaremos un cable «especial», y un adaptador de serie a USB:

Si optamos por la conexión por consola/serie, que es la mejor para este caso concreto de reconfigurar un switch, una vez conectado el cable al puerto console del switch y al USB del equipo, mediante PuTTY (o algún otro cliente que admita conexión serie), averiguaremos cuál es el puerto COM asignado al adaptador USB/Serie, desde el administrador de dispositivos:

En este caso, el puerto COM asignado al USB Serial Port es el 3, por lo que en PuTTY marcaremos «Serial» y estableceremos «COM3»:

En ocasiones tendremos que pulsar INTRO con el foco/cursor en la ventana de PuTTY varias veces hasta que nos muestre el prompt/shell:

En cuanto tengamos el shell podremos iniciar el proceso.

En primer lugar, desde el switch secundario «nuevo», ejecutaremos los siguientes comandos para eliminar toda su configuración. Antes de proceder, nos aseguraremos de que estamos conectados al switch correcto y de que no queremos guardar la configuración actual:

Alguno de los comandos anteriores puede que pida confirmación, normalmente para confirmar hay que pulsar INTRO.

El switch se reiniciará, se verá la carga del SO del switch en la consola PuTTY si hemos conectado con cable serie al puerto console. Puede tardar varios minutos en arrancar. En cuanto arranque, preguntará si queremos entrar en el «Initial Configuration Dialog», responderemos «no».

Paso 2: Configurar el enlace troncal (SFP) en el switch principal

En el switch principal Cisco, utilizaremos la interfaz física SFP número 18 para crear el puente. Primero restablecemos el puerto a sus valores de fábrica para evitar conflictos. A continuación, lo configuramos en modo troncal (trunk), permitimos explícitamente el paso de la VLAN 10 y establecemos la VLAN 10 como nativa. Finalmente, optimizamos el protocolo Spanning Tree declarando el enlace como punto a punto. Para ello, al switch principal sí podremos conectarnos por SSH (si está habilitado este acceso) porque NO vamos a cambiar su configuración base, solo vamos a configurar un puerto.

Desde el shell del switch principal, ejecutaremos estos comandos:

De momento configuraremos la VLAN 10 en el enlace troncal del switch principal con el secundario. Más adelante agregaremos la VLAN 50 para la red de la WIFI y poder conectar en un puerto del switch secundario la televisión.

Paso 3: Configuración base y enlace troncal en el switch secundario

Volvemos al switch secundario, que ha se habrá reiniciado, seguimos conectados a él por cable serie y consola. Procedemos a configurarlo desde cero. Le asignaremos su nombre de host y configuraremos el protocolo VTP en modo transparente (con el dominio proyectoa.local.com) para aislar su base de datos de VLAN del resto de la red. Crearemos la VLAN 10, le asignaremos la IP de gestión 192.168.10.3 y definiremos la puerta de enlace. Después, generaremos las claves RSA para habilitar el acceso remoto seguro por SSH versión 2 con nuestro usuario administrador.

Para realizar todo el proceso de configuración básica del switch, ejecutaremos los siguientes comandos:

Para terminar de configurar el swtich secundario, configuraremos su puerto SFP (interfaz 10) exactamente igual que hicimos en el switch principal para levantar el troncal:

Paso 4: Configurar los puertos de acceso para los equipos de la LAN

El siguiente paso es preparar las bocas donde conectaremos físicamente los ordenadores locales. Utilizaremos los puertos 1 y 2 del nuevo switch secundario.

Los configuraremos como puertos de acceso asignados a la VLAN 10. Es fundamental añadir el comando spanning-tree portfast edge para evitar que el switch bloquee el puerto durante 30 segundos cada vez que encendamos los ordenadores; esto garantiza que tengan conexión a la red de forma instantánea.

Para configurar los puertos 1 y 2 del switch secundario, accederemos a él por SSH (ya configurada esta conexión) o bien podemos seguir desde consola, y ejecutaremos los siguientes comandos:

Paso 5: Cómo añadir nuevas VLAN al switch secundario

Una vez que tenemos la red funcionando, si queremos añadir alguna VLAN adicional al switch secundario, por ejemplo para la Televisión del escenario inicial, que queremos conectar a una VLAN separada de la LAN (VLAN 10), la VLAN 50, que ya tenemos definida en el switch principal.

En este caso, conectaremos la Televisión al puerto 4 del switch secundario, por lo que configuraremos este puerto con la VLAN 50.

Importante: cuando trabajamos con switches enlazados, no basta con configurar el puerto de acceso. Si queremos añadir más VLAN al switch secundario, tendremos que añadirlas obligatoriamente a las troncales de enlace en ambos switches para que el tráfico pueda cruzar de un equipo a otro. Además, al tener VTP en modo transparente, debemos dar de alta la VLAN manualmente en el switch secundario.

Primero, actualizamos el puerto troncal en el switch principal permitiendo ahora las VLAN 10 y 50. Para ello, nos conectamos al switch principal y ejecutamos los siguientes comandos:

Como podemos observar, únicamente hemos agregado la VLAN 50 al troncal.

A continuación, vamos al switch secundario. Actualizamos su lado del troncal, creamos la nueva VLAN 50 en su base de datos local y, finalmente, configuramos el puerto 4 para la televisión. Para ello, nos conectamos por SSH al switch secundario y ejecutamos estos comandos:

De esta forma, ya tendremos configurado el segundo switch para conectar en los puertos 1 y 2 los equipos PC de la LAN (VLAN 10), y en el puerto 4 la Televisión (VLAN 50).

Añadir defensa en profundidad con Port ACL (PACL)

La seguridad y el aislamiento de estas dos VLAN nos lo proporciona el cortafuegos OPNsense, como indicamos en este tutorial:

Pero, si queremos añadir más defensa en profundidad, como una segunda «capa», para garantizar que ningún dispositivo de la red WIFI (VLAN 50) pueda comunicarse con la red privada LAN (VLAN 10) a nivel físico, vamos a crear una Lista de Control de Acceso Extendida en los switches.

Esta regla funcionará como un «cortafuegos» (no exactamente, pero algo similar) en los puertos físicos: si el paquete tiene como destino la red 192.168.10.0, lo destruye inmediatamente. Si va hacia Internet (cualquier otro destino), lo deja pasar.

1. Configuración en el switch principal (para el punto de acceso WiFi)

En el switch principal, tenemos el punto de acceso conectado en el puerto Gi1/0/14. Vamos a crear la ACL y aplicarla de entrada (in) en ese puerto.

2. Configuración en el switch secundario (para la Televisión VLAN 50)

Hacemos exactamente lo mismo en el switch secundario, pero aplicándolo al puerto Gi1/0/4, que es donde está conectada la Televisión.

Explicación de esta configuración de ACL

  • Wildcard 0.0.0.255: en Cisco, las máscaras de red se escriben a la inversa en las ACL. Esto significa «Aplica a cualquier IP que empiece por 192.168.50 y nos dará igual el último número».
  • permit ip any any: es vital no olvidar esta línea. Las ACL de Cisco tienen una regla invisible al final que bloquea todo por defecto (el Deny All implícito). Si no la ponemos, la Televisión y el WiFi se quedarán sin acceso a Internet.
  • Aplicación in: al aplicar la regla de «entrada» (inbound), el switch analiza y destruye el paquete malicioso nada más entrar por el cable, antes de que llegue siquiera a procesarlo para enviarlo por el troncal de fibra.

Esta es una medida adicional de seguridad que es recomendable aplicar en entornos críticos, donde la seguridad es determinante. Dado que si comentemos «un fallo» en el cortafuegos, al menos, tendremos una segunda barrera. Aunque hay que indicar que las ACL en los switches son bastante limitadas, como se ha podido observar, son básicas, pero al menos se define una mínima seguridad «física».