或者,也许任何oauth?
所有我能find的 – 与谷歌2因素authentication。 但是,我想使用Google Apps基础进行OpenVPN身份validation。
我相信有可能做出像gitlab一样的东西。 你可以把你的证书,然后使用它没有login名和密码。
在寻找解决scheme时,我遇到了Gate 。 它在OAuth后自动创buildOpenVPNconfiguration文件并支持MFA。 它也有一个用户pipe理的pipe理控制台。
这是一篇来自开发人员的博客文章 ,概述了它的用例和function。
我不认为有这样做的好方法。 问题在于,Google支持的authentication方法(如OAuth)确实是针对Web应用程序进行身份validation的。 这一点的关键是你(作为一个应用程序用户)永远不会把你的凭据给第三方网站。 该网站会引导您访问Google的授权页面,并login并授权第三方网站。
OpenVPN是一个非基于Web的应用程序,我认为以合理的方式做到这一点几乎是不可能的。 你基本上必须编写一个自定义的OpenVPNauthentication模块,命中Google的OAuth API,请求一个authentication令牌,然后向用户提供一个特殊的URL,他们将login,获取一个访问代码,然后他们必须进入OpenVPN身份validation,以便它可以返回到您的OpenVPN身份validation模块返回到谷歌获得一个“好”或“不”authentication你。 如果这听起来令人费解,那是因为它。
假设您提及Google Apps意味着您使用的是Google Apps的付费版本(现在称为Google Apps for Work),那么最好的方法是设置单一login(SSO),您的内部身份pipe理系统是事实根源,Google Apps和您的OpenVPN系统都会对其进行身份validation。 您只需使用Google Apps进行search,即可了解有关Google Apps SSO的更多信息。 请注意,这不一定是一个简单的过程,往往需要一些努力来实现。
基本上,您需要一种方法将您的凭据提供给OpenVPN,然后代表您进行身份validation。 这只适用于你的用户将他们的凭据信任到应用程序(在这种情况下是VPN)的情况。 这适用于公司身份validation,但不符合谷歌的愿景,那里有不可信的应用程序。