|
PacketiX VPN 2.0 (パケティックス ブイピーエヌ にーてんぜろ) はソフトイーサによって開発され、2005年12月に発表されたVPNソフトウェアである。有償のソフトウェア製品版と、同等の機能を持つフリーウェア版の2種類のバージョンが存在する。開発中はSoftEther VPN 2.0として呼ばれていた。 VPNプロトコルの名称として、「PacketiX VPNプロトコル」と表現される場合もある。
概要PacketiX VPN 2.0はインターネットなどのTCP/IPネットワーク上にVPNを構築するためのソフトウェアである。仮想LANカードおよび仮想HUBと呼ばれる手法により、Ethernetを仮想化することで、レイヤ2 VPNを構築できる。また、レイヤ3スイッチを仮想化することにより、レイヤ3 VPNを構築できる。独立行政法人情報処理推進機構 (IPA) が主催した平成15年度未踏ソフトウェア創造事業未踏ユース部門のプロジェクトとして開発された成果であるSoftEther 1.0の後継バージョンである。 SoftEther 1.0は登大遊によって個人的に開発されたが、PacketiX VPN 2.0はソフトイーサによって開発され、ソフトウェア製品として出荷されている。 以下、PacketiX VPN 2.0の概要について述べる。 ソフトウェア構成PacketiX VPN 2.0は以下のようなソフトウェアによって構成されている。 標準的な付属ソフトウェア
拡張的なソフトウェア
Option PackPacketiX VPN 2.0 Option Packは、VPN Server / VPN Client / VPN Bridgeに対して新機能を追加するためのアップデートモジュールの名称である。[3] Option PackはVPN ServerのStandard EditionおよびEnterprise Editionのライセンス契約を保有しているユーザーに対して無償で提供される。現在のバージョンは、2006年8月に提供された。 以下、Option Packによって追加される機能について述べる。
動作環境PacketiX VPN 2.0は以下のようなオペレーティングシステムおよびCPUの組み合わせで動作する。
VPN通信プロトコルの仕様PacketiX VPN 2.0でのVPN通信に使用されているプロトコルは以下のような仕様となっている。
VPN通信が可能なパケットの種類PacketiX VPN 2.0でのVPN通信では、標準的なEthernetフレーム (MACフレーム、Ethernetパケット) であればどのようなものでも通信を行うことが可能である。 したがって、IPv4、IPv6、TCP、UDPなどの現在インターネットやLANなどで使用されている一般的なプロトコルのほか、NetBEUIやIPX/SPXなどのプロトコルもVPNを通すことができる。 製品形態PacketiX VPN 2.0には前述のようにいくつかのソフトウェアが含まれ、またソフトウェアによっては有償版と無償版が存在する。以下で整理する。 PacketiX VPN Server 2.0VPN Serverには有償の製品版と無償版がある。 製品版VPN Serverの製品版には以下のようなエディションが存在する。これらのエディションを使用するためには、ライセンスを購入する必要がある。 なお、公式サイトで60日間利用可能な体験版が提供されている。
無償版VPN Serverの無償版には以下のようなエディションが存在する。
PacketiX VPN Client 2.0およびPacketiX VPN Bridge 2.0VPN ClientおよびVPN Bridgeは無償のソフトウェアであり、動作させるためにライセンスの購入などが不要である。 ライセンスキーおよびプログラムファイルの提供形態VPN Serverを動作させるためには保有しているエディションのライセンスキーが必要である。有償版のライセンスキーは、製品を購入した際に添付されている。無償版のライセンスキーは、ソフトイーサから送付される。VPN Serverには前述のように多数のエディションがあるが、シングルバイナリによって提供されており、入力するライセンスキーの種類によって動作の内容が異なる。VPN ClientおよびVPN Bridgeにはライセンスキーの入力は不要である。 有償版、無償版にかかわらず、すべてのプログラムファイルがSoftEther.com のダウンロードサイトからダウンロード可能である。 32ビット版と64ビット版PacketiX VPN 2.0の各ソフトウェアには32ビット版と64ビット版のバイナリがある。64ビット版はWindows、Linux、Solaris、FreeBSDの各64ビット版OSに対応しており、CPUとしてはAMD64、Intel 64、SPARC上で動作する。 32ビット版と比較すると、64ビット版には以下のような特徴がある。 通信スループットの向上同一のハードウェア上であっても、64ビット版のVPN Serverを使用するだけで、32ビット版と比較しておおよそ17%程度のVPN通信スループット向上を行うことが可能である。 たとえば、10ギガビット・イーサネットで接続された6台のVPN Client間の通信を1台のAMD Opteron 2.0GHz Dual Core CPUを2つ持つVPN Serverによって処理させた場合、32ビット版であれば約2650Mbpsのスループットが出るところを、64ビット版を使用することにより、約3130Mbpsのスループットが出る。[4] 同時接続VPNセッション数の向上メモリ空間の増大により、32ビット版と比較して、64ビット版ではより多くの仮想HUBおよび同時接続VPNセッションを1台のVPN Serverに収納することができる。[5]
日本語版以外のバージョン2007年11月現在、日本語版以外に英語版がリリースされている。[6] 日本語版と英語版は、ユーザーインターフェイスの文字列リソースやオンラインマニュアルなどの言語が異なるのみであり、機能は同等である。異なる言語のVPNソフトウェア同士でVPN接続を行うこともできる。 動作原理PacketiX VPN 2.0のVPN機能の動作はIPsecやPPTPなどの従来のVPNと比較して異なる点がある。以下、これらについて述べる。 仮想HUB仮想HUBはPacketiX VPN 2.0における最も重要な概念の1つである。仮想HUBは既存の一般的なスイッチングHUBと同等の機能をソフトウェアで実現したものである。仮想HUBはMACアドレス学習機能や学習に基づくフレームの交換機能を持つ。従来のスイッチングHUBはハードウェアとしてこの処理を行っていたが、PacketiX VPN 2.0ではソフトウェアとして同様の処理を行う。 VPN ServerにはメモリやCPUが許す限りいくつでも仮想HUBを作成することができる。それぞれの仮想HUBはVPN経由で流れてきたEthernetフレームを処理する。これにより、仮想的なレイヤ2のEthernetセグメントを実現している。 1個のVPN Server内に複数台の仮想HUBを作成するとき、通常はそれらの仮想HUBは独立して動作し、お互いに干渉することがない。別々の仮想HUB間では通信は行われない。また、各仮想HUBの管理権限を別々の管理者に委譲することが可能である。この場合、特定の仮想HUBの管理者は、自分が委任されている仮想HUBのみ管理でき、それ以外の仮想HUBにはアクセスできない。 仮想LANカード物理的なLANカード (NIC)をソフトウェアによって仮想化することにより仮想LANカードが実現される。仮想LANカードはVPNプロトコルを用いて、物理的なTCP/IPネットワークを経由し、遠隔地にあるVPN Server内の仮想HUBにVPN接続することができる。 VPN Clientを用いると、仮想LANカードをクライアントコンピュータのOS内にいくつでも作成することが可能である。仮想LANカードはOSから物理的なLANカードと同様に認識されるため、原則としてEthernetでの通信に対応したほぼすべてのプロトコルやアプリケーションが、特に手を加えることなく利用可能である。 仮想HUBと仮想LANカードの接続1台の仮想HUBに複数台のコンピュータの仮想LANカードが接続すると、上記のような仕組みにより、それぞれのコンピュータ間は自由にEthernetフレームを送受信することができるようになる。これによりVPN接続が実現される。 仮想HUB間のカスケード接続仮想HUB間のカスケード接続を行うことにより、通常の物理的なスイッチングHUB間をクロスケーブルなどでカスケード接続した場合と同じ効果が得られる。すなわち、もともと分離されていた2個のEthernetセグメントを1つにすることができる。 仮想HUB間のカスケード接続は、同一のVPN Server内の仮想HUB同士だけでなく、物理的に別のVPN Server内の仮想HUB同士でも、VPNセッションを確立することによって可能である。これにより、遠隔地にある複数のEthernetセグメント間のレイヤ2でのブリッジ接続が実現される。 仮想レイヤ3スイッチ仮想レイヤ3スイッチ は物理的なレイヤ3スイッチのようにIPルーティングを行うハードウェアをソフトウェア的に仮想化したものである。仮想レイヤ3スイッチにより、別々のIPネットワーク間で、Ethernetのセグメントを分離したまま、ルーティングによりネットワーク同士を接続することが可能である。 VPN Server内には仮想HUBと同様に仮想レイヤ3スイッチをいくつでも作成することができる。これにより、複数の仮想HUB間でIPルーティングを行うことにより仮想HUB間通信を実現することができる。 これを応用すると、遠隔地にある複数のEthernetセグメント間のレイヤ3でのルーティングが実現される。 仮想ネットワークと物理ネットワークのブリッジ接続上記で述べたような仮想HUBや仮想レイヤ3スイッチはあくまでもソフトウェアによってエミュレーションされたネットワーク機器であり、そのままでは仮想的に流れるEthernetフレームは物理的なネットワーク上に出ることはない。 VPN ServerおよびVPN Bridgeでは仮想HUBと既存の物理的なEthernetのセグメントとを、物理的なLANカードを指定することによってブリッジ接続することができる。これをローカルブリッジと呼ぶ。 ローカルブリッジを用いることにより、複数の拠点で、仮想HUBと物理的な既存のLANとの間を接続し、さらに仮想HUB同士を前述したカスケード接続によってVPN接続することによって、インターネット経由で複数のEthernetセグメント間のレイヤ2でのブリッジ接続が実現される。 機能と特徴以下、PacketiX VPN 2.0に搭載されているVPN通信機能および特徴について述べる。 Ethernetの仮想化IPsecやPPTPなどの従来のレイヤ3をトンネリング対象としていたVPNプロトコルと異なり、PacketiX VPN 2.0ではレイヤ2のEthernetフレームをVPN通信におけるトンネリング対象とする。つまり、従来のレイヤ3型VPNではトンネル内をIPパケットが流れるが、PacketiX VPN 2.0ではEthernetフレームが流れることになる。 これにより、以下のようなメリットがある。
NAT、プロキシ、ファイアウォールの通過従来のVPNプロトコルはNAT、プロキシ、ファイアウォールを経由して通信を行うことができないものが多かった。これは通信に使用するプロトコルがインターネット上で標準的に用いられているTCPプロトコルの規格と異なり、GREなどの特別なプロトコルを用いていたためである。 PacketiX VPN 2.0は物理的な通信のためのプロトコルとして、標準的なTCP規格を採用している。これにより、すべてのVPN通信をTCP上で実現するため、ほとんどのNAT、プロキシ、ファイアウォールの通過することが可能である。 また、デフォルトでTCP443番というHTTPS通信で一般的に利用されるポートと同一のTCPポートを使用することが可能となっているため、基本的にWebサイトが閲覧できるようなネットワーク環境ではPacketiX VPN 2.0を用いてVPN通信を行うことが可能である。 高速なVPN通信の実現従来のVPNプロトコルのうち、セキュリティの確保のみに注力しているものについては、VPN処理がボトルネックとなり、実際にVPN通信を行った際のスループットが低くなることがある。 PacketiX VPN 2.0は各種の通信回線に合わせて最適化を行っているため、通常のPCサーバを用いて約3.1Gbps程度の高速なVPN通信を行うことができる。[7] 移植性の高さPacketiX VPN 2.0は様々なOSやCPU上で動作するように移植性の高いプログラミングによって開発されており、特定のオペレーティングシステムに依存しにくいようになっている。そのため、通常のエディションにおいて、前述のように多くの種類のOSやCPUに対応しているほか、Embedded Editionによってルータやファイアウォールなどのネットワークアプライアンスへの組み込みを行うことが可能となっている。 セキュリティ機能PacketiX VPN 2.0は以下のようなセキュリティ機能を搭載している。 ユーザー認証許可されていない第三者による不正なVPN接続を禁止するため、以下のようなユーザー認証が可能である。
暗号化と電子署名インターネットなどの盗聴者が存在する可能性のあるネットワークを経由してVPNを利用する際に、盗聴やデータの改ざんを防止するため、すべてのVPN通信パケットに対して、暗号化と電子署名を行うことが可能である。 SSLのバージョン3で暗号化セッションが確立され、内部ではHTTP over SSL (HTTPS)拡張プロトコルが用いられる。 サーバ証明書の検証VPN接続においては、中間者攻撃を防止するために、接続を行う側 (VPNクライアント) が接続を受け付ける側 (VPNサーバ) が本物であるかどうかを確認したほうが安全である。 従来のPPTPなどのプロトコルでは接続先のVPNサーバの正当性検証の機能が無いため、自分が接続しているVPNサーバが本物であるか偽者であるかをユーザーは見分けることができなかった。 PacketiX VPN 2.0では接続先のVPNサーバが提示するX.509証明書とSSLプロトコル内で行われる正当性検証手続きにより接続先のVPNサーバが本物であるかどうかの検証を自動的に行うことができ、検証に失敗した場合はVPN接続を中止することができる。 スマートカードの利用VPN Clientにおいて、認証方法として証明書認証 (PKI認証) を使用する場合は、セキュアなハードウェアであるスマートカードやセキュリティトークンを用いた認証が可能である。以下のようなスマートカードに対応している。
パケットフィルタリング機能VPN Serverの仮想HUBには、以下の2種類のパケットフィルタリング機能が搭載されている。 アクセスリストアクセスリストとは、一般的なファイアーウォール機器で実現されるような、IPパケットのヘッダ部をリアルタイムで検査し、あらかじめ設定したルールに基づいて通過/破棄を決定する仕組みである。 以下の項目を指定してルールを定義することができる。
セキュリティポリシーセキュリティポリシーとは、アクセスリストで実現されるような静的なパケットフィルタリングのみでは対応することができないような場合に、ダイナミックなパケットの流れを監視して通過/破棄を決定する仕組みである。 セキュリティポリシーを適用するため、仮想HUBは流れるすべての仮想Ethernetフレームについてリアルタイムで高レイヤまでパケットの内容を解釈する。解釈結果を元にして、そのパケットがセキュリティポリシーに適合した通信内容であるかどうかを判別する。セキュリティポリシーに違反したパケットが流れた場合は監査記録を保存することも可能である。 セキュリティポリシーとして構成することができる項目には以下のようなものがある。
モニタリング機能VPN Serverの管理者は、仮想HUBにモニタリングモードセッションという特別なセッションを作成することにより、その仮想HUB内を流れるすべてのパケットを傍受したり、物理的なLANカードから出力して既存のIDS製品に入力したりすることができる。 パケットログの保存仮想HUB内を流れるすべてのパケットをログに保存することが可能である。これにより、管理者は事後にトラブルの追跡や不正アクセスの発見などを行うことができる。 パケットログの対象となるパケットは仮想HUBの管理者が細かく設定することができる。この場合、パケットの内容すべてを保存するか、ヘッダ部分のみを保存するかを選択することができる。 パケットログを保存する処理は、ディスクアクセスを伴うため、仮想HUBにおけるパケットのスイッチング速度と比較して低速である。そのため、VPN Serverはパケットを一旦中間データ形式に変換してメモリ内のバッファに追加しておき、CPU時間が空いた場合またはメモリが不足してきた場合にそれをディスクに書き出すようなアルゴリズムを持つ。また、パケットログの取りこぼしを防ぐため、バッファの空き容量が少なくなると自動的に仮想HUBにおける通信速度を調節し、すべてのパケットログが確実にディスクに書き込まれるような仕組みになっている。 SecureNAT仮想HUBにはSecureNAT機能が搭載されており、仮想NATと仮想DHCPサーバの2つの機能が利用可能である。 SecureNAT機能はすべての機能がユーザーモードで動作し、システム管理者権限でなくとも、一般ユーザー権限で全機能が利用可能であるという特殊なモジュールである。通常カーネルモードで実行されるIPルーティングおよびNAT (IPマスカレード) の処理をすべてユーザーモードで行うことによって実現している。 SecureNAT機能を利用することで、一般的なブロードバンドルータと同等程度の機能を、仮想HUB内で利用することができる。利用用途としては以下のようなものがある。
クラスタリング1台のVPN Serverをインストールしたサーバコンピュータでは処理することができない程の大量のVPNセッションを処理したり、極めて多数の仮想HUBを作成したりするために、クラスタリング機能が提供されている。 クラスタリング機能により複数台のVPN Serverをまとめて動作させることができ、仮想HUBや仮想HUB内のユーザーデータベースやアクセスリストなどの設定が一元化される。また、ロードバランシングとフォールトトレランスが実現される。 クラスタリングにより多数のVPN Serverが動作している場合であっても、ユーザーや各仮想HUBの管理者から見ると、1つのVPN Serverのシステムとして認識される。したがって、ユーザーや各仮想HUBの管理者は、クラスタリング機能が動作していることに関して意識する必要がない。 構築できるネットワークの種類PacketiX VPN 2.0を用いることにより構築することができるネットワークをおおまかに分類すると、以下のようになる。
実験サービスソフトイーサは学術研究目的でPacketiX VPN 2.0を用いた以下のサービスを実験的に無償で提供している。
受賞PacketiX VPN 2.0は以下のような賞を受賞している。
関連書籍
関連項目外部リンク脚注
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.
Mercedes Car
This site monitored by SitePinger.net