OpenVPN sin interfaz: sesión supervisada o servicio gestionado
Arrancar OpenVPN por SSH es un cambio en la red remota. Elija una sesión supervisada o un servicio propio y prepare las credenciales y una vía de retorno.
Ejecutar OpenVPN por SSH lo arranca en la máquina remota, en el contexto de ejecución de esa máquina. Eso lo convierte en un cambio de la red remota y no en una simple pulsación remota de un botón. Los dos modos sensatos son una sesión supervisada en primer plano y un servicio propio, y tienen distinta preparación, distintas credenciales y distinto comportamiento ante fallos.
Dos modos, un perfil
Ambos modos consumen el mismo perfil y ambos cambian el enrutamiento en el host. Lo que difiere es quién está presente cuando arranca y qué ocurre después de que termine la sesión.
| Mode | Useful for | What it needs |
|---|---|---|
| Supervised foreground session | A connection with a human watching and able to type | A usable terminal, a reviewed profile and recovery access |
| Managed service | An unattended lifecycle that starts without a login | Owned configuration, supported credential delivery and restart policy |
El modo en primer plano es para una conexión supervisada en la que hay alguien presente. El modo servicio es para una conexión que debe subir sin que nadie haya iniciado sesión. Mezclarlos, dejando un proceso en primer plano en marcha y habilitando a la vez un servicio con el mismo perfil, es la avería más común que uno mismo se causa aquí.
Qué es realmente la sesión en primer plano
Un proceso de OpenVPN en primer plano debe seguir ejecutándose mientras el túnel está activo. Initialization Sequence Completed significa que la inicialización ha terminado, no que deba esperar a que vuelva un indicador. Una interfaz gráfica de escritorio esconde ese trabajo prolongado tras una ventana, y por eso mismo la gente espera que el comando SSH se comporte igual. No lo hace.
Compruebe el acceso de la aplicación por separado. Un terminal ocupado y una línea de registro no demuestran ni el éxito ni el fracaso.
Qué necesita un servicio sin supervisión
Un servicio arranca con su propia cuenta, su propio directorio de trabajo y sus propias restricciones de sistema de archivos, y todo eso difiere de su shell. Use rutas explícitas y una propiedad adecuada en lugar de confiar en dónde estaba usted en ese momento. Dé a la unidad una política de reinicio que realmente quiera, porque un bucle de conexión sin retroceso llena un registro e irrita al par. Luego verifique que sube tras un reinicio y no tras su siguiente inicio de sesión.
El MFA interactivo rompe el caso sin supervisión por diseño. Si el perfil necesita un código escrito por una persona, no es un servicio sin supervisión, y un código de un solo uso almacenado no es un diseño de credenciales. Decídalo a propósito en lugar de descubrirlo en el arranque.
Las credenciales son cuatro entradas distintas
El manual de OpenVPN separa la entrada de consola, los archivos de credenciales, las frases de contraseña de clave privada y la interacción dirigida por la gestión. Un par de usuario y contraseña es una cosa, y la frase de contraseña de una clave cifrada es otra. Una interfaz de gestión que proporciona credenciales a petición es la tercera. Elija el mecanismo que encaja con su diseño de autenticación en lugar de concatenarlo todo en un solo archivo porque eso funcionó una vez.
Proteja los perfiles y los registros que llevan identidad o material privado. Los lee la cuenta de servicio, y también cualquiera con la pertenencia al grupo correcta.
Un propietario, y una vía de retorno
Conserve su vía de administración SSH antes de habilitar una ruta de túnel amplia. Una configuración de túnel completo con un extremo que muere puede dejar la máquina inalcanzable, y la reparación entonces exige una consola que usted no preparó. Una consola fuera de banda aprobada o una política deliberada de retorno de gestión es el seguro.
Elija un solo propietario de la configuración para la operación rutinaria. Un servicio automático y un proceso en primer plano que compiten por las mismas interfaces, rutas y estado del resolutor producen fallos que parecen un problema del proveedor. Detenga una ejecución supervisada con su interrupción normal, y una gestionada a través de su gestor en lugar de matar todos los procesos llamados openvpn.
La distinción que conviene anotar es simple: una ejecución supervisada puede depender de su sesión, y un servicio sin supervisión no.