[OCI]Oracle Cloudで無料のプライベートVPNを立ち上げ (2020/12/23)

Oracle Cloudで無料のプライベートVPNを立ち上げ (2020/12/23)

https://blogs.oracle.com/developers/launching-your-own-free-private-vpn-in-the-oracle-cloud
投稿者:Todd Sharp

最近YouTubeで動画を見ていたら、VPNサービスの広告が出てきました。
私はそれがOracle Cloudの "Always Free "インスタンス上で独自のVPNを実行することが可能になることに気付いたとき、
私はちょうど '広告をスキップ'をクリックしようとしていました。
VPNはここ数年で人気が高まってきており、VPNを利用してみたいと思っていても、サービスにサインアップしたくない(自分の情報を売っているかどうかわからない)という方には、
このチュートリアルがお勧めです。
この記事では、OpenVPNを使ってOracle Cloudで無料で(永遠に!)自分だけのVPNを実行する方法を紹介します。
Oracle Cloud Marketplaceから事前に構築されたOpenVPNイメージを使用しますが、この記事の情報の多くはガイドにも含まれています。

最初にログインしますので、まだログインしていない場合はサインアップしてください。

重要! 待ってください、まだ行ってはいけません! 無料のアカウントにサインアップする際には、"ホームリージョン "を選択する必要があります。
これはあなたが無料で VM を作成できる唯一のリージョンになります。
VPN はローカル接続を VPN と同じ IP から発信しているように見せることができることを覚えておいてください。
後で変更することはできませんので、慎重にホームリージョンを選択してください。

インスタンス起動


上記のように、まず最初に OCI Marketplace の OpenVPN Image を使ってインスタンスを起動する必要があります。そこに向かい、'Get App'をクリックして開始してください。

ホームリージョンを選択し、Oracle Cloudアカウントにサインインします。


バージョンを選択し、VMを配置するコンパートメントを選択し、利用規約に同意してから「Launch Instance」をクリックします。

ホームリージョンが選択されていることを確認してから、VPNの名前を付け、コンパートメントと可用性ドメインを選択します。

AD3では通常、無料のインスタンスが利用できますが、常に無料というわけではありません。
AD3で「Always Free」のインスタンスの形(下記参照)が見当たらない場合は、他のADをチェックしてみましょう!

次に、「シェイプの変更」をクリックします。



「Specialty and Legacy」では、「Always Free対象」のマイクロシェイプを選択してください。



[ネットワーク]で、VCNとパブリックサブネットを選択します。
予約IPを使用する場合はガイドを参照し、そうでない場合は「パブリックIPV4アドレスの割り当て」を選択します。



後からマシンに接続できるようにSSHの設定をします。



残りのデフォルトを受け入れて、「Create」をクリックします。VMは最初は「Provisioning」状態になります。



1~2分後に VM は "Running" 状態になります。
この時点で、パブリック IP アドレスを取得して、リモートインできるようにし、OpenVPN インストールの設定を完了させます。



フレンドリーなローカルターミナルに向かい、ユーザ名 `openvpnas` で SSH 接続してください。

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

注:後の生活を楽にするために、あなたのIPアドレスでドメイン名を指すようにしたいと思うでしょう。DNS ホスティングプロバイダの通常のプロセスに従って適切なレコードを追加してください。

初めて SSH 接続するとすぐに、OpenVPN init スクリプトがインストールを完了するように促してくれます。
このスクリプトに関するより詳細な情報はガイドにあります。
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


Admin 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]:

デフォルトの Admin 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/


次に、`openvpn`ユーザにLinuxのパスワードを設定する。

$ sudo passwd openvpn

デフォルトのタイムゾーンは US (Pacific - Los Angeles) に設定されています。
これを変更したい場合は、以下のコマンドを実行してください(設定したいタイムゾーンを聞かれます)。

$ sudo dpkg-reconfigure tzdata

次のステップは、Admin UIにログインすることですが、その前に、VCNのセキュリティリストにいくつかのポートの侵入ルールがあることを確認する必要があります。
Oracle Cloudコンソールに戻って、インスタンスの詳細ページで、インスタンスに関連付けたサブネットをクリックします。


サブネットの詳細ページで、セキュリティリストをクリックします。

TCP ポート 943 および 443 用の Ingress ルールを追加します。

別のIngressルールを追加します。これはUDPポート1194(VPNトンネルに使用)用のものです。


管理者UIへのログイン


これで、https://[あなたの公開IPまたはドメイン名]/admin経由で管理者UIにログインできるようになりました。
admin UIは自己署名付きの証明書を使用していますので、証明書を受け入れて続行してください。

initスクリプトで指定したユーザー名と作成したパスワードでログインします。

EULAを受け入れる(再度)。

この時点で、内部IPアドレスがサーバー名として設定されています。

注意: この設定を更新しないと、デフォルトではルーティング不可能な(プライベートな)IPアドレスに設定されているため、どのクライアントもVPNサーバに接続することができなくなります。

この設定をパブリックIP(またはドメイン名)に更新する必要があります。変更するには、設定 (#1) とネットワーク設定 (#2) をクリックします。

ホスト名を更新して保存します。

保存後、実行中のサーバーを更新します。

次に、「VPN設定」に移動します。

インターネットトラフィックがVPNを介してルーティングされることを確認します。

有効なDNSサーバーを追加します。

これで基本的なVPNの設定は完了しますが、もっと読みたい方は、追加のセキュリティ推奨事項を参照してください。

ユーザーの作成


「ユーザー管理」をクリックし、「ユーザー権限」をクリックします。

ユーザーを追加し、パスワードを設定します。

サーバーを更新します。


VPNへの接続


お使いのOS用に適切なOpenVPN Connect Clientをダウンロードしてください。


最初の起動時には、クライアントを設定する必要があります。





プロファイルをインポートします。

インポート後に接続されます。


VPNのテスト

VPNに接続する前と接続した後の両方で、このページ(またはそれに類するもの)にアクセスしてください。
VPNに接続した後は、あなたのIPアドレスと位置情報がVPNの情報と位置情報を前提としていることに気づくでしょう。

接続前:


接続後:


まとめ

この記事では、独自のプライベートVPNサーバを立ち上げ、ローカルマシンから接続してみました。
VPN に使用できるサーバは他にもありますので、必要に応じてこの手順を自由に変更してください。
ここで行ったように、あらかじめ設定された VM イメージを使うのではなく、独自の VM を起動する必要があるかもしれません。

無料のVMを作成したら、Autonomous Databaseの2つの無料インスタンスを含む、アカウントで利用可能な他の「Always Free」サービスをチェックしてみてください。
私の他のブログ記事をチェックして、無料のアカウントを使って何をするかについての楽しいプロジェクトのアイデアを見つけてください。

Photo by KAL VISUALS on Unsplash

コメント

このブログの人気の投稿

Oracle APEXのInteractive Gridで、Oracle Formsと比較して、重複行の検証を制御/通過させる方法 (2022/07/21)

Oracle APEX 24.1の一般提供の発表 (2024/06/17)

Oracle Cloudのデータベースをオブジェクト・ストレージにバックアップする3つの方法 (2021/12/13)