Existe alguma solução para fazer a autenticação OpenVPN com o Google ID?

13

Ou talvez algum oauth?

Tudo o que pude encontrar - é a autenticação 2factor com o google. Mas eu gostaria de usar a base do Google Apps para autenticação OpenVPN.

Eu acredito que é possível criar algo como o gitlab. Onde você pode colocar seu certificado e usá-lo sem login e senha.

Psicozóico
fonte

Respostas:

3

Enquanto procurava uma solução para isso, me deparei com o Gate . Ele automatiza a criação do perfil OpenVPN por trás do OAuth e suporta o MFA. Também possui um console administrativo para gerenciamento de usuários. Aqui está uma postagem de blog dos desenvolvedores, descrevendo seus casos de uso e recursos.

ATUALIZAÇÃO 06/2019 - O Pritunl agora é minha solução para isso. Ele suporta a geração automática de perfis OpenVPN por trás do Google Auth e fornece um cliente de plataforma cruzada que facilita a configuração com URIs exclusivos. O usuário não se autentica com o Google para se conectar (pode ser necessário um PIN), o que pode ser uma desvantagem para alguns, mas acho a facilidade de uso excelente para equipes menores.

cdowns
fonte
2

Eu não acho que haja uma boa maneira de fazer isso. O problema é que os métodos de autenticação suportados pelo Google, como o OAuth, são realmente orientados para a autenticação de aplicativos da web. O principal aspecto disso é que você (como usuário do aplicativo) nunca fornece suas credenciais ao site de terceiros. O site direciona você para uma página de autenticação no Google, na qual você faz login e autoriza o site de terceiros.

Com o OpenVPN sendo um aplicativo não baseado na Web, acho que seria quase impossível fazer isso de uma maneira razoável. Você basicamente teria que escrever um módulo de autenticação OpenVPN personalizado que atinja a API OAuth do Google, solicitar um token de autenticação e, em seguida, apresentar ao usuário um URL especial para o qual eles teriam que ir, onde se conectariam, obteriam um código de acesso , que eles teriam que inserir na autenticação OpenVPN para poder voltar ao seu módulo de autenticação OpenVPN e retornar ao Google para obter um "sim" ou "não" na autenticação. Se parece complicado, é porque é.

Supondo que sua menção ao Google Apps signifique que você está usando a versão paga do Google Apps (agora chamada Google Apps for Work), sua melhor aposta provavelmente seria configurar o Logon único (SSO), onde seu sistema interno de gerenciamento de identidades é o fonte da verdade, e o Google Apps e o seu sistema OpenVPN se autenticam. Você pode descobrir mais sobre o SSO do Google Apps apenas pesquisando no Google. Esteja ciente de que não é necessariamente um processo simples e geralmente requer algum esforço para implementar.

Basicamente, você precisa de uma maneira de fornecer suas credenciais ao OpenVPN e, em seguida, autenticá-las em seu nome. Isso funciona apenas nos casos em que seus usuários confiarão suas credenciais no aplicativo (neste caso, VPN). Isso funciona para autenticação corporativa, mas não corresponde à visão do Google, onde existem aplicativos não confiáveis.

Christopher Cashell
fonte
1
As senhas específicas do aplicativo do Google não resolveriam a maioria dessas preocupações? support.google.com/accounts/answer/185833?hl=pt_BR
chicks