VPN más adecuadas para FreeNAS y por qué
Trabajar con FreeNAS (ahora TrueNAS Core) implica entender que, bajo el capó, estamos en FreeBSD. No hay entornos de escritorio al uso: todo se gestiona vía web GUI o consola SSH. El gestor de paquetes es pkg y la recomendación habitual es aislar servicios en jails o contenedores iocage. El público objetivo somos administradores de sistemas, con conocimiento de redes y scripting en shell.
En este contexto, las VPN más indicadas cumplen estos requisitos:
- Se empaquetan bien con
pkgo disponen de plugin oficial en FreeNAS. - Permiten integración con la GUI o bien configuración en jail sin romper aislamiento.
- Sacan partido de la robustez de la pila de red de FreeBSD (por ejemplo, WireGuard está ya en el kernel en versiones recientes).
De todas las opciones, destacan:
- OpenVPN: plugin oficial, muy maduro, comunidad enorme.
- WireGuard: ligereza y rendimiento en FreeBSD 13 va en kernel.
- strongSwan (IPsec): estándar empresarial, buen soporte de IKEv2.
- SoftEther: multi-protocolos, interfaz web, pero más complejo.
Comparativa técnica
| VPN | Protocolo | Instalación | Soporte IPv6 | Integración FreeNAS | Enlace |
|---|---|---|---|---|---|
| OpenVPN | UDP/TCP SSL | Plugin oficial | Sí | Alta (GUI plugin) | OpenVPN Project |
| WireGuard | WG (Curve25519) | Jail pkg | Sí | Media (plugin comunitario) | WireGuard |
| strongSwan | IPsec / IKEv2 | Jail pkg | Sí | Baja (sin plugin) | strongSwan |
| SoftEther | Multi-protocolos | Jail pkg | Parcial | Media (sin plugin oficial) | SoftEther VPN |
Instalación y configuración
1. OpenVPN (plugin oficial)
FreeNAS incluye un plugin OpenVPN que simplifica todo el despliegue. Se gestiona desde la GUI.
- En la interfaz web, ve a Plugins gt Available, selecciona OpenVPN y pulsa Install.
- Configura la red en Services gt OpenVPN: tipo Server, protocolo, puerto, rutas LAN.
- Genera certificados: FreeNAS crea un CA y claves cliente/servidor automáticamente.
- Descarga el perfil .ovpn para tus clientes desde la pestaña Client Export.
Así de sencillo. La GUI se encarga de crear el jail, instalar pkg install openvpn y dejar todo preparado.
2. WireGuard (jail pkg)
Con FreeBSD 13 WireGuard ya está en el kernel. Aquí se ilustra cómo montarlo en un jail iocage.
- Crear el jail e instalar las fuentes del kernel para WireGuard:
- Generar claves:
- Crear configuración
/etc/wireguard/wg0.conf: - Levantar la interfaz:
- En el firewall de FreeNAS, autoriza el UDP/51820 hacia el jail wg-jail.
iocage create -n wg-jail ip4_addr=vnet0192.168.1.50/24 -r 13.1-RELEASE
iocage exec wg-jail pkg update pkg upgrade -y
iocage exec wg-jail pkg install -y wireguard-tools
iocage exec wg-jail wg genkey > /etc/wireguard/privatekey
iocage exec wg-jail wg pubkey < /etc/wireguard/privatekey > /etc/wireguard/publickey
[Interface]
Address = 10.0.0.1/24
ListenPort = 51820
PrivateKey = TU_CLAVE_PRIVADA
[Peer]
PublicKey = CLAVE_PÚBLICA_CLIENTE
AllowedIPs = 10.0.0.2/32
iocage exec wg-jail sysrc wireguard_enable=YES
iocage exec wg-jail sysrc cloned_interfaces=wg0
iocage exec wg-jail sysrc ifconfig_wg0=inet 10.0.0.1/24
iocage exec wg-jail service netif start
iocage exec wg-jail service wireguard start
3. strongSwan (IPsec/IKEv2)
Ideal para clientes móviles nativos. En un jail:
- Crear jail e instalar strongSwan:
- Editar
/usr/local/etc/ipsec.conf: - Configurar usuarios en
/usr/local/etc/ipsec.secretsy certificados. - Habilitar el servicio:
iocage create -n swan-jail ip4_addr=vnet0192.168.1.51/24 -r 13.1-RELEASE
iocage exec swan-jail pkg update pkg upgrade -y
iocage exec swan-jail pkg install -y strongswan
config setup
uniqueids=no
conn myvpn
keyexchange=ikev2
left=%any
leftid=@server.example.com
leftcert=serverCert.pem
leftsendcert=always
leftsubnet=0.0.0.0/0
right=%any
rightauth=eap-mschapv2
rightsourceip=10.10.10.0/24
rightsendcert=never
eap_identity=%identity
iocage exec swan-jail sysrc strongswan_enable=YES
iocage exec swan-jail service strongswan start
Con esto tendrás un entorno VPN robusto y bien integrado en tu FreeNAS/TrueNAS Core. ¡Suerte y a disfrutar de la red cifrada!
Deja una respuesta