Monthly Archives: April 2014

Raspberry PiをSoftEtherでVPNサーバにする

Raspberry Pi活用の第一弾として、VPNサーバに仕立てることにしました。

Raspberry Pi

使ったのはSoftEther。SoftEtherが出たときは業界が騒然としたものです。NATやファイアウォール越しにVPN張れてしまうんですからね。それを自宅に入れられる日が来ようとは。うれしいことであります。
SoftEther VPNプロジェクトのページはこちらです。

インストールは、PCリンクスさんのページが参考になります。SoftEtherは、ダウンロードページに行って、URLを確認し、Raspberry Piからwgetでダウンロードします。「SoftEther VPN Server」を選んで、OSやCPUは、OS: Linux, CPU: ARM EABI (32bit)を指定すればOKです。私は参考サイトを見ながら作業しましたが、公式ドキュメントも丁寧にインストールについて解説してくれていますので、ぜひご参考を。

一通りインストールが終わったら、Windowsを起動。VPN管理マネージャをインストールします。参考サイトを参照しつつ設定します。ダイナミックDNSサービスも提供してくれるのがありがたいですね。

設定後、iPhoneをクライアントにしてVPN接続を試みたのですが、つながらず・・・。
/usr/local/vpnserver/server_log配下のログに以下の記述がありました。

2014-03-30 23:42:11.438 L2TP PPP セッション [xxx.xxx.xxx.xxx:1701]: クライアントは認証プロトコルとして “PAP” (Password Authentication Protocol、クリアテキストパスワード認証プロトコル) および MS-CHAP v2 プロトコルの両方を拒否しました。クライアント側の接続設定で PAP または MS-CHAP v2 のいずれかを有効にして再試行してください。

うーん。わからん。えーい、と思って、iPhoneのVPN設定をいったんクリアし、再登録したら、このエラーは出なくなりました。何だったのだろうか・・・。
もう一つ出ていたエラーはこちら。

2014-03-31 00:03:34.846 L2TP PPP セッション [xxx.xxx.xxx.xxx:1701]: DHCP サーバーからの IP アドレスの取得に失敗しました。PPP の通信を受諾するためには DHCP サーバーが必要です。仮想 HUB の Ethernet セグメント上で DHCP サーバーが正しく動作しているかどうか確認してください。DHCP サーバーを用意することができない場合は、仮想 HUB の SecureNAT 機能を用いることもできます。

うーん、自宅ではルータをDHCPサーバにしているんだけどなあ。
これまた悩みましたが、VPN管理マネージャのローカルブリッジ設定がtapになっていました。eth0にしたところ、つながるようになりました(iPhoneにローカルのIPアドレスが割り振られました)。

iPhoneにはAGEphoneというアプリを入れていまして、ひかり電話ルータにレジストしていました。なので、iPhoneでVPN接続で自宅につないで、AGEphoneを立ち上げて、電話をかけると、自宅から電話したこととなり、電話した先で自宅の番号が表示されるのです。おー、ワンダフル。自宅にVPNでつないで何をするかは、ほかにも考えてみることにしよう。