thumbnail

Dockerを使って爆速でvpnサーバを立ち上げる

2021/08/22

VPNサーバ立ち上げの備忘録です。 ルーターにVPN機能がない場合は自分でVPNサーバを立ち上げる必要があるので、dockerを使ってサクッと立ち上げます。

VPN構成イメージ

VPNサーバを使用した場合の構成イメージ blog-vpn-0

VPNサーバ構築手順

VPNサーバに使用するdockerイメージは以下になります。 https://hub.docker.com/r/siomiz/softethervpn/ dockerが動く環境であれば以下のコマンド1発でVPNサーバが立ち上がります。

shell
$ docker run --privileged --name vpnserver \
  -p 500:500/udp -p 4500:4500/udp -p 1701:1701/tcp -p 1194:1194/udp -p 5555:5555/tcp \
  -e PSK=事前共有キー \
  -e USERS=ユーザー名:パスワード \
  siomiz/softethervpn

上記VPNサーバで使用する各Portは-p 500:500/udp -p 4500:4500/udp -p 1701:1701/tcpL2TP/IPSec用、-p 1194:1194/udpOpenVPN用、-p 5555:5555/tcpSoftEther用になります。 事前共有キー、ユーザー名、パスワードはVPN接続の際に使用します。

外部のネットワークからでもVPNサーバにつながるように、ルーターのポートフォワーディング設定をしてあげれば完了です。

VPN接続方法 (Mac)

自分がMacをメインに使用しているのでここではMacでのVPN接続方法を記載します。 尚、L2TP/IPSec規格に関してはMacとWindowsで標準サポートしているので、特に新しいソフトをインストールする必要はありません。

L2TP/IPSec

ネットワークの環境設定画面から新しくネットワークを追加、インターフェイスVPNVPNタイプL2TP over IPSecに選択してネットワークを作成します。 blog-vpn 作成したネットワーク上でサーバアドレス(ルーターのグローバルIPなど)とアカウント名(ユーザー名)を入力します。 blog-vpn-2 認証設定...を開くと、パスワード共有シークレットを入力する欄があるので、そこにVPN立ち上げ時に設定した値を入力して完了です。

OpenVPN

VPNサーバ(docker)を立ち上げた際の全ログがそのまま.ovpnファイルとして使用できます。 使用するソフトウェアによって異なるので細かくは記載しませんが、基本的には

  1. .ovpnファイルを読み込む
  2. ユーザー名とパスワードを入力して接続

という流れになると思います。

おわり

そもそもルーターにVPN機能があれば...

author picture

Mitsuru Takahashi

京都市内にてフリーランスエンジニアとして活動しています。

detail

Profile

author picture

Mitsuru Takahashi

京都市内にてフリーランスエンジニアとして活動しています。

detail

© 2022 mitsuru takahashi