Como elegir, usar y configurar una VPN en Zeroshell (Comparativa)

Introducción

En Zeroshell, un router/firewall Linux “appliance” pensado para administradores de red, no encontrarás el típico entorno de escritorio ni gestores como apt o yum: se basa en un sistema de paquetes ipkg sobre BusyBox, administrado principalmente vía interfaz web. Su público son administradores de red y profesionales IT que buscan un sistema ligero, robusto y con todas las funcionalidades de red integradas (firewall, captive portal, VPN, QoS, captive DNS, etc.).

Al no contar con GNOME, KDE ni Xfce —ni siquiera consola gráfica local— la configuración se hace casi siempre por SSH o desde su navegador. Por eso es crucial elegir soluciones VPN que puedan instalarse fácilmente con ipkg o que ya vengan integradas en Zeroshell.

VPN más aptas para Zeroshell y por qué

  • OpenVPN: integrado por defecto. Gran compatibilidad y comunidad, gestión directa desde la GUI de Zeroshell.
  • IPsec (StrongSwan/L2TP): también viene preinstalado. Ideal para conexiones site-to-site y cliente-to-site, con buen rendimiento a nivel kernel (Netfilter XFRM).
  • WireGuard: no disponible de serie, pero se puede añadir con ipkg. Más moderno y rápido, pero requiere instalación manual de módulos.

Las dos primeras soluciones aprovechan módulos ya empaquetados en Zeroshell, sin necesidad de compilaciones cruzadas. WireGuard suma velocidad y simplicidad de configuración, pero implica gestionar los paquetes externos y el módulo del kernel.

Comparativa de VPN para Zeroshell

VPN Protocolo Integración en Zeroshell Rendimiento Facilidad de configuración
OpenVPN OpenVPN (UDP/TCP) Integrado en GUI Medio-Alto Muy sencilla via web
IPsec (StrongSwan) IPsec / L2TP Integrado en GUI Alto Sencilla via web
WireGuard WireGuard Manual (ipkg) Muy alto Moderada, CLI config file

1. Cómo instalar y configurar OpenVPN en Zeroshell

OpenVPN ya está disponible en la sección de la GUI: VPN → OpenVPN → Server. Estos son los pasos básicos si prefieres la línea de comandos para certs y perfiles:

  1. Generar CA y certificados en un servidor Linux o Windows, usando easy-rsa.
  2. Subir al Zeroshell por SFTP los archivos ca.crt, server.crt y server.key.
  3. Desde la GUI de Zeroshell, en OpenVPN → Server:
    • Indica rutas de CA, Server Cert y Server Key.
    • Configura rango de IPs para clientes (por ejemplo, 10.8.0.0/24).
    • Aplica y arranca el servicio.
  4. Descarga el fichero .ovpn de cliente o créalo manualmente. Ejemplo de perfil de cliente:
client
dev tun
proto udp
remote vpn.tudominio.es 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert cliente1.crt
key cliente1.key
cipher AES-256-CBC
verb 3

2. Cómo instalar y configurar IPsec (StrongSwan L2TP)

El paquete IPsec/L2TP está presente en VPN → IPsec. Para una VPN sitio-a-sitio o cliente-a-sitio:

  1. En la GUI, pestaña IPsec → Phase 1 Proposal, define tu Encryption Algorithm (p.ej. AES-256) y Hash Algorithm (p.ej. SHA-256).
  2. Pestaña Phase 2 Proposal, define PFS Group (p.ej. modp2048) y sub-redes.
  3. Añade un nuevo túnel con Add new, completa:
    • Local Gateway: IP pública o interfaz.
    • Remote Gateway: IP del peer.
    • Subredes local y remota.
    • Pre-Shared Key o certificados.
  4. Activa la conexión y comprueba logs en System → Log (filtro IPsec).

3. Cómo instalar y configurar WireGuard

Para quienes necesiten máxima velocidad y quieran probar WireGuard, hay que instalar herramientas y módulo. Ejemplo para Zeroshell 3.x:

# Descargar paquete WireGuard para arquitectura MIPS
wget https://downloads.openwrt.org/.../mipsel_24kc/wireguard-tools_.ipk
ipkg install wireguard-tools_.ipk
# Descargar e instalar módulo del kernel (si existe)
wget https://tus-repos/local/wireguard-mod-mipsel_.ipk
ipkg install wireguard-mod-mipsel_.ipk
# Cargar módulo
modprobe wireguard

Luego, crea el archivo /etc/wireguard/wg0.conf:

[Interface]
Address = 10.200.200.1/24
ListenPort = 51820
PrivateKey = TU_PRIVATE_KEY

[Peer]
PublicKey = KEY_DEL_CLIENTE
AllowedIPs = 10.200.200.2/32

Inicia la interfaz y habilita en arranque:

wg-quick up wg0
# Para habilitar al inicio, añade en /etc/rc.local:
wg-quick up wg0

Conclusión

En Zeroshell, OpenVPN e IPsec/L2TP son la opción más sencilla gracias a su integración directa. Para quienes buscan el máximo rendimiento y están dispuestos a retos de instalación, WireGuard armado con ipkg es la alternativa de vanguardia. Elige según tu caso de uso: compatibilidad y facilidad (OpenVPN/IPsec) o rendimiento bruto y simplicidad de configuración de peers (WireGuard).

Download TXT




Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *