机上ラボ > ターミナルサーバー活用概論

イメージで理解する スマートフォン向け簡易VPN構築


Integrated production LOW-TECH-SIDE by TACHY/RAWSEQ. 机上ラボTOPへ戻る

今回は、iPhoneやAndroid端末にもよく見られる様になった「VPN」。以前からパソコンに触れている方ほど敷居が高いイメージを持たれているのではないでしょうか。最近では「PPTP」対応のルーターも出てお手軽になってきたのですが、「周辺機器全般を抱える一般メーカーにセキュリティーを預けるのも・・」と足踏みされる方もいるかと思います。実は、「L2TP/IPSec」の手法なら、自分で、しかも現在のネットワーク構成を変えずにVPNできる事が分かったので、実際構築して分かってきた点を図解で挙げていきます。

目的


VPN環境(l2tp / IPSec) を準備し、スマートフォンから接続する。
以前紹介した、SSHポートフォワーディングを利用した、ターミナルサーバーの話題と似ているのですが、SSHポートフォワーディング接続より体感で感じられるぐらい通信速度は速く、しかもスマートフォンの場合、iOS系の制約(10分ルール)に引っかからないので、こちらをお勧めします。
※注:”簡易”VPNネットワークという名の通り、社内VPNとは異なった代物なのでご注意ください。また、あくまでも全体の「イメージ」を説明する事が目的なので具体的な内容にはあまり触れないので予めご注意ください。

今回用意したもの


■.インターネット接続環境
 (手持ちのごく普通のフレッツ光回線。固有IPを持つもの(動的でもOK))

■.端末
■.他のインターネット接続環境(特に無くてもいいです。)

ネットワーク概要


物理的な概念は以下の通りとなります。他にもネットワーク機器が挟まっていますが、便宜上、今回は省略しています。


上位はスマートフォン・ルーター1・ルーター2に分かれていて、ルーター1からノートPC、デスクトップPCがぶら下がっているというごく普通のネットワーク構造です。
スマートフォンからルーター1のネットワークに接続するのが今回のミッションです。更に後々の解説の為にルーター2のネットワークも用意しましたが、こちらは必要に応じてで構いません。 図を見る限り、ごく普通の家庭用インターネット環境ですね。
ネットワークをちょっと知っている人から見て、この状態からVPNを構築するには「ルーター1を差し替えて、ネットワーク再構築してセグメントをちゃんと決めて・・うーん大変だろうな」といったイメージを持ってしまいますが、実は簡易的なVPNであれば、ネットワーク構造を変えずにできてしまうんです。

まずは接続準備


普通のADSLや光回線で直接LAN接続でない限り、動的振り当てであっても自分のIPを持っているはずです。ここでの問題はルーターがVPN通信を所定のパソコンに割り当てることができるかなのですが、基準としては「VPNパススルー」機能が付いているかで判断できます。(恐らく箱や説明書に書いていると思います)


上記接続確認ですが、丁度前回紹介していた「nc」が利用できます。
利用ポート(及びプロトコル)は「UDP 500、UDP 4500、それにESP」と「ESP」に関しては疎通確認は難しそうですね^^;
上記ポートの開放と、ポートマッピングを行います。

仮想ネットワーク構築


さて、これから仮想ネットワークの構築に入ります。LINUX系であれば「xl2tpd」「openswan」を導入します。Centos6の場合、xl2tpdが標準パッケージに含まれておらず、拡張パッケージを参照する等、ちょっと面倒くさかったです。基本はサイトを見ながら設定ファイルを書き換え、サービスを起動して問題があればログを見て・の繰り返し作業になります。


そして、完成の図。設定に出てくる、「IPの範囲指定」は仮想ネットワーク内で参加予定の端末に割り振る予約IPアドレスになるので、他のローカルアドレスと被らないよう注意。

仮想ネットワークに参加(端末)


これまでの状態で、スマートフォンに必要な入力項目は全て手に入ったと思いますので、それを使って接続してみます。


イメージとしては、接続した端末が、あたかも接続先のLAN内にいるかのように振る舞います。ここで注目なのが、ゲートウェー(ルーター1)配下に対してVPN接続したにも関わらず、所属ゲートウェーと同位の仮想ネットワークが構築でき、図で言うとルーター1にだけぶら下がっているはずのデスクトップPCにもアクセスできる事。これは、文面だけでは想像に難い所ですね。

仮想ネットワークに参加(接続先PC)


また、当然他の接続先からの接続も可能です。今回はルーター(Private)1が東京。ルーター(Private)2が大阪です。


ルータ2は例にもよって直接LAN接続で、ゲートウェーなんていじらせてもらえない不自由なネットワーク環境なのですが、クライアント側になることによって、フックする方向と逆の通信をする事が可能です。つまりは何を言いたいかというと、外部開放しているネットワークであれば、どんな環境でもクローズドなサーバーのように振る舞うことができるということです。これは、使い方によってはとっても便利ですね。


Copywright by TACHY/RAWSEQ LOW-TECH On Line