Cómo añadir autenticación de dos factores a OpenVPN AS con WiKID Strong Authentication Server

Resumen rápido
Esta guía explica cómo integrar WiKID Strong Authentication Server como proveedor RADIUS para añadir autenticación de dos factores (2FA) a OpenVPN Access Server (OpenVPN AS). Incluye los pasos de instalación básicos, la configuración vía interfaz web y recomendaciones de seguridad y operación.
Requisitos previos
- Acceso root o privilegios sudo en el servidor donde instalarás OpenVPN AS.
- WiKID Strong Authentication Server ya instalado y con el servicio RADIUS activo.
- Conectividad de red entre OpenVPN AS y el servidor WiKID.
Instalación del paquete
Descarga la versión RPM de OpenVPN Access Server para tu distribución y luego instala el paquete. En el ejemplo original se usó CentOS y este comando:
# rpm -ivh openvpn-as-1.3.4-CentOS5.i386.rpm
A continuación, lanza el asistente de configuración inicial:
/usr/local/openvpn_as/bin/ovpn-init
El asistente mostrará una pantalla como esta y te pedirá opciones básicas de red y administración. Si no estás seguro, puedes aceptar los valores por defecto.
Once you provide a few initial configuration settings,
OpenVPN Access Server can be configured by accessing
its Admin Web UI using your Web browser.
Please specify the network interface and IP address to be
used by the Admin Web UI:
(1) all interfaces: 0.0.0.0
(2) eth0: 10.100.0.125
Please enter the option number from the list above (1-2).
> Press Enter for default [2]:
Configuración del servidor vía la interfaz de administración
Accede a la interfaz web de administración en la IP y puerto que configuraste. Inicia sesión con root o con las credenciales que creaste.
Una vez dentro, ve a Authentication –> General y selecciona RADIUS como método de autenticación.
Después de indicar que usarás RADIUS, abre la sección Radius para añadir los detalles del servidor. En el ejemplo el servidor WiKID corre en la misma máquina, así que se usa la misma dirección IP. Ten en cuenta que no se usó 127.0.0.1 porque el listener RADIUS de WiKID no está ligado a localhost en este caso.
Eso es todo para la configuración básica del servidor OpenVPN.
Importante: prueba siempre el inicio de sesión con una cuenta de prueba antes de desplegar en producción. Si el RADIUS no responde, los usuarios no podrán autenticarse.
Mini-metodología: pasos recomendados
- Preparar y verificar WiKID con cuentas de prueba y tokens.
- Instalar OpenVPN AS y ejecutar ovpn-init con valores por defecto si dudas.
- Configurar RADIUS en la interfaz de OpenVPN apuntando a WiKID.
- Probar autenticación de un usuario con y sin token 2FA.
- Habilitar registros y monitoreo en ambos lados (OpenVPN y WiKID).
- Documentar y crear copias de seguridad de la configuración.
Checklist por roles
Administrador de VPN:
- Verificar que el puerto de administración está protegido por firewall.
- Confirmar la conectividad UDP/TCP entre OpenVPN AS y el RADIUS (WiKID).
- Probar un inicio de sesión completo con 2FA.
Administrador de WiKID:
- Confirmar que el servicio RADIUS está escuchando en la IP esperada.
- Revisar que los tokens de usuario estén activos y sincronizados.
Soporte de usuario:
- Tener un procedimiento para reinicio/recuperación de tokens.
- Registrar pasos para reprovisionar un usuario bloqueado.
Diagrama de decisión (flujo de verificación)
flowchart TD
A[¿WiKID instalado y accesible?] -->|No| B[Instalar y configurar WiKID]
A -->|Sí| C[Instalar OpenVPN AS]
C --> D[Ejecutar ovpn-init]
D --> E[Configurar RADIUS en OpenVPN]
E --> F[Probar autenticación]
F -->|Falla| G[Comprobar logs y puertos]
G --> F
F -->|OK| H[Desplegar a producción]
Recomendaciones de seguridad
- Usa certificados y TLS para la administración de OpenVPN AS cuando sea posible.
- Limita el acceso al puerto de administración solo a direcciones IP administrativas.
- Habilita registros (logging) y centraliza logs para detectar intentos de acceso fallidos.
- Mantén ambos sistemas (OpenVPN AS y WiKID) actualizados.
- Prueba procedimientos de recuperación de cuentas y tokens antes de la migración masiva.
Glosario de una línea
- RADIUS: protocolo de autenticación/autoridad que OpenVPN puede consultar para validar credenciales y 2FA.
Preguntas frecuentes
¿Puedo usar localhost (127.0.0.1) como IP de RADIUS?
Depende de cómo esté ligado el listener RADIUS en WiKID. En el ejemplo no se usó localhost porque el servicio no escucha en esa interfaz; usa la IP que responda al servicio RADIUS.
¿Qué ocurre si RADIUS no responde?
OpenVPN rechazará las autenticaciones que dependan de RADIUS. Ten siempre un plan de contingencia (cuentas de emergencia o acceso por consola).
Resumen final
La integración de WiKID como servidor RADIUS para OpenVPN Access Server añade 2FA con pocos pasos: instalar el paquete, ejecutar el asistente inicial y configurar RADIUS en la interfaz web. Sigue la checklist y las recomendaciones de seguridad antes de desplegar a producción.
Notas: prueba con usuarios de laboratorio, habilita registros y documenta procedimientos de recuperación.