Seguridad de Red

Segmentación VLAN — Oficina CULTIVA IA

OPNsense · Cisco SG350-10 · UniFi U6 Lite · 5 VLANs · Junio 2026

Topología de red segmentada
🌐
Internet
ISP fibra 1 Gbps
WAN
🛡️
OPNsense
Protectli FW4B · 192.168.x.1
TRUNK VLANs 10,20,30,40,99
🔀
Cisco SG350-10
10 puertos gestionados
💻
Puertos 5–8
Access VLAN 10
8 MacBooks, 2 iMacs
📡
Puerto 2
Trunk VLANs 10,20,40
2× UniFi U6 Lite
🗄️
Puertos 3–4
Access VLAN 30
NAS Synology · Pi-hole
⚙️
Puerto 9
Access VLAN 99
Admin consola switch
SSIDs emitidos por los 2 APs →
📶 CULTIVA-Trabajo → VLAN 10
📶 CULTIVA-IoT → VLAN 20
📶 CULTIVA-Visitas → VLAN 40
VLAN 10 Trusted
192.168.10.0/24 · GW: 192.168.10.1

Dispositivos de trabajo del equipo CULTIVA. Acceso total a todos los segmentos. SSID: CULTIVA-Trabajo (WPA3, contraseña robusta).

VLAN 20 IoT
192.168.20.0/24 · GW: 192.168.20.1

Dispositivos inteligentes y domotica. Solo acceso a internet y DNS vía Pi-hole. Bloqueado de VLAN 10 y 30. SSID: CULTIVA-IoT.

VLAN 30 Servers
192.168.30.0/24 · GW: 192.168.30.1

Infraestructura crítica. NAS con copias de seguridad y datos de clientes. Pi-hole sirve DNS a todos los segmentos. Acceso restringido solo desde VLAN 10.

VLAN 40 Guest
192.168.40.0/24 · GW: 192.168.40.1

Red de visitas. Solo internet, sin acceso a ningún recurso interno. Client isolation activado (los invitados tampoco se ven entre sí). SSID: CULTIVA-Visitas.

VLAN 99 Management
192.168.99.0/24 · GW: 192.168.99.1

Paneles de administración del hardware de red. Solo accesible desde VLAN 10. Nunca expuesto a IoT ni Guest. Native VLAN: 999 (unused) para evitar VLAN hopping.

Reglas de firewall OPNsense (procesadas en orden)
# Origen Destino Protocolo Acción Descripción
01 Todas las VLANs 192.168.30.2:53 UDP/TCP ✓ ALLOW DNS hacia Pi-hole para todos los segmentos
⚠️ Esta regla DEBE ir antes del bloqueo RFC1918
02 IoT VLAN 20 RFC1918 (redes privadas) any ✗ BLOCK Bloqueo total de IoT hacia recursos internos
03 IoT VLAN 20 Internet any ✓ ALLOW IoT puede salir a internet (actualizaciones firmware, cloud)
04 Guest VLAN 40 Redes locales (RFC1918) any ✗ BLOCK Visitas no pueden alcanzar ningún recurso interno
05 Guest VLAN 40 Internet any ✓ ALLOW Acceso a internet solo
06 Cualquier VLAN 192.168.99.0/24 any ✗ BLOCK Solo VLAN 10 puede acceder a paneles de gestión
Excepto desde Trusted, que se permite explícitamente antes
07 Trusted VLAN 10 any any ✓ ALLOW Equipo de confianza tiene acceso total
08 Servers VLAN 30 Internet TCP 443/80 ✓ ALLOW NAS y Pi-hole pueden descargar actualizaciones
Configuración de puertos — Cisco SG350-10
Pto. 1
Uplink → OPNsense LAN
Trunk
VLANs tagged: 10, 20, 30, 40, 99
Native VLAN: 999 (unused)
Pto. 2
2× UniFi U6 Lite (APs)
Trunk
VLANs tagged: 10, 20, 40
Los APs mapean cada SSID a su VLAN
Pto. 3
NAS Synology DS923+
Access
VLAN 30 (untagged)
IP fija: 192.168.30.30
Pto. 4
Raspberry Pi 4 (Pi-hole)
Access
VLAN 30 (untagged)
IP fija: 192.168.30.2
Ptos. 5–8
Puestos de trabajo cableados
Access
VLAN 10 (untagged)
MacBooks / iMacs con dock
Pto. 9
Consola admin switch
Access
VLAN 99 (untagged)
Solo accesible desde Trusted
Pto. 10
Libre / reservado
Access
Sin asignar
Default VLAN 999 (desactivado)
Mapeo SSID → VLAN (UniFi U6 Lite)
SSID VLAN Seguridad Restricciones Uso
CULTIVA-Trabajo VLAN 10 WPA3-Personal, contraseña 16+ chars Solo compartir con equipo permanente Portátiles y móviles del equipo
CULTIVA-IoT VLAN 20 WPA2-Personal Contraseña impresa en rack para onboarding de dispositivos Cámaras, smart TV, Chromecast, termostato
CULTIVA-Visitas VLAN 40 WPA2-Personal Client isolation ON · Portal cautivo opcional Clientes, contratistas, visitas puntuales
Configuración OPNsense — Regla crítica IoT (pfSense/OPNsense)
# Interfaces → Assignments → VLANs → Add # Parent: em1 (LAN NIC) VLAN 10 Tag: 10 Desc: Trusted IP: 192.168.10.1/24 VLAN 20 Tag: 20 Desc: IoT IP: 192.168.20.1/24 VLAN 30 Tag: 30 Desc: Servers IP: 192.168.30.1/24 VLAN 40 Tag: 40 Desc: Guest IP: 192.168.40.1/24 VLAN 99 Tag: 99 Desc: Mgmt IP: 192.168.99.1/24 # ---- Firewall → Rules → IoT (VLAN 20) ---- # Regla 1 — PRIMERO: permite DNS hacia Pi-hole Action: Pass Protocol: TCP/UDP Source: IoT net Destination: 192.168.30.2 Port: 53 Description: "Allow IoT DNS to Pi-hole" # Regla 2 — bloquea IoT hacia todas las redes privadas Action: Block Protocol: any Source: IoT net Destination: RFC1918_Networks # alias: 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 Description: "Block IoT to all private networks" # Regla 3 — permite salida a internet Action: Pass Protocol: any Source: IoT net Destination: any Description: "Allow IoT to internet"
Errores comunes a evitar
✗ MAL — VLANs sin firewall
Crear las VLANs sin añadir reglas de bloqueo: el inter-VLAN routing está abierto por defecto en OPNsense. La smart TV seguirá pudiendo llegar al NAS.
✓ BIEN
Añadir las reglas de bloqueo inmediatamente después de crear cada VLAN. Verificar con ping desde IoT a Trusted antes de cerrar la ventana de mantenimiento.
✗ MAL — Pi-hole en VLAN IoT
Si el Pi-hole está en VLAN 20, los dispositivos de confianza no pueden llegar a él sin reglas extra, y los IoT tienen acceso al mismo segmento que el servidor DNS.
✓ BIEN
Pi-hole en VLAN 30 (Servers), IP fija 192.168.30.2. Regla que permite puerto 53 desde todas las VLANs hacia esa IP, antes de cualquier bloqueo RFC1918.
✗ MAL — Native VLAN = Management
Usar la VLAN de gestión como native (sin tag) permite ataques de VLAN hopping: un dispositivo puede enviar tramas sin tag y llegar al panel admin del switch.
✓ BIEN
Native VLAN = 999 (VLAN vacía, sin dispositivos). Todo el tráfico de gestión circula tagged. Desactivar puertos sin uso y asignarlos a VLAN 999.
✗ MAL — Misma contraseña Wi-Fi
Usar la misma contraseña en CULTIVA-Trabajo y CULTIVA-IoT. Cualquiera que sepa la contraseña puede conectar un portátil a la VLAN IoT y bypass las reglas.
✓ BIEN
Tres SSIDs con tres contraseñas distintas. La de Trabajo solo se da al equipo permanente. La de IoT se usa solo para onboarding de dispositivos inteligentes.
Checklist de verificación post-implantación