PFSense: Sustituir router de Movistar y O2
Hoy os voy a enseñar como podemos usar PFSense como router de Movistar/O2, sustituyendo el que pone el operador.
¿Por qué haríamos esto? Entre las ventajas de tener un equipo PFSense sobre el equipo original, es la de ampliar las funcionalidades de vuestro router con plugins, mejorar la seguridad, la velocidad de conexión, y así poder tener un control total de vuestra red.
Para que no haya dudas, partimos de que yo tengo una ONT Huawei y un router Synology actualmente, así que si tenéis el router original, tendréis que modificarlo para sólo usarlo como ONT o quitarlo y comprar una ONT, para seguir este proceso de cambio que describo actualmente.
Router Pfsense con varios puertos ethernet 2.5g
En mi caso, voy a usar un equipo comprado en Aliexpress de la marca Topton, que tiene las siguientes características:
- 4 Puertos Ethernet a 2.5G
- 1 Puerto COM
- 4 Puertos USB
- 1 HDMI y 1 DP
- 1 SIM
- Procesador N5100/N5101 (4 Núcleos) y hasta 32 GB de RAM DDR4
- 1 NVMe
- 1 SATA SSD/HDD
- 1 MCPIe Wifi
- Soporte de Encendido automático, RTC, PXE, WATCHDOG, arranque, Wake-on-LAN, etc.
- Unos 6W de consumo
He re-aprovechado la memoria RAM de una ampliación de un MINIS, y se quedará en 16GB. Y sólo usaré un disco NVMe de unos 500GB.
Sin la memoria RAM, este equipo no me costó más de 120€ con el envío. Pero con la RAM y el disco, rondaría cerca de 160€ más o menos.
Daros cuenta, que comprar un router parecido, profesional, que es lo que se consigue con este cambio, es mucho más caro.
Como veis el espacio es reducido, pero es fácilmente ampliable:
He agregado antenas Wifi y tarjeta de red MCPIe:
Modificación de Topton para evitar calor
Aunque no es algo que esperaba, para lo que se va a usar, el equipo necesita una modificación extra y dejarlo un poco frankenstein con un Noctua.
A los pocos días, sin gran trabajo del equipo, el disipador no es capaz de aguantar la temperatura y se sobrecalentaba, dejando el sistema “pajarito”.
He comprado un adaptador USB para alimentar el ventilador Noctua, y todo va como la seda (aunque no sea el equipo más bonito del mundo, ni un solo problema):
¿Cómo instalar Pfsense?
Una vez solucionados los problemas de temperatura, ahora tengo un dilema, cómo instalar PFSense. Las alternativas que manejo, e igual de válidas:
- Instalar PFSense directamente en el disco SSD
- Agregar una capa de virtualización, instalando Proxmox como Hypervisor, y luego una máquina virtual con PFSense
Las dos opciones me gustan mucho…
- La primera, me garantiza que tengo un equipo dedicado para router pero desperdicio seguramente recursos. Siendo una instalación mucho más simple, sin capas adicionales ante problemas.
- La segunda, me da versatilidad, porque con la RAM que va a manejar el equipo, como decía anteriormente, va a estar desaprovechada. Y podría agregar varias máquinas virtuales, que completen al router, donde los plugins no lleguen. Pero hace que complique un poco la instalación, porque siempre tendré un hypervisor que tengo que mantener, y que podría darme problemas para resolver alguna incidencia.
Así que, después de varias pruebas y sopesarlo mucho, voy a usar Proxmox + Pfsense, porque no lo he hecho nunca en casa, y tengo claro que Proxmox es tan estable, que aunque tenga problemas no será complicado mantener. Además que tener un backup de la máquina virtual, me permite jugar con otros equipos de mi casa, salvaguardar las configuraciones, poder llegar a montar un centro de seguridad para casa (SOC, SIEM…) y otras muchísimas ventajas que tiene la virtualización.
Configurar Proxmox para crear router Movistar/O2
Como he dicho, el equipo tiene 4 puertos 2.5G, algo que me da una ventaja a la hora de aplicar casi cualquier configuración que se me ocurra.
Así que con la base de Proxmox, lo haremos de la siguiente forma:
- PUERTO 1 – enp2s0 (vmbr0): Lo usaré para gestionar proxmox, así separo la gestión de otro tráfico
- PUERTO 2 – enp3s0 (vmbr1): Será la conexión con mi ONT que tiene mi fibra, y será asignada de forma dedicada a la máquina virtual Pfsense
- PUERTO 3 – enp4s0 (vmbr2): Aunque le llamaré vMotion, lo usaré para interconexión con otros Proxmox o para alguna subred aislada (está por determinar, así que la veréis en Proxmox y en Pfsense porque me gustaría revisar el tráfico en todo caso), para mover máquinas virtuales entre ellos o cosas así específicas del Hypervisor
- PUERTO 4 – enp5s0 (vmbr3): Será la conexión del router a la LAN de casa
Os dejo el detalle de como van los puertos de proxmox (creo Linux Bridge), dedicados para Movistar y la LAN, con las interfaces asignadas. Yo no monto un Bond, porque en mi red no tiene mucho sentido con puertos a 2.5g:
Instalación Pfsense sobre Proxmox
En esta parte, no voy a dedicar mucho tiempo, se sube la ISO a Proxmox y se instala siguiendo la guía de instalación oficial, donde lo explican muy bien(asignaremos la IP de gestión):
La configuración más importante son los interfaces de red, donde marcaré con un “tag 6” (creo que no es algo obligatorio pero yo así me lo aseguro) la interfaz que va a la ONT, en mi caso VMBR1 (enp3s0), que será la NET1 de la máquina virtual PFSENSE:
Configurar Pfsense para sustituir router Movistar/O2
Una vez instalada nuestra máquina virtual Proxmox, ya sólo nos queda entrar a configurar bajo el interfaz de configuración.
https://ip-lan
Lo primero que podéis hacer es modificar las settings que vienen en la guía cuando PFsense está virtualizado bajo Proxmox. Vais al menú System -> Advanced -> Networking :
Marcáis la siguiente casilla “Disable hardware checksum offload” de la sección “Hardware Checksum Offloading”:
A continuación, configuraremos cada interfaz en PFsense, añadiéndolos en el siguiente menú (Interfaces -> Interface Assignments):
He creado una VLAN 6 para el vtnet1, pero también está taggeado en el hypervisor Proxmox (aunque creo que no es obligatorio, como he dicho anteriormente):
Para la interfaz WAN (la que va conectada a la ONT) configuraremos los siguientes parámetros:
- Description: Yo le he llamado WAN
- IPv4 Configuracion Type: PPPoE
- PPPoE Configuration:
- Username: adslppp@telefonicanetpa
- Password: adslppp
Podéis usar el menú Interfaces -> PPPs para configurar esta parte de otra forma:
Una vez configurada la WAN de esta forma, conectado el cable de la ONT en su interfaz, deberíais poder hacer un simple ping a Internet desde el router (Diagnostics -> Ping). Por ejemplo, al DNS de Google (8.8.8.8). Pero con esto aún no sois capaces de resolver nombres, así que no os irá (www.google.es) por ejemplo:
A la interfaz de LAN le doy una IP fija (que si no la queréis cambiar, sería la misma de vuestro router actual):
Si el cable de la LAN está conectado correctamente, deberíais también ver vuestra red interna. Aunque aún los equipos no puedan navegar, por ejemplo:
Configurar resolución DNS de LAN en PFsense
Como ya hemos comprobado la conectividad, ahora vamos a terminar de dar el servicio más básico, que es que tus clientes puedan navegar por Internet (ya ampliaremos la info con nuevos artículos sobre VPN, monitorización de red…)
Lo primero configuramos los servidores DNS donde vamos a preguntar (System -> General Setup -> DNS Servers) y adicionalmente marcamos DNS Resolution Behavior -> Use local DNS (127.0.0.1), fall back to remote DNS Servers
Configuro DNS Resolver (Services -> DNS Resolver -> General Settings):
Ahora crearemos una regla en el cortafuegos de PortForward de la siguiente forma (Firewall -> NAT -> Port Forward -> Edit), para que todo el tráfico DNS pase por el router y él lo redirija desde los equipos de nuestra LAN:
Quedará de la siguiente forma:
Y hacéis una prueba de un equipo de vuestra red para validarlo:
O desde el propio router:
Para que los clientes de tu LAN naveguen, una vez que resuelven, agregas un par de reglas de la “LAN net” a * por el puerto destino http(80) y https(443) protocolo TCP, y otra con origen “LAN net” a * destino 127.0.0.1 por el puerto DNS(53) protocolo TCP/UDP desde Firewall->Rules todo para la interfaz LAN.
Ampliaremos con otras entradas, para ir securizando Pfsense y nuestra red, configurar VPN, Wifi, DHCP, instalar plugins…espero que os haya gustado 🙂
Te ha gustado la entrada SGUENOS EN TWITTER O INVITANOS A UN CAFE?
Esto solo sirve para Movistar/02? El caso es que yo tengo vodafone (la suerte en este caso es que el router no tiene ont y la tengo externa) y me gustaria empezar a cacharrear… En caso de comprar un minipc/router desde cero, sin tener, ningun componente en casa, que aconsejarias? Tengo un gato rondando por ahi, asi que la refrigeracion deberia ser interna, ya sabes, les puede la curiosidad.
Un saludo
Hola Raúl, debería ser válido con Vodafone, cambiando los parámetros de las credenciales y las VLAN, creo yo. Al final el equipo tiene que tener doble tarjeta de red mínimo. Existen equipos Lenovo pequeños que pueden hacer la función colocando una tarjeta ethernet, si encuentras algún NUC o Minis, por ejemplo económico de segunda mano…la cosa es si lo quieres sólo para router o para algo más. Un saludo
Hola! yo estoy con un equipo similar, pero no le puse proxmox, le puse directo pfsense. En la parte LAN la tengo completa con ubiquity/Unifi, tanto en siwtchs como en AP. Lo que no le logrado resolver bien es el paso de IPTV de movistar a los decodificadores de iptv, via cable de red, sin usar el ONT/HGU de movistar.
Ahora me funciona, pero de una manera que se que no es la óptima:
– Tengo el HGU en modo bridge. Un punto lan del HGU al switch. (si, al switch)
– En ese switch tengo una vlan con 2 bocas asignadas como “WAN”
– La segunda boca WAN del switch va al router.
– En el router configuro PPPoE
– El router lo conecto al switch en otra vlan, llamada “lan”
– Tengo otras vlan, para IoT, CCTV, etc.
– Tengo 4 switchs que dependen del switch principal (para mi escritorio, salita, hub de CCTV, etc)
– Los 4 switch estan configurados como puertos trunk al switch principal, para que dispongan de todas las vlans
– Donde necesito colocar un decodificador de IPTV configuro ese puerto como WAN, de manera que vea directo el HGU. Esto me funciona bien, sin caídas ni latencias.
Lo que quiero hacer es que todo el tráfico del HGU vaya al router, y con el uso de vlans pueda redirigir el tráfico a los decodificadores. He visto varios tutoriales para hacerlo con routers que traigan la funcionalidad triple vlan (asus, synology), pero quiero hacerlo con PFsense.
Gracias por tu tiempo!
Hi,
When making the PPPoE connection from my pfSense box I get a gateway address of 192.168.144.1 which is the Movistar GW.
I cannot ping this IP number of 192.168.144.1.
This prohibits the working of IPSec tunnels, and probably some other functions too.
Normal Internet operation and OpenVPN are working fine. I have a static public IP.
Do you have a solution for this ?
Thanks !
Buenas Ronald,
Mira a ver si con este tutorial para OPNsense te vale pues es muy parecido https://bandaancha.eu/foros/configuracion-internet-tv-movistar-fibra-1743805.
Un saludo y ya nos cuentas si has podido solucionar el problema.