連載
» 2003年05月22日 00時00分 公開

VPN実践導入講座:第3回 PPTPサーバの導入 (2/5)

[デジタルアドバンテージ,著]

 PPTPをサポートしたVPNサーバを導入する方法は、従来のWindows NTシステムでいえば、RAS(Remote Access Service)を導入するのと、手順的にも機能的にもほぼ同様である。RASを使ったサービスでは、Windows NT ServerやWindows 2000 Serverにダイヤルアップ・モデムやISDNのTAを接続してドライバを導入すると、それぞれのモデムごとに各クライアントからのダイヤルアップ接続を受け付け可能な状態になる。

 PPTPを使ったインターネットVPN接続でもこれと同様に、Windows 2000 ServerやWindows Server 2003にPPTPの仮想デバイスを導入し(VPNサービスを導入すると、自動的にこれらの仮想デバイスが作成される)、それらの仮想デバイスごとに各クライアントからのVPN接続要求を受け付け可能な状態になる。

 ただし一般的なクライアントPCからのダイヤルアップ接続と違って、インターネットVPN接続では、ネットワーク同士を相互に接続することになる。VPNのサーバ側もクライアント側も、それぞれ複数のIPアドレス(つまり192.168.0.0/24といったネットワークなど)を持っており、それらのネットワーク内のクライアントが相互に、アドレス変換(NATやNAPTなど)を使わずに接続できなければならない。つまりお互いのネットワーク・アドレス同士で、ネットワークのルーティングを行う必要がある。

 RAS接続やVPN接続において、ネットワークをそのままルーティングするためには、RAS/VPNサーバ側で特別なルーティングの設定が必要になる。例えばクライアント側のネットワーク・アドレスが192.168.1.0/24ならば、VPNのサーバ側に接続された時点で、サーバ側のルーティング・テーブルに192.168.1.0/24というエントリが必要になる(ネットワークのルーティングについては「連載:基礎から学ぶWindowsネットワーク/第9回 IPルーティング」などを参照)。VPNのサーバ側では、パケットをルーティングする場合にはルーティング・テーブルを参照するが、例えば192.168.0.10あてのパケットならば、これがVPNのクライアント・ネットワークあてであることが分かる。

 このように、VPN接続が有効な場合にはクライアント・ネットワークへのルート・エントリが有効になり、VPN接続が無効な場合には、それらのルート・エントリを削除しておきたい。このような要望にこたえるため、VPNサーバには自動的にルーティングを追加したり、削除したりする機能が用意されている。具体的には、VPN接続用のユーザー・アカウントのプロパティにおいて、静的ルートを設定するためのフィールドが用意されているので、VPN接続ごとに、適切なルートを設定すればよい。

VPN接続導入の実際

 それでは実際にインターネットVPNを導入する具体的な手順についてみていこう。今回は本社側ドメインと神戸支社側ドメインにほぼ同じ構成のシステムを導入し、それぞれインターネットへのアクセスと本−支社間でのVPNトンネル接続を実現する。VPNのプロトコルとしては、PPTPを利用する。実際に導入する環境は次のようなものとする。

 いずれもドメイン・コントローラにはWindows 2000 Serverを使い、DNSや(必要ならば)WINSサーバなども導入する。そして、2つのドメインは親子のツリー関係を結ぶものとする。複数の支社がある場合でも、以下と同様に作業を行えばよい。

 VPNのサーバとしては2003年6月に出荷が予定されているWindows Server 2003を使用する。インターネットVPNを実現するためには、Windows Server 2003ではなく、Windows 2000 Serverでもほぼ同じことが可能であるが、次のようにいくらか改善されている点があるので、これを使用することにする。Windows Server 2003の「ルーティングとリモート アクセス機能(以下RRASと省略)」では、ベーシック・ファイアウォール機能やPPPoEのネイティブ・サポート機能などが新たに追加されている。これらはWindows XP Professional/Home Editionではすでに標準装備として導入されていた機能であるが、WindowsのサーバOSとしてはWindows Server 2003が最初の標準実装となる。今回はこれらの機能を使って、インターネットへのアクセスとVPN機能を実現してみる。

 Windows Server 2003の「ベーシック・ファイアウォール」では、一般的なファイアウォール製品と比べると、ログ機能や高度なポリシー設定などの機能は提供されない。例えば外部から不正なアクセスなどがあった場合に、どのようなパケットがブロックされたなどの情報は残らない。このため「ベーシック(基本)ファイアウォール」と名付けられている。

 もちろんWindows 2000 Serverとブロードバンド・ルータなどを組み合わせてもよいが、Windows 2000 Serverはいわゆるファイアウォール機能を持っていないので、ISA Sever 2000のような専用ファイアウォール・ソフトウェアを導入せずに、直接インターネットに向けて公開するようなことはしてはいけない。必ずルータなどで不要なポートをブロックするようにしておく。VPNを利用するために必要なポートの設定情報については、前回の「第2回 インターネットVPNの基礎知識/2.レイヤ2トンネリング・プロトコル」などを参照していただきたい。ルータのパケット・フィルタを使って簡易的なファイアウォール機能を実現する場合は、最低限、仕様に「PPTPパススルー」とか「IPSecパススルー」機能が記述されているものを選びたい。「〜パススルー」と記されていても、VPNの実装方法はさまざまなので、プロトコルやサーバ/クライアントの種類などによってパススルーできない場合も多いようだ。できればブロードバンド・ルータのメーカーに問い合わせて、想定している環境でVPNのプロトコルが本当にパススルーできるのか、事前に確認しておきたい。

今回設定するVPNサーバの構成
Active Directoryのドメイン・コントローラにはWindows 2000 Server、NATおよびVPNのサーバにはWindows Server 2003を利用した。本社、支社とも同じ構成としている。ブロードバンド・ルータを使う場合は、VPNのためのプロトコルをパススルーして、VPNサーバで発着信処理ができるようにしておくこと(なおブロードバンド・ルータでNAPTを有効していると、VPNのパケットをパススルーできないことが多い。特にL2TPでトラブルが発生したりすることが多い)。VPN接続は、常に支社側から本社側へ常時接続する形態で行うものとする。

 初回で掲載した両ドメインの構成を以下に再掲しておく。

東京本社側ドメイン
フォレスト 単一フォレスト
ドメイン・ツリー ルート・ドメイン
ドメイン名 example.co.jp
サイト 本社サイト
Active Directoryサーバ Windows 2000 Server SP3。DNSやDHCPサービスもインストールしておくこと
VPNサーバ Windows Server 2003。2枚のネットワーク・インターフェイスを装着しておき、それぞれLAN側とインターネット側に接続して固定的にIPアドレスを割り当てておくこと
LANネットワーク・アドレス 10.100.1.*/24。LAN上のクライアントにはDHCPでIPアドレスを割り当てること
インターネット接続 100Mbps光ファイバ(固定8 IP)。今回の例ではこのうち、210.XX.XX.XXをVPNサーバのグローバルIPアドレスとして割り当てる
神戸支社側ドメイン
フォレスト 単一フォレスト
ドメイン・ツリー ルート・ドメインのサブドメイン
ドメイン名 kobe.example.co.jp
サイト 神戸支社サイト
Active Directoryサーバ Windows 2000 Server SP3。DNSやDHCPサービスもインストールしておくこと
VPNサーバ Windows Server 2003。2枚のネットワーク・インターフェイスを装着しておき、それぞれLAN側とインターネット側に接続して固定的にIPアドレスを割り当てておくこと
LANネットワーク・アドレス 10.101.2.*/24。ほかの支社には、10.101.3.*/24や10.101.4.*/24、…などを割り当てること。LAN上のクライアントにはDHCPでIPアドレスを割り当てること
インターネット接続 8Mbps ADSL回線(固定1 IP)。今回の例では218.YY.YY.YYをVPNサーバのグローバルIPアドレスとして割り当てる
サイト間リンク
VPNプロトコル PPTP
今回構築するActive Directoryドメインの概要
今回は、2つのルート・ドメインとその子ドメイン間をPPTPインターネットVPN回線を使って仮想的に接続する。

 すでに述べたとおり、本社側も支社側も同じ構成であり、ネットワーク・アドレスだけが異なる。VPNを利用する場合、各クライアントのIPアドレスなどがそのままほかの本支社のネットワークへと流れることになる。そのため、それぞれのネットワーク・アドレスは重複しないように計画的に決めておかなければならない。ほかの支社では、10.101.3.*や10.101.4.*など、なるべく計画的に、あとで分かりやすくなるようにあらかじめ組織内全体のネットワーク・アドレス計画を策定しておいて欲しい。

 今回の例では、VPN接続は、常に支社側から本社側へ接続する形態で行うものとする。VPN接続をするためには、どちらかがサーバになり、もう一方がクライアントとなるように構成しなければならないが、現実的にはこのようにサーバ側が受け口となり、支社側がサーバに対して呼び出しを行うというのが一般的であろう。アカウントやVPNの接続情報などをサーバ側で集中管理できるからだ。また支社側からの呼び出しは、オンデマンドダイヤリングではなく、常時接続になるように設定しておく。つまりシステム起動時から常に接続を確立するように設定しておき、さらにエラーなどで通信が途切れた場合は、再試行するように設定しておく。これにより、ほぼ常時接続された環境が実現できる。なおこの方法だと、最初に本社側から支社側に向けて通信があった場合に、VPNの通信路が準備できていない場合があるのではという心配があるが、もともとインターネットそのものが使えなかったり、支社側の準備ができていなかったりする場合には、通信ができないので、このような一方的なVPN接続の確立方法でも問題はないだろう。

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。