¿Hay alguna solución para realizar la autenticación OpenVPN con Google ID?

13

O, tal vez alguna oauth?

Todo lo que pude encontrar es la autenticación de 2 factores con google. Pero me gustaría usar la base de Google Apps para la autenticación OpenVPN.

Creo que es posible hacer algo como gitlab. Donde puede colocar su certificado y luego usarlo sin nombre de usuario y contraseña.

Psicozoico
fuente

Respuestas:

3

Mientras buscaba una solución para esto, me encontré con Gate . Automatiza la creación de perfiles OpenVPN detrás de OAuth y admite MFA. También tiene una consola de administración para la gestión de usuarios. Aquí hay una publicación de blog de los desarrolladores que describe su caso de uso y características.

ACTUALIZACIÓN 06/2019 - Pritunl es ahora mi solución para esto. Admite la generación automática de perfiles OpenVPN detrás de Google Auth y proporciona un cliente multiplataforma que facilita la configuración con URI únicos. El usuario no se autentica con Google para conectarse (se puede requerir un PIN), lo que podría ser un inconveniente para algunos, pero creo que la facilidad de uso es excelente para equipos más pequeños.

recortes
fuente
2

No creo que haya una buena manera de hacer esto. El problema es que los métodos de autenticación admitidos por Google, como OAuth, están realmente orientados a la autenticación de aplicaciones web. El aspecto clave de esto es que usted (como usuario de la aplicación) nunca da sus credenciales al sitio de terceros. El sitio lo dirige a una página de autenticación en Google, en la que inicia sesión y autoriza el sitio de terceros.

Como OpenVPN es una aplicación no basada en web, creo que sería casi imposible hacer esto de una manera razonable. Básicamente, tendría que escribir un módulo de autenticación de OpenVPN personalizado que llegue a la API OAuth de Google, solicite un token de autenticación, luego presente al usuario una URL especial a la que tendrían que ir, donde iniciarían sesión, obtendrían un código de acceso , que luego tendrían que ingresar en la autenticación de OpenVPN para que pueda volver a su módulo de autenticación de OpenVPN para regresar a Google y obtener un "sí" o "no" al autenticarlo. Si suena complicado, es porque lo es.

Suponiendo que mencione Google Apps significa que está utilizando la versión paga de Google Apps (ahora llamada Google Apps for Work), su mejor opción sería configurar el inicio de sesión único (SSO), donde su sistema de administración de identidad interno es el fuente de la verdad, y tanto Google Apps como su sistema OpenVPN se autentican en su contra. Puede obtener más información sobre el SSO de Google Apps simplemente buscando en Google. Tenga en cuenta que no es necesariamente un proceso simple y, a menudo, requiere cierto esfuerzo para implementarlo.

Básicamente, necesita una forma de proporcionar sus credenciales a OpenVPN y luego hacer que se autentique en su nombre. Esto solo funciona en casos en los que los usuarios confiarán sus credenciales a la aplicación (en este caso, VPN). Eso funciona para la autenticación corporativa, pero no coincide con la visión de Google cuando hay aplicaciones no confiables.

Christopher Cashell
fuente
1
¿Las contraseñas específicas de la aplicación de Google no resolverían la mayoría de estas preocupaciones? support.google.com/accounts/answer/185833?hl=es
pollitos del