Oracle 永久免费主机搭建VPN--离线版

我最近在YouTube上看了一段视频,当时我看到一个VPN服务的广告。当我意识到可以在Oracle云中“始终免费”的实例上运行自己的VPN时,我正要点击“跳过广告”。VPN近年来变得越来越流行,如果你一直想使用VPN,但不想注册一项服务(可能会或可能不会出售你的信息),那么本教程适合你。在这篇文章中,我将向您展示如何使用OpenVPN在甲骨文云中免费(永远)运行您自己的个人VPN。我们将使用来自 Oracle 云市场的预构建的 OpenVPN 映像,本文中的大部分信息也包含在指南中,但本文中有足够的信息来启动您的 VPN,因此让我们开始吧。

首先,您将要登录,因此,如果您尚未注册,请前往并注册

**重要!**等等,还不要走!注册免费层帐户时,需要选择一个“主区域”,该区域是唯一可以在其中创建免费 VM 的区域。请记住,您的VPN将使您的本地连接显示为与VPN来自相同的IP,因此请非常仔细地选择您的家庭区域,因为以后无法更改!

启动实例

如上所述,我们需要首先在 OCI 市场上使用 OpenVPN 镜像启动一个实例。前往那里,然后单击“获取应用程序”以开始使用。

选择您的主区域并登录您的 Oracle 云帐户。

选择版本(您希望 VM 驻留在其中的隔离区),接受条款和条件,然后单击“启动实例”。

确保已选择你的主区域,然后命名 VPN,选择隔离区和可用性域。

AD3 中通常提供免费实例,但情况并非总是如此。如果在 AD3 中找不到“始终可用”的实例形状(见下文),请检查其他 AD!

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

在“专业和传统”类别中,选择“始终免费合格”的微型形状:

在“网络”下,选择 VCN 和公有子网。如果要使用保留 IP,请参阅指南,否则选择“分配公共 IPV4 地址”。

配置 SSH,以便以后能够连接到计算机。

接受其余的默认值,然后单击“创建”。VM 最初将处于“正在预配”状态:

一两分钟后,VM 将进入“正在运行”状态。此时,获取公共 IP 地址,以便我们可以远程访问并完成 OpenVPN 安装的配置。

现在前往友好的本地终端,并使用用户名“openvpnas”进行SSH:

复制到剪贴板

错误:无法复制

复制到剪贴板

错误:无法复制

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

**注意:**您需要将域名指向您的IP地址,以便以后的生活更轻松。只需根据DNS托管服务提供商的正常流程添加适当的记录即可。

首次通过 SSH 登录后,OpenVPN 初始化脚本将提示您完成安装。有关此脚本的更多详细信息,请参阅本指南。自 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 UI 的默认端口:

复制到剪贴板

错误:无法复制

复制到剪贴板

错误:无法复制

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 路由?” 的默认 (yes):

复制到剪贴板

错误:无法复制

复制到剪贴板

错误:无法复制

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

接受“使用本地身份验证”的默认值 - 这意味着您必须通过管理 UI 创建/管理 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]:

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

复制到剪贴板

错误:无法复制

复制到剪贴板

错误:无法复制

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

将激活密钥留空(除非您有密钥)。OpenVPN对2个用户是免费的,没有钥匙:

复制到剪贴板

错误:无法复制

复制到剪贴板

错误:无法复制

> 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/

接下来,为“开放VPN”用户设置一个 Linux 密码:

复制到剪贴板

错误:无法复制

复制到剪贴板

错误:无法复制

$ sudo passwd openvpn

默认时区设置为美国(太平洋 - 洛杉矶)。如果要更改此设置,请运行以下命令(系统将询问您要设置的时区)。

复制到剪贴板

错误:无法复制

复制到剪贴板

错误:无法复制

$ sudo dpkg-reconfigure tzdata

下一步是登录到管理 UI,但在执行此操作之前,我们需要确保 VCN 的安全列表具有几个端口的入口规则。返回 Oracle 云控制台的实例详细信息页面,单击您与实例关联的子网。

在子网详细信息页面上,单击安全列表。

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

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

登录到管理 UI

现在,您可以通过 登录到管理 UI。管理员 UI 使用自签名证书,因此请接受证书以继续:https://[your public IP or your domain name]/admin

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

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

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

**注意:**如果不更新此设置,则您的任何客户端都无法连接到 VPN 服务器,因为默认情况下,它设置为不可路由(专用)IP 地址!

我们需要将其更新为我们的公共IP(甚至更好的 - 域名)。要进行更改,请单击“配置”(#1)和“网络设置”(#2)。

更新主机名并保存。

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

接下来,转到“VPN设置”。

验证互联网流量是否将通过 VPN 路由:

添加有效的 DNS 服务器:

这将负责基本的VPN配置,但如果您想了解更多信息,请参阅其他安全建议。

创建用户

单击“用户管理”,然后单击“用户权限”。

添加用户并设置密码:

更新服务器:

连接到虚拟专用网络

下载适用于您的操作系统的 OpenVPN 连接客户端:

首次启动时,您需要配置客户端。

导入配置文件:

导入后,您将处于连接状态。

测试虚拟专用网络

在连接到VPN之前和之后访问此页面(或类似页面)。您会注意到,在连接到VPN后,您的IP地址和位置将假定VPN的信息和位置。

以前:

后:

总结

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

创建免费 VM 后,请查看帐户提供的其他“始终免费”服务,包括自治数据库的 2 个免费实例。查看我的一些其他博客文章,以获取一些有关如何使用您的免费套餐帐户的更多有趣项目想法!

照片由卡尔视觉在无火花