コメント 0

SoftEtherを使ってDS-Lite環境の会社サーバに接続する

昨日の投稿で、DS-Lite環境だと、IPv4アドレスが他のユーザと共有になり、一部のポートのみしか占有にならないという話をしました。

coronavirus, covid19, laptop
新型コロナによる緊急事態宣言が発出されたあたりから、テレワークが注目されるようになりました。緊急事態宣言は5月末には解除となったのですが、引き続き「新しい生活様式」が求められている

そういう環境だと、グローバルIPアドレスで外部から接続できません。もちろん、すべてIPv6でまかなうなら、DS-Lite環境でもグローバルIPアドレスが振られるので問題ないのですが、なかなか、そうもいきません。

そこで、安価なVPSやクラウドサービスの仮想マシン上にVPNサーバーを構築し、そこを中心とした環境を作れば、外部からDS-Lite環境内のサーバ等にアクセスすることが可能になります。こうした環境をSoftEtherで構築しました。

例えば、このような構成です。私は現在、Azure仮想マシンを使っているのですが、これはAWSでも、さくらやConohaのVPSでも構いません。
自宅や出先のPCからは、Azure仮想マシン上に構築したSoftEtherの仮想HUBに接続し、その仮想HUBはあらかじめ会社サーバ上の仮想HUBとカスケード接続されているため、それを経由して、会社ネットワーク(192.168.1.0/24)上の会社PC等に接続できるというわけです。

いちおう、ここでは「会社ネットワーク」、「会社PC」という言い方をしていますが、これは用語を統一して説明を簡単にするためで、自宅ネットワークや自宅PCにカフェのWiFiからつなぐとかいう話でも同じことです。

ちなみに、この構成はSoftEtherを使ったVPN環境構築の一手法に過ぎないことに注意してください。SoftEtherは様々な機能を持っており、正解は一つではありません。私は、これから説明する方法で2週間以上、安定した運用ができていますが、他にもっと良い方法もあるかもしれません。(実は、SoftEther独自のダイナミックDNSサービスや、VPN Azureクラウドを使えば、わざわざ自分でクラウド側を構築しなくても良いかもしれない・・・。)

構築の手順

1. クラウド側のSoftEther Serverの構築
まず、クラウド(ここではAzure)上に仮想マシンを構築します。今回は、Ubuntu 18.04 LTSを使用しています。仮想マシンそのものの構築については、特に説明しません。
そこに、SoftEther Serverを導入し、常時起動した状態にします。その方法は後で説明します。

2. 会社側のSoftEther Serverの構築
次に、会社ネットワーク内の適当なサーバ(例えばRaspberry Piとかでも可。私の環境ではたまたまJetson Nanoだったりします。)にSoftEther Serverを導入します。こちらの環境も今回はUbuntu 18.04 LTSです。

3. SoftEther VPN サーバー管理マネージャで設定
SoftEtherの面白いところで、VPNサーバーの管理は、適当なPC(Windowsが望ましい)にサーバー管理マネージャというGUIのアプリを入れて、そこから設定します。
先ほど説明したように、クラウド側と会社側の双方にSoftEther仮想HUBを設定し、それをカスケード接続しています。また、仮想HUBをクラウド側、会社側にそれぞれ既存のネットワークとブリッジ接続することも必要です。

ここまでの設定は、こちらの記事を参照ください。

先週から続き物で書いている件、その続きです。 このようなネットワーク環境を作ることで、外部(例えば自宅やカフェ)から、会社ネットワークのリソースを使えるようにしようという話で

4. ルーティングやNATの設定
ここまででSoftEtherに設定した内容では、レイヤー2(L2)までの話なので、「ハードウェアのスイッチングハブを2つと、ハードウェアのLANボードを2つ買ってきて、それぞれを物理的に接続した」ということを仮想的に実現したに過ぎません。
今回やりたいことを実現するためには、レイヤー3のIPアドレスを使用したルーティングの設定を行う必要があります。それは、クラウド側と会社側のサーバのそれぞれでOS(Ubuntu)上の設定を行うということになります。

5. PCやスマートフォンからVPNに接続
ここまで設定したら、あとはクライアントからVPNに接続できます。SoftEtherはSoftEther独自のプロトコル以外にも、L2TP/IPSecやOpenVPNなどのプロトコルで接続することもできます。特に、L2TP/IPSecはOS標準で対応していることが多いため、オススメの接続方法です。

ざっと、このような手順で構築していくのですが、なかなか作業が多く、一つの記事ですべて書くのは難しそうです。そこで、順を追って記事を分けたいと思います。

OpenVPNを使用する場合

今回はSoftEtherを使用した方法を説明しますが、OpenVPNを使用する方法については、既に別の記事で説明しています。

昨日はAWS EC2上のAmazon Linux 2をOpenVPNサーバとして構築する方法についてまとめたのですが、次はクライアント側です。Raspberry Pi 3 Mode
訳あってAWS EC2でOpenVPNサーバを作ったので、その操作ログを残しておきます。 AWSコンソールでの操作 まず、AWSコンソールで下記の操作を行います。

Follow me!

コメントを残す