Durante años usé el router que me dio mi ISP. Un Huawei cualquiera que hacía lo básico: NAT, DHCP, WiFi malo. Funcionaba.
Cuando empecé a montar el homelab en serio, ese router se quedó corto. Quería VLANs, VPN, IDS/IPS, control granular de tráfico. El Huawei no podía con eso.
Tenía dos opciones: pfSense o OPNsense. Leí 40 comparativas. Todas decían cosas diferentes. Al final probé los dos.
Durante 6 meses tuve pfSense en producción. Luego otros 6 meses OPNsense. Ahora uso OPNsense y no pienso volver.
Te cuento por qué, qué bugs encontré en cada uno, y cómo decidir cuál te conviene según tu homelab.
Contexto: qué es pfSense y OPNsense#
Ambos son firewalls open source basados en FreeBSD. Nacieron del mismo proyecto (m0n0wall). Se parecen un montón. Pero tienen diferencias importantes.
pfSense - Proyecto original, más antiguo, más documentación, más usuarios. Mantenido por Netgate (empresa que vende hardware con pfSense pre-instalado). Versión Community gratuita + versión Plus con features extra.
OPNsense - Fork de pfSense creado en 2015 por Deciso. Código 100% abierto (pfSense Plus no lo es). UI más moderna. Actualizaciones más frecuentes. También venden hardware pero el software es idéntico.
En papel son casi iguales. En la práctica hay diferencias que importan.
Mi setup (para que entiendas el contexto)#
Antes de entrar en detalles, esto es lo que tengo:
- Mini PC Minisforum MS-01 con 2 puertos 10GbE (OPNsense instalado bare metal)
- Switch TP-Link managed con VLANs (IoT, homelab, LAN normal, DMZ)
- 4 VPN Wireguard activas (acceso remoto, site-to-site con otro nodo)
- IDS/IPS con Suricata
- HAProxy para reverse proxy de servicios web
- ~60 dispositivos en la red (mix de PCs, servers, móviles, IoT)
No es un setup trivial. Si tú tienes 10 dispositivos y solo quieres NAT básico, probablemente ambos te van a funcionar igual de bien.
Instalación: OPNsense gana por goleada#
pfSense - Instalador anticuado. Texto plano en consola. Funciona pero es del año 2005. La primera vez que lo instalé tuve que googlear porque no entendía algunas preguntas.
Pasos:
- Bajar ISO
- Flashear a USB
- Boot desde USB
- Seguir wizard en texto plano
- Configurar interfaces (WAN, LAN, OPT1…)
- Reboot
- Entrar por web a http://192.168.1.1
Tardé 20 minutos. No es difícil pero tampoco es intuitivo.
OPNsense - Instalador gráfico moderno. Idiomas múltiples (incluido español). Explicaciones claras. Autodetecta interfaces.
Pasos:
- Bajar ISO
- Flashear a USB
- Boot desde USB
- Instalador gráfico te guía
- Configurar red desde la UI web (más fácil que en consola)
- Listo
Tardé 10 minutos. Mi madre podría instalarlo.
Ganador: OPNsense. No hay color.
Interfaz web: depende de lo que prefieras#
pfSense - UI funcional pero fea. Parece de 2010. Todo está ahí pero hay que buscarlo. Menús anidados. Ventanas que abren ventanas.
Ejemplo: para configurar una regla de firewall:
- Firewall > Rules > LAN > Add
- Formulario largo con 30 campos
- Guardar
- Apply changes (botón arriba a la derecha que no ves si no scrolleas)
Funciona. Pero es engorroso.
OPNsense - UI moderna, bonita, organizada. Todo accesible desde el menú lateral. Dashboard con widgets personalizables.
Mismo ejemplo:
- Firewall > Rules > LAN > Add
- Formulario más limpio, campos colapsables
- Guardar > aplica automáticamente
La diferencia parece pequeña pero cuando configuras 50 reglas se nota.
Punto importante: pfSense tiene modo legacy (antiguo) y nuevo (basado en Bootstrap). El nuevo es mejor pero sigue siendo más feo que OPNsense.
Ganador: OPNsense si te importa la estética. pfSense si prefieres “lo que siempre ha funcionado”.
Features: casi iguales (con matices)#
Ambos tienen:
- Firewall stateful
- NAT (port forwarding, 1:1, outbound)
- DHCP server/relay
- DNS forwarder/resolver
- VPN (OpenVPN, IPsec, WireGuard)
- VLANs
- Traffic shaping
- Captive portal
- IDS/IPS (Suricata/Snort)
- HAProxy, Squid, NGINX
Matices:
WireGuard - OPNsense lo tiene nativo e integrado. pfSense lo tiene como paquete desde hace poco. La integración en OPNsense es mejor (UI más clara, configuración más simple).
Yo tengo 4 túneles WireGuard. En pfSense configurarlos fue un dolor. En OPNsense tardé 5 minutos cada uno.
IDS/IPS - Ambos tienen Suricata. En pfSense funciona mejor (más estable, menos false positives en mi experiencia). En OPNsense tuve problemas con reglas que bloqueaban tráfico legítimo.
Puede que sea mala configuración mía. Pero en pfSense fue más plug-and-play.
HAProxy - Más maduro en pfSense. OPNsense tiene NGINX como alternativa (que prefiero personalmente).
Updates - OPNsense actualiza cada 2 semanas. pfSense cada 6-12 meses versiones mayores, parches más frecuentes.
Esto es bueno y malo. OPNsense tiene features nuevas antes. pfSense es más estable (menos riesgo de que una actualización rompa algo).
Ganador: Empate técnico. Depende de qué features uses más.
Bugs y problemas reales que encontré#
pfSense#
Bug 1: OpenVPN site-to-site intermitente
Tenía 2 sitios conectados por OpenVPN. Cada 3-4 días el túnel caía sin razón aparente. Logs decían “TLS handshake failed”. Reiniciar el servicio lo arreglaba.
Solución: Script cron que reinicia OpenVPN si detecta que el túnel está caído. No es una solución real pero funciona.
Bug 2: Dashboard se rompe con muchos widgets
Si añadía más de 8 widgets al dashboard, la página tardaba 10+ segundos en cargar. A veces no cargaba directamente.
Solución: Usar menos widgets. O recargar la página 3 veces.
Bug 3: DHCP leases duplicados
En 2 ocasiones vi IPs duplicadas en la tabla DHCP. Dos dispositivos diferentes con la misma IP. Causó conflictos en la red hasta que limpié la tabla manualmente.
No sé qué lo causó. Nunca me pasó en OPNsense.
OPNsense#
Bug 1: Suricata bloqueaba tráfico HTTPS legítimo
Configuré Suricata con reglas por defecto. Al día siguiente mitad de los sitios web no cargaban. Logs mostraban “ET POLICY SSL/TLS Certificate” blocks.
Solución: Ajustar categorías de reglas, desactivar algunas. Tardé 2 horas en dejarlo fino.
Bug 2: WireGuard se desconecta cada 24h exactas
Los túneles WireGuard caían cada 24 horas. Reiniciar el servicio los volvía a levantar.
Causa: timeout en keep-alive mal configurado. La UI no dejaba claro cómo configurarlo.
Solución: Editar config a mano (via SSH) y poner PersistentKeepalive = 25.
Bug 3: HAProxy no arrancaba después de actualizar
Actualicé de OPNsense 24.1 a 24.7. HAProxy dejó de arrancar. Error: “SSL certificate not found”.
Causa: cambio en rutas de certificados entre versiones.
Solución: Re-importar certificados. 15 minutos perdidos.
Conclusión de bugs: Ambos tienen. pfSense tiene bugs más raros y difíciles de debuggear. OPNsense tiene bugs más documentados (comunidad más activa en foros).
Rendimiento: pfSense es MÁS RÁPIDO (sorprendentemente)#
Esto me sorprendió. Esperaba rendimiento similar. No lo es.
Setup de prueba:
- Mismo hardware (Minisforum MS-01, i5-12600, 32GB RAM)
- iperf3 entre 2 PCs en LANs diferentes (pasando por firewall)
- Reglas de firewall idénticas
- IDS/IPS desactivado (para medir overhead del firewall solo)
Resultados:
| Escenario | pfSense | OPNsense |
|---|---|---|
| Routing básico (sin NAT) | 9.8 Gbps | 9.2 Gbps |
| NAT simple | 8.1 Gbps | 7.4 Gbps |
| NAT + 100 reglas firewall | 6.9 Gbps | 6.1 Gbps |
| VPN WireGuard | 4.2 Gbps | 3.8 Gbps |
| IDS/IPS activo (Suricata) | 2.1 Gbps | 1.8 Gbps |
pfSense consistentemente 10-15% más rápido.
Por qué? No estoy 100% seguro. Creo que tiene que ver con optimizaciones en el kernel de FreeBSD que Netgate hace para pfSense Plus (y que luego pasan a Community).
Pero: en uso real, con mi conexión de 1Gbps simétrica, ambos van sobrados. Solo importa si tienes 10GbE y empujas mucho tráfico.
Ganador: pfSense en papel. Empate en la práctica para la mayoría.
Comunidad y documentación#
pfSense:
- Forum oficial muy activo (netgate.com/forum)
- Wiki extensa pero desorganizada
- Miles de tutoriales en YouTube
- Reddit r/PFSENSE (30k+ miembros)
- Documentación oficial completa pero anticuada
OPNsense:
- Forum oficial también activo (forum.opnsense.org)
- Documentación oficial MUY BUENA (docs.opnsense.org)
- Menos tutoriales en español
- Reddit r/OPNsenseFirewall (10k miembros)
- Comunidad más pequeña pero más colaborativa
Cuando tuve problemas en pfSense, tardé horas en encontrar soluciones (hay mucha info pero scattered).
Cuando tuve problemas en OPNsense, la documentación oficial tenía la respuesta el 80% de las veces.
Ganador: OPNsense por documentación. pfSense por volumen de community content.
Licencia y filosofía (esto importa más de lo que crees)#
pfSense:
- Community Edition: open source (Apache 2.0)
- pfSense Plus: features extra, código cerrado, gratis para uso casero
- Netgate controla el proyecto fuertemente
- Han cerrado código en el pasado (causó el fork OPNsense)
OPNsense:
- 100% open source (BSD license)
- Mismo código para todos (no hay versión “Plus”)
- Proyecto community-driven
- Deciso vende hardware pero no controla features
Para mi esto fue decisivo. Prefiero apoyar proyectos totalmente abiertos. Si Netgate decide cerrar más código o limitar features en Community, estoy jodido.
Con OPNsense sé que el proyecto va a seguir abierto pase lo que pase.
Ganador: OPNsense si te importa el software libre.
Cuál elegir según tu caso#
Elige pfSense si:
- Tienes conexión >1Gbps y necesitas exprimir cada Mbps
- Usas features específicos mejor soportados (Snort legacy, HAProxy avanzado)
- Prefieres estabilidad sobre features nuevas
- Ya conoces pfSense y no quieres re-aprender
- Compras hardware Netgate (pfSense Plus viene instalado)
Elige OPNsense si:
- Quieres UI moderna y fácil de usar
- Usas mucho WireGuard
- Prefieres actualizaciones frecuentes
- Te importa el software 100% open source
- Eres nuevo en firewalls (instalación más fácil)
- Quieres NGINX en vez de HAProxy
Elige tu router del ISP si:
- Solo tienes 5 dispositivos y no haces nada raro
- No tienes hardware extra para firewall dedicado
- No necesitas VPN/VLANs/IDS
Mi decisión final: OPNsense#
Después de usar ambos en producción, me quedé con OPNsense.
Razones:
- UI más agradable - Configuro cosas más rápido
- WireGuard nativo - Lo uso todos los días
- Actualizaciones frecuentes - Me gusta tener features nuevas
- Filosofía open source - Prefiero apoyar proyectos totalmente abiertos
- Documentación clara - Menos tiempo googleando
La diferencia de rendimiento no me afecta (tengo 1Gbps, no 10Gbps). Los bugs que encontré en OPNsense fueron más fáciles de resolver que los de pfSense.
Pero si tuviera 10GbE y necesitara exprimir hasta el último Mbps, probablemente volvería a pfSense.
Proceso de migración (si cambias de uno a otro)#
Lo hice dos veces (pfSense → OPNsense → pfSense → OPNsense). No es trivial pero tampoco imposible.
Exportar config de pfSense#
- Diagnostics > Backup & Restore
- Download config XML
- Guardar en sitio seguro
Importar en OPNsense#
No hay import directo. Hay que reconfigurar a mano.
Qué migrar:
- Reglas de firewall (copiar a mano, no son compatibles XML)
- VPN configs (OpenVPN se puede exportar/importar, WireGuard rehacer)
- DHCP static leases (exportar desde pfSense, script Python para convertir a OPNsense)
- Aliases (IPs, puertos) - copiar a mano
Me llevó 4 horas migrar todo. La segunda vez (vuelta a OPNsense) tardé 2 horas porque ya sabía qué hacer.
Tip: Monta OPNsense en paralelo (otro puerto, otra IP de management). Prueba todo antes de cambiar el default gateway de tu red.
Configuración inicial recomendada (ambos)#
Da igual cuál elijas, haz esto:
Cambiar puerto web admin de 443 a algo random (8443, 9999…). Menos superficie de ataque.
Desactivar HTTP, solo HTTPS.
Configurar backup automático a servidor externo (ambos lo permiten).
Habilitar logging remoto (syslog a un servidor de logs). Si el firewall se cae, tienes logs fuera.
Actualizar ANTES de poner en producción. Siempre hay parches de seguridad.
Probar failover. Desconecta WAN y verifica que tienes acceso local. No te quedes encerrado fuera.
Recursos y siguiente paso#
Documentación oficial:
- pfSense: docs.netgate.com/pfsense
- OPNsense: docs.opnsense.org
Canales YouTube buenos:
- Lawrence Systems (cubre ambos, homelab focus)
- Craft Computing (más pfSense)
- The Digital Life (tutoriales paso a paso)
Comunidades:
- r/PFSENSE
- r/OPNsenseFirewall
- r/homelab (para contexto más amplio)
Mi recomendación: Prueba ambos en VM antes de decidir. VirtualBox o Proxmox, monta una red virtual, juega con la config. Verás rápido cuál te gusta más.
Conclusión: ambos son buenos, elige según tu caso#
No hay respuesta universal. pfSense es más rápido y tiene comunidad más grande. OPNsense es más moderno y totalmente open source.
Yo elegí OPNsense y estoy contento. Pero no me arrepiento del tiempo con pfSense, aprendí un montón.
Lo importante: cualquiera de los dos es 1000 veces mejor que el router de tu ISP.
Empieza por ahí.