VPN (PPTP)サーバの構築 (Ubuntu 14.04)

2014年5月公開

VPN (PPTP) サーバの構築 (Ubuntu 14.04)

ストリーミングを含めたすべての通信で IP を変更するために,PPTP による VPN を Amazon EC2 上で構成したので,その記録です.

サーバのセットアップ

インスタンスはネットワーク速度の向上のため m3.medium を用いました.スポットインスタンスを使用すると 2014 年 5 月現在は $0.0081/hour 程度です.OS は Amazon が用意している Ubuntu Server 14.04 LTS (PV) を使用しました.

PPTP サーバのインストールと設定

pptpd のインストール

sudo apt-get install pptpd

pptpd の設定

/etc/pptpd.conf

ローカルとかぶらない IP アドレス帯を設定します.ここでは 192.168.200.* を使用します.
localip 192.168.200.2  
remoteip 192.168.200.128-191

/etc/ppp/pptpd-options

DNS の設定を行います.ここでは Google のパブリック DNS を使用します.
ms-dns 8.8.8.8
ms-dns 8.8.4.4

/etc/ppp/chap-secrets

ユーザ名とパスワードの設定を行います.username と password を自分のものに置き換えて書き込みます.2 つ目は server の名前で,/etc/ppp/options.pptpd の name と一緒にする必要がありますが,デフォルトで pptpd になっているのでこれで OK で,状況によって * を用いてすべてを対象にすることも可能です.
username pptpd "password" *

NAT の設定

/etc/sysctl.conf

IPv4 forward の有効化をします.
net.ipv4.ip_forward=1

/etc/rc.local

起動時のスクリプトで NAT を自動的に起動するようにします.これはインスタンスの再起動時に影響を受けます.再起動を行わない場合には,このコマンドを直接実行し,NAT を起動します.
sudo iptables -t nat -A POSTROUTING -s 192.168.200.0/24 -j MASQUERADE

設定の反映

/etc/sysctl.conf で変更された設定を読み込みます.
sudo sysctl -p

pptpd の再起動

ここまでで設定された内容で pptpd の再起動を行います.
sudo /etc/init.d/pptpd restart

Mac の VPN のセットアップ

「システム環境設定」を開き,「ネットワーク」を開きます.左下にある「+」ボタンを押し,新しいインターフェースを追加する画面に遷移し,インターフェースを「VPN」に,VPN タイプを「PPTP」に設定し,VPN インターフェースの追加を行います.
次に歯車ボタンを押し,「サービスの順序を設定…」を開き,追加した VPN インターフェースを一番上に移動します.
  • サーバアドレス … pptpd をセットアップしたサーバの IP アドレスを設定します (e.g. ec2-XXX-XXX-XXX-XXX.us-west-2.compute.amazonaws.com)
  • アカウント名 … /etc/ppp/chap-secrets で設定した username を使用します
  • パスワード … 「認証設定…」を開き「パスワード」を選択し,/etc/ppp/chap-secrets で設定した password を使用します
ここで「メニューバーに VPN の状況を表示」を有効化するとシステム環境設定を開かずに VPN の接続・切断ができて便利です.

参考ページ