在甲骨文云上启动自己的免费私人VPN

在甲骨文云上启动您自己的免费私人VPN

近年来,VPN变得越来越流行,如果你一直想使用VPN但又不想注册可能出售你信息的服务,那么本教程正是为你准备的。在这篇文章中,我将向你展示如何在Oracle云中使用OpenVPN,永久免费地运行你自己的个人VPN。我们将使用Oracle云市场中预构建的OpenVPN镜像,本文中的许多信息也包含在指南中,但本文提供了足够的信息来启动你的VPN,让我们开始吧。

首先,你需要登录,如果你还没有注册,请前往并注册

重要提示! 请稍等,不要急着离开!在注册免费层账户时,你需要选择一个“主区域”,这将是你唯一可以创建免费虚拟机的区域。请记住,你的VPN会使你的本地连接看起来像是来自与VPN相同的IP地址,因此要非常谨慎地选择你的主区域,因为之后无法更改!

启动实例

如上所述,我们首先需要使用OCI市场上的OpenVPN镜像启动一个实例。前往那里,点击‘获取应用’开始吧。

请选择您的所在区域,并登录您的甲骨文云账户。

请选择版本,并指定您希望虚拟机所在的隔间,接受条款和条件后,点击“启动实例”。

请确保已选择您的家庭区域,随后为VPN命名,选择一个隔间和一个可用性域。

在AD3中通常可以找到免费实例,但情况并非总是如此。如果在AD3中未能找到“始终免费”的实例类型(见下文),请查看其他AD!

接下来,点击“更改形状”。

在类别中,选择“始终免费合格”的:

在网络设置中,选择一个虚拟云网络和公共子网。如果您希望使用保留IP,请参阅指南,否则请选择“分配公共IPv4地址”。

请配置SSH,以便日后能够连接到该设备。

接受其余默认设置,并点击“创建”。虚拟机最初将处于“配置中”状态:

在一两分钟后,虚拟机将进入“运行”状态。此时,请获取公共IP地址,以便我们能够远程登录并完成OpenVPN的配置安装。

现请使用用户名 openvpnas 通过 SSH 登录:

ssh openvpnas@[Your Public IP] -i ~/.ssh/id_oci_demo

**注意:**为便于日后操作,您需要将域名指向您的IP地址。只需按照您的DNS托管服务商的常规流程添加相应的记录即可。

当您首次通过SSH登录时,OpenVPN的初始化脚本会提示您完成安装。关于此脚本的更多详细信息,请参阅[指南](https://openvpn.net/oracle-quick-start-guide/)。截至2020年12月中旬,提示将首先要求您阅读并接受最终用户许可协议(EULA)。接下来,请对询问此是否为主节点的问题回答“是”。

Once you provide a few initial configuration settings,
OpenVPN Access Server can be configured by accessing
its Admin Web UI using your Web browser.

Will this be the primary Access Server node?
(enter 'no' to configure as a backup or standby node)
> Press ENTER for default [yes]: yes

选择“所有接口”:

Please specify the network interface and IP address to be
used by the Admin Web UI:
(1) all interfaces: 0.0.0.0
(2) ens3: 10.0.0.46
Please enter the option number from the list above (1-2).
> Press Enter for default [1]: 1

接受管理员Web界面的默认端口:

Please specify the port number for the Admin Web UI.
> Press ENTER for default [943]:

接受守护进程的默认端口:

Please specify the TCP port number for the OpenVPN Daemon
> Press ENTER for default [443]:

对于“客户端流量是否应默认通过VPN路由?”这一问题,请接受默认选项(是)。

Should client traffic be routed by default through the VPN?
> Press ENTER for default [yes]:

接受“使用本地认证”的默认设置——这意味着您需要通过管理员界面创建和管理VPN用户。

Use local authentication via internal DB?
> Press ENTER for default [yes]:

对于“私有子网是否应可访问…”,请接受默认设置:

Should private subnets be accessible to clients by default?
> Press ENTER for default [yes]:

接受默认的管理员界面用户名(或指定您自己的名称):

Do you wish to login to the Admin UI as "openvpn"?
> Press ENTER for default [yes]:

请将激活密钥留空(除非您已持有密钥)。OpenVPN对于无密钥的两名用户免费使用:

> Please specify your Activation key (or leave blank to specify later):

脚本将产生如下所示的输出:

Initializing OpenVPN...
Removing Cluster Admin user login...
userdel "admin_c"
Adding new user login...
useradd -s /sbin/nologin "openvpn"
Writing as configuration file...
Perform sa init...
Wiping any previous userdb...
Creating default profile...
Modifying default profile...
Adding new user to userdb...
Modifying new user as superuser in userdb...
Getting hostname...
Hostname: open-vpn
Preparing web certificates...
Getting web user account...
Adding web group account...
Adding web group...
Adjusting license directory ownership...
Initializing confdb...
Generating PAM config...
Enabling service
Starting openvpnas...

NOTE: Your system clock must be correct for OpenVPN Access Server
to perform correctly.  Please ensure that your time and date
are correct on this system.

Initial Configuration Complete!

You can now continue configuring OpenVPN Access Server by
directing your Web browser to this URL:
https://10.0.0.46:943/admin
Login as "openvpn" with the same password used to authenticate
to this UNIX host.
During normal operation, OpenVPN AS can be accessed via these URLs:
Admin  UI: https://10.0.0.46:943/admin
Client UI: https://10.0.0.46:943/
See the Release Notes for this release at:
   https://openvpn.net/vpn-server-resources/release-notes/

接下来,为openvpn用户设置一个Linux密码:

$ sudo passwd openvpn

默认时区设置为美国(太平洋 - 洛杉矶)。如需更改,请运行以下命令(系统将提示您选择所需的时区)。

$ sudo dpkg-reconfigure tzdata

下一步是登录到管理员界面,但在我们能够做到这一点之前,我们需要确保虚拟云网络的安全列表中包含几个端口的入口规则。回到Oracle云控制台,在实例详情页面,点击您与实例关联的子网。

在子网详情页面,点击安全列表。

为TCP端口943和443添加一个入口规则。

请添加另一条入口规则,此规则适用于UDP端口1194(用于VPN隧道):

登录到管理员界面

现可通过 https://[您的公共IP或域名]/admin 登录到管理员界面。管理员界面使用自签名证书,因此请接受该证书以继续操作:

请使用初始化脚本中指定的用户名和您创建的密码进行登录。

再次接受最终用户许可协议。

此时,内部IP地址已被配置为服务器名称。

注意: 若不更新此设置,您的所有客户端将无法连接到您的VPN服务器,因为默认设置为不可路由(私有)的IP地址!

我们需要将其更新为我们的公网IP(更佳的是域名)。要更改,请点击配置(#1)和网络设置(#2)。

更新主机名并保存。

在保存后,更新正在运行的服务器:

接下来,前往“VPN设置”。

确认互联网流量将通过VPN进行路由:

添加有效的DNS服务器:

这将完成基本的VPN配置,但若您欲进一步了解,请参阅额外的安全建议。

创建用户

点击“用户管理”,然后选择“用户权限”。

添加用户并设置密码:

请更新服务器:

连接到VPN

请根据您的操作系统下载合适的OpenVPN Connect客户端:

初次启动时,您需要对客户端进行配置。

导入个人资料:

导入后,您将被连接。

测试VPN

在连接VPN之前和之后,访问此页面(或类似的网站)。您会发现,连接VPN后,您的IP地址和位置将变为VPN的信息和位置。

连接前:

之后:

概述

在本文中,我们启动了自己的私人VPN服务器,并从本地机器连接到它。当然,还有其他可用于VPN的服务器,因此请根据需要调整此过程。您可能需要启动自己的虚拟机,而不是像我们在这里所做的那样使用预配置的虚拟机镜像。