Carpe Diem

備忘録

Pritunl で簡単にVPNサーバを構築する

概要

Pritunlという簡単にVPNサーバの構築&管理のできるOSSがあったので使い方を紹介します。

環境

サーバ側

  • Ubuntu 14.04
  • pritunl v1.12.828.76
  • MongoDB 3.0.8
  • 開放ポート(管理用) 9700/tcp
  • 開放ポート(VPN用、任意) 12345/udp

クライアント側

  • OSX
  • TunnelBlick 3.4

インストール

MongoDB

$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
$ echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
$ sudo apt-get update
$ sudo apt-get install -y mongodb-org

Pritunl

$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A
$ echo "deb http://repo.pritunl.com/stable/apt trusty main" | sudo tee /etc/apt/sources.list.d/pritunl.list
$ sudo apt-get update
$ sudo apt-get install pritunl

起動します。

$ sudo service pritunl start

VPNサーバの構築

ログイン

Webの管理画面が自動で作られるのでそちらにアクセスしてください。
自分のサーバのホスト名を

example.com

とすると、

https://example.com:9700

にアクセスします。するとSSLの警告とともにMongoDBの設定を画面になります。 f:id:quoll00:20151222203523p:plain

設定がされると再度SSLの警告ページに飛ばされ、以下の様なログイン画面が表示されます。 f:id:quoll00:20151222203534p:plain

初期のID,パスワードは

ID:pritunl
PW:pritunl

です。
ログインすると以下の様な画面が表示されます。

f:id:quoll00:20141101002722p:plain

初回起動時では以下の画面が表示されます。 f:id:quoll00:20151222204241p:plain

パスワードの再設定くらいはした方が良さそうですが、今回は特に設定せず進みます。

各種設定

まずはOrganization, Userを設定します。上部メニューのUsersをクリックします。

f:id:quoll00:20141101132639p:plain

Add Organizationをクリックします。

f:id:quoll00:20141101132720p:plain

今回は example という名前で設定します。 もちろん任意です。

f:id:quoll00:20141101132814p:plain

次に Add User をクリックします。

f:id:quoll00:20141101132851p:plain

名前は test としておきましょう。こちらも好きな名前をつけてください。

f:id:quoll00:20141101132943p:plain

サーバの構築

上部メニューの Servers をクリックします。

f:id:quoll00:20141101133346p:plain

Add Server でサーバを追加します。 f:id:quoll00:20151222211114p:plain

主に設定する項目は以下です。

項目 説明
Name 名前。任意 example-vpn
Port 解放ポート。任意 12345
Protocol プロトコルVPNは基本UDP udp

f:id:quoll00:20151222211155p:plain

追加できたら先ほど作ったOriganizationにAttachします。
Attach Organization をクリックしてください。 f:id:quoll00:20151222211222p:plain

するとスタートボタンを押せるようになるので、Start を押したらVPNサーバが起動してくれます。 f:id:quoll00:20151222211230p:plain

クライアントから接続

OpenVPNを使うので、まずはOpenVPNの設定ファイルをUser画面からダウンロードしましょう

f:id:quoll00:20141101134227p:plain

こちらの「↓」マークがダウンロードボタンです。

ダウンロードできたら

TunnelBlick を使って OpenVPN で接続する

を参考にVPN接続の設定を行ってください。
接続が完了すると、中のプライベートIPでちゃんと接続できることがわかります。

$ ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1): 56 data bytes
64 bytes from 192.168.1.1: icmp_seq=0 ttl=63 time=173.865 ms
64 bytes from 192.168.1.1: icmp_seq=1 ttl=63 time=134.951 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=63 time=114.486 ms
64 bytes from 192.168.1.1: icmp_seq=3 ttl=63 time=264.054 ms

ソース