如何使用 OpenVPN 在 GCP 上配置 "client-to-site" VPN?

How to configure "client-to-site" VPN on GCP using OpenVPN?

TLDR; 我有一个网络应用程序,我们称它为工具,我想让我的团队在线使用它,而不是世界其他地方。

工具应用程序。 该应用程序是容器化的,可以部署到我在 GCP 上的一个 Kubernetes 集群。我打算 运行 在缺少外部 IP 的机器上使用它,但可以从我的 GCP 网络内的其他机器访问它。

解决方案 1:云 VPN。我读过 Googles Cloud VPN 但这似乎主要适用于你想要进行网络到网络 VPN 的情况。我正在寻找的是客户端到站点的 VPN。

解决方案 2:OpenVPN。因此,我阅读了有关 OpenVPN 的信息。据我所知,我可以在我的 GCP 网络中设置我自己的 OpenVPN 实例,为其提供外部 IP 并为我的团队提供凭据,使他们能够客户端访问 VPN 服务器。

目标。我希望能够连接到我的 VPN,进入我的浏览器并输入 "www.tools.mydomain.com" 并最终到达网络服务器。如果我在没有 VPN 的情况下键入该域,它应该给出 "connection error" 或类似的东西。

问题。当您解析 "tools.mydomain.com" 地址时,如何配置 OpenVPN 以确保将来自客户端的流量路由到我在 GCP 内的网络服务器?这甚至是实现我的目标的最佳解决方案吗?任何指导表示赞赏。

您提出了截然不同的问题。 1) 如何设置 OpenVPN; 2) 如何创建 DNS 名称。

OpenVPN 有据可查。我建议去 Google Marketplace 并从预配置的图像(OpenVPN 访问服务器)开始。这将大大简化 OpenVPN 的入门。

接下来,您将使用 www.tools.mydomain.com 的资源记录配置您的 DNS 服务器,并使用您的应用程序的私有 IP 地址指定 A 记录类型。

当 OpenVPN 连接建立时,私有 IP 地址将响应。当连接断开时,地址不会响应(超时)。

注意:使用市场图像创建 OpenVPN 实例后,使用管理页面登录服务器,然后创建新用户。以新用户身份登录,您将看到一个已配置所有设置的预配置客户端下载。这使得使用 OpenVPN 的设置几乎毫不费力。