(57)【特許請求の範囲】
【請求項１】
ローカルエリアネットワーク間の仮想プライベートネットワークを確立するための方法であって、各ローカルエリアネットワークは、パブリックネットワークへの少なくとも１つのアクセスゲートウェイと、ＶＰＮクライアントを有する１つのユニットと、を含み、前記方法は、ユニットの電源がオンにされるたびに実行される、
−前記ユニットが、少なくとも１つの接続メッセージを、前記パブリックネットワークに接続されているインフラストラクチャであって、少なくとも１つの中間サーバを有するインフラストラクチャに送信する送信ステップであって、各接続メッセージは、前記ローカルエリアネットワークのそれぞれのアクセスゲートウェイを通過する、送信ステップと、
−前記インフラストラクチャが、各接続メッセージを受信し、前記ユニットが配置されている前記ローカルエリアネットワークの各アクセスゲートウェイを特定するトポロジデータを判別するステップと、
を含み、
前記方法は、複数のユニットに関して実行される、
−前記インフラストラクチャの予め定められた中間サーバが、前記複数のユニットに関連付けられているＶＰＮサーバをインスタンス化するステップと、
−前記ＶＰＮサーバが、対応する前記トポロジデータから、前記ＶＰＮサーバと各ユニットの前記ＶＰＮクライアントとの間の暗号化トンネルを確立する確立ステップと、
−前記インフラストラクチャが、前記の確立された暗号化トンネルの間のデータルーティングルールを表すルーティングデータを作成して記憶するステップと、
をさらに含む、方法。
【請求項２】
前記トポロジデータは、少なくとも１つのパブリックＩＰアドレスを含み、各パブリックＩＰアドレスは、前記パブリックネットワークから、対応する前記ローカルエリアネットワークのアクセスゲートウェイを識別するものである、請求項１記載の方法。
【請求項３】
前記送信ステップは、周期的に実行される、請求項１又は２記載の方法。
【請求項４】
前記ユニットがローカルエリアネットワークに設置される前に前記ユニットにより記憶された第１のデジタル証明書を用いて、前記インフラストラクチャに対して前記ユニットを認証するステップ
を含む、請求項１乃至３いずれか一項記載の方法。
【請求項５】
前記ユニットと前記インフラストラクチャとの間の前記暗号化トンネルは、前記第１のデジタル証明書とは異なる第２のデジタル証明書を用いて確立され、前記インフラストラクチャに対して前記ユニットを認証した後に生成される、請求項４記載の方法。
【請求項６】
前記第２のデジタル証明書の生成は、前記インフラストラクチャの外部のエンティティにより実行される、請求項５記載の方法。
【請求項７】
前記第１のデジタル証明書及び前記第２のデジタル証明書とは異なる第３のデジタル証明書を用いて、前記外部のエンティティ（ＰＫＩ）に対して前記インフラストラクチャを認証するステップ
を含む、請求項６記載の方法。
【請求項８】
前記外部のエンティティに対して前記認証することは、前記中間サーバから分離されている、前記インフラストラクチャのコントローラにより開始される、請求項７記載の方法。
【請求項９】
中間サーバごとに異なる第３のデジタル証明書が使用される、請求項７又は８記載の方法。
【請求項１０】
前記確立ステップは、
−複数の暗号化サブトンネルを作成するサブステップであって、各暗号化サブトンネルは、ローカルエリアネットワークの特定のアクセスゲートウェイを通過するルートに対応する、サブステップと、
−前記暗号化サブトンネルを暗号化トンネルに集約するサブステップと、
を含む、請求項１乃至９いずれか一項記載の方法。
【請求項１１】
前記ＶＰＮサーバの前記インスタンス化を実行する前記中間サーバは、前記接続メッセージに含まれる、相互接続可能なユニットのグループ識別子に基づいて決定される、請求項１乃至１０いずれか一項記載の方法。
【請求項１２】
前記インフラストラクチャのコントローラは、前記中間サーバの障害を検出し、障害があるとして検出された中間サーバの再インスタンス化を制御する、請求項１乃至１１いずれか一項記載の方法。
【請求項１３】
複数のローカルエリアネットワーク間の仮想プライベートネットワークを確立するための相互接続インフラストラクチャであって、各ローカルエリアネットワークは、パブリックネットワークへの少なくとも１つのアクセスゲートウェイを含み、前記相互接続インフラストラクチャは、
−少なくとも１つの中間サーバであって、各中間サーバは、リモートローカルエリアネットワークに配置されている少なくとも１つのＶＰＮクライアントとの少なくとも１つの暗号化トンネルを確立するよう構成されている少なくとも１つのＶＰＮサーバをインスタンス化するインスタンス化手段を有する、少なくとも１つの中間サーバと、
−リモートローカルエリアネットワークにおける、パブリックネットワークへの少なくとも１つのアクセスゲートウェイを特定するトポロジデータを受信すると、少なくとも提供されている前記中間サーバに、ＶＰＮサーバのインスタンス化要求を送信するよう構成されているコントローラと、
−前記パブリックネットワーク、少なくとも提供されている前記中間サーバ、及び前記コントローラに接続されているルータであって、少なくとも提供されている前記中間サーバによりインスタンス化されている各ＶＰＮサーバと、リモートローカルエリアネットワークに配置されているＶＰＮクライアントと、の間でデータをルーティングするデータルーティング手段を有するルータと、
を有する、相互接続インフラストラクチャ。
【請求項１４】
少なくとも２つのローカルエリアネットワーク間の仮想プライベートネットワークを確立するための相互接続システムであって、前記相互接続システムは、請求項１３に記載の相互接続インフラストラクチャと、前記相互接続インフラストラクチャの前記インスタンス化手段によりインスタンス化されたＶＰＮサーバとの暗号化トンネルが確立されるＶＰＮクライアントを有する少なくとも２つの相互接続ユニットと、を有する、相互接続システム。
【請求項１５】
前記少なくとも２つの相互接続ユニットの各相互接続ユニットは、相互接続可能なユニットのグループ識別子を記憶する記憶モジュールを有し、前記相互接続インフラストラクチャの各中間サーバは、特定のグループ識別子に関連付けられる、請求項１４記載の相互接続システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のローカルエリアネットワーク間の仮想プライベートネットワークの分野に関する。
【背景技術】
【０００２】
複数のリモートサイト間のプライベートコンピュータネットワーク、すなわち、データの機密性が確保されるコンピュータネットワークを作成するためのソリューションが、従来技術において知られている。
【０００３】
プライベートネットワークを設置するための知られているソリューションは、ラベルスイッチングに基づくプロトコルであるＭＰＬＳ（マルチプロトコルラベルスイッチング）プロトコルである。
【０００４】
しかしながら、ＭＰＬＳネットワークの設置は、ローカルエリアネットワークを相互接続するために専用の物理ネットワークがセットアップされる必要があるため、複雑であり、コストがかかる。
【０００５】
ＭＰＬＳに代わるソリューションは、仮想プライベートネットワーク（ＶＰＮ）を確立することを含む。
【０００６】
ＶＰＮネットワークは、パブリック伝送ネットワーク（典型的にはインターネット）を介して、２つのローカルエリアネットワークを相互接続する。これら２つのローカルエリアネットワークの２つのマシン間で伝送されるデータは、「トンネリング」として知られているプロトコルに従ってカプセル化されて暗号化される。
【０００７】
このように、ＶＰＮネットワークは、従来のローカルエリアネットワークにおいて見つけられるのと同じレベルのデータセキュリティをもって通信するリモートマシンを含む。
【０００８】
図１は、２つのリモートローカルエリアネットワークＲａ及びＲｂの間の仮想プライベートネットワークの例を示している。各ローカルエリアネットワークＲａ、Ｒｂは、少なくとも１つの端末Ｕａ、Ｕｂと、同じパブリックネットワークＩへの１つのアクセスゲートウェイＰａ、Ｐｂと、を含む。
【０００９】
各ゲートウェイＰａ、Ｐｂは、通常、複数のポートと、ポートの開放を制御するファイアウォールと、を有し、パブリックネットワークから到来するデータは、ファイアウォールにより、対応するローカルエリアネットワークに入ることを許可される。各ゲートウェイは、例えば、一般に「ＡＤＳＬボックス」と呼ばれる多機能ＡＤＳＬボックスである。
【００１０】
各ローカルエリアネットワークＲａ、Ｒｂはまた、トンネリング上記原理に従ってパケットを暗号化／復号化するためのＶＰＮモジュールも含む。
【００１１】
２つのＶＰＮモジュールは、クライアント／サーバモデルに従って動作する。２つのＶＰＮモジュールのうちの一方のモジュールは、ＶＰＮサーバである他方のモジュールに認証要求を送信するＶＰＮクライアントである。ＶＰＮクライアントが、ＶＰＮサーバにより正しく識別されると、ＶＰＮサーバは、ＶＰＮクライアントとの暗号化トンネルを作成する（図１において、暗号化トンネルは、破線矢印により示されている）。
【００１２】
しかしながら、そのようなシステムにおいて、仮想ネットワークの確立は、互いと通信することが意図される複数のローカルエリアネットワークの事前設定を必要とする。
【００１３】
第１に、ＶＰＮサーバは、ＶＰＮクライアントのリストを認識するよう事前に設定されなければならない。また、識別要求は、しばしば、サーバ側ファイアウォールの特定の受信ポート（通常はポート１１９４）の開放を必要とする。したがって、ゲートウェイも設定されなければならない。
【００１４】
第２に、ＶＰＮリンクの確立は、クライアント側設定も必要とする。
【発明の概要】
【発明が解決しようとする課題】
【００１５】
本発明の目的は、各リモートサイトからの設定の必要なくセットアップされる、複数のリモートサイト間の仮想プライベートネットワークシステムを提案することである。
【課題を解決するための手段】
【００１６】
この目的のために、第１の態様に従うと、ローカルエリアネットワーク間の仮想プライベートネットワークを確立するための方法であって、各ローカルエリアネットワークは、パブリックネットワークへの少なくとも１つのアクセスゲートウェイと、ＶＰＮクライアントを有する１つのユニットと、を含む、方法が提案される。前記方法は、ユニットの電源がオンにされるたびに実行される以下のステップを含む：
−前記ユニットにより、少なくとも１つの接続メッセージを、前記パブリックネットワークに接続されているインフラストラクチャであって、少なくとも１つの中間サーバを有するインフラストラクチャに送信する送信ステップであって、各接続メッセージは、前記ローカルエリアネットワークのそれぞれのアクセスゲートウェイを通過する、送信ステップ、
−前記インフラストラクチャにより、各接続メッセージを受信し、前記ユニットが配置されている前記ローカルエリアネットワークの各アクセスゲートウェイを特定するトポロジデータを判別するステップ。
前記方法は、複数のユニットに関して実行される以下のステップをさらに含む：
−前記インフラストラクチャの予め定められた中間サーバにより、前記複数のユニットに関連付けられているＶＰＮサーバをインスタンス化するステップ、
−対応する前記トポロジデータから、前記ＶＰＮサーバと各ユニットの前記ＶＰＮクライアントとの間の暗号化トンネルを確立する確立ステップ、
−前記の確立された暗号化トンネルの間のデータルーティングルールを表すルーティングデータを作成して記憶するステップ。
【００１７】
第２の態様に従うと、複数のローカルエリアネットワーク間の仮想プライベートネットワークを確立するための相互接続インフラストラクチャであって、各ローカルエリアネットワークは、パブリックネットワークへの少なくとも１つのアクセスゲートウェイを含む、相互接続インフラストラクチャが提案される。前記相互接続インフラストラクチャは：
−少なくとも１つの中間サーバであって、各中間サーバは、リモートローカルエリアネットワークに配置されている少なくとも１つのＶＰＮクライアントとの少なくとも１つの暗号化トンネルを確立するよう構成されている少なくとも１つのＶＰＮサーバをインスタンス化するインスタンス化手段を有する、少なくとも１つの中間サーバ、
−リモートローカルエリアネットワークにおける、パブリックネットワークへの少なくとも１つのアクセスゲートウェイを特定するトポロジデータを受信すると、少なくとも提供されている前記中間サーバに、ＶＰＮサーバのインスタンス化要求を送信するよう構成されているコントローラ、
−前記パブリックネットワーク、少なくとも提供されている前記中間サーバ、及び前記コントローラに接続されているルータであって、少なくとも提供されている前記中間サーバによりインスタンス化されている各ＶＰＮサーバと、リモートローカルエリアネットワークに配置されているＶＰＮクライアントと、の間でデータをルーティングするデータルーティング手段を有するルータ、
を有する。
【００１８】
第３の態様に従うと、少なくとも１つの他のリモートローカルエリアネットワークとの仮想プライベートネットワークを確立するための、パブリックネットワークへの少なくとも１つのアクセスゲートウェイを含むローカルエリアネットワークにおいて接続されることが意図される相互接続ユニットであって、前記少なくとも１つの他のリモートローカルエリアネットワークも前記パブリックネットワークにアクセスする、相互接続ユニットが提案される。前記相互接続ユニットは：
−接続メッセージを生成するよう構成されているデータ処理モジュール、
−前記ローカルエリアネットワークの各アクセスゲートウェイを介して、前記第２の態様に従った相互接続インフラストラクチャに、前記接続メッセージを通信するよう構成されているネットワーク通信モジュール、
−リモートＶＰＮサーバとの少なくとも１つの暗号化トンネルを確立するためのＶＰＮクライアント、
を有する。
【００１９】
第４の態様に従うと、少なくとも２つのローカルエリアネットワーク間の仮想プライベートネットワークを確立するための相互接続システムも提案される。前記相互接続システムは、前記第２の態様に従った相互接続インフラストラクチャと、少なくとも２つの前記第３の態様に従った相互接続ユニットと、を有し、各相互接続ユニットは、相互接続可能なユニットのグループ識別子を記憶する記憶モジュールを有し、前記相互接続インフラストラクチャの各中間サーバは、特定のグループ識別子に関連付けられる。
【００２０】
本発明の第１の利点は、相互接続されるローカルエリアネットワーク間で交換されるデータの機密性を確保しながら、リモートサイト間の仮想プライベートネットワークを確立するための自動的ソリューションを提案することである。
【００２１】
本発明の第２の利点は、ローカルエリアネットワークに存在するアクセスゲートウェイに関する独立性である。アクセスゲートウェイの再配置又は再設定が、対応するユニットの追加の再設定の必要なく、透過的に行われる。
【００２２】
本発明の第３の利点は、高可用性を確保する、パブリックネットワークへの複数のアクセスの自動管理である。
【００２３】
本発明は、単独で又は技術的に可能な組合せのうちのいずれかの形をとる以下の特徴により、効果的に実現される：
−前記トポロジデータは、少なくとも１つのパブリックＩＰアドレスを含み、各パブリックＩＰアドレスは、前記パブリックネットワークから、対応する前記ローカルエリアネットワークのアクセスゲートウェイを識別するものである；
−前記送信ステップは、周期的に実行される；
−接続メッセージを送信するステップ及び受信するステップは、各ユニットに記憶されている証明書の提示に関するＨＴＴＰＳプロトコルに従って実行される；
−前記確立ステップは、複数の暗号化サブトンネルを作成するサブステップであって、各暗号化サブトンネルは、ローカルエリアネットワークの特定のアクセスゲートウェイを通過するルートに対応する、サブステップと、前記暗号化サブトンネルを暗号化トンネルに集約するサブステップと、を含む；
−前記ＶＰＮサーバの前記インスタンス化を実行する前記中間サーバは、前記接続メッセージに含まれる、相互接続可能なユニットのグループ識別子に基づいて決定される。
【図面の簡単な説明】
【００２４】
本発明の他の特徴、目的、及び利点が、以下の説明から明らかになるであろう。以下の説明は、例示に過ぎず、限定的なものではなく、添付の図面を参照して検討される必要がある。全ての図面において、類似要素は同一の参照符号を有する。
【図１】すでに説明した、仮想プライベートネットワークを確立するためのシステムを概略的に示す図。
【図２】本発明の一実施形態に従った、複数のローカルエリアネットワーク間の相互接続システムを概略的に示す図。
【図３】本発明の一実施形態に従ったユニットを概略的に示す図。
【図４】本発明の一実施形態に従った相互接続インフラストラクチャを概略的に示す図。
【図５】本発明の一実施形態に従った、仮想プライベートネットワークを確立するための方法のステップを示す図。
【図６】図５にも示されているステップのサブステップを示す図。
【発明を実施するための形態】
【００２５】
図２〜図４を参照すると、第１のリモートローカルエリアネットワークＲａ及び第２のリモートローカルエリアネットワークＲｂが、仮想プライベートネットワーク型の接続を介して相互接続されることになる。
【００２６】
各ローカルエリアネットワークは、インターネットへの少なくとも１つのアクセスゲートウェイＰａ、Ｐｂと、少なくとも１つのアクセスゲートウェイに接続されている少なくとも１つの端末Ｕａ、Ｕｂと、を含む。
【００２７】
各アクセスゲートウェイＰａ、Ｐｂ１、Ｐｂ２は、対応するローカルエリアネットワークに存在する各端末から認識可能なローカルＩＰアドレスと、インターネットネットワークから認識可能なパブリックＩＰアドレスと、を有する。
【００２８】
図２に示される例において、第１のローカルエリアネットワークＲａは、パブリックネットワークへの第１のアクセスゲートウェイＰａを含み、第２のローカルエリアネットワークＲｂは、パブリックネットワークへの第２のアクセスゲートウェイのペアＰｂ１、Ｐｂ２を含む。
【００２９】
相互接続ユニット１ａ、１ｂが、各ローカルエリアネットワークに配置されている。
【００３０】
各ユニット１ａ、１ｂは、当該ユニットが配置されているローカルエリアネットワークのアクセスゲートウェイのうちの少なくとも１つと通信するよう構成されているネットワーク通信手段１２を有する。
【００３１】
各ユニット１ａ、１ｂはまた、フラッシュメモリやＥＥＰＲＯＭメモリ等の記憶手段１４と、例えばプロセッサといったデータ処理モジュール１０と、を有する。各ユニットは、さらに、少なくとも１つのＶＰＮクライアント１６を実行するよう構成されている。
【００３２】
ローカルエリアネットワークＲａ、Ｒｂから分離されている相互接続インフラストラクチャ２も、インターネットに接続されている。
【００３３】
インフラストラクチャ２は、少なくとも１つの中間サーバ２０を含むローカルエリアネットワークを形成する。各中間サーバ２０は、複数のリモートＶＰＮクライアントとの暗号化トンネルを確立するよう構成されている少なくとも１つのＶＰＮサーバをインスタンス化するインスタンス化手段を有する。
【００３４】
図４に示される実施形態において、インフラストラクチャ２は、ルータ２５、コントローラ２６、バーチャライザ２４、及びデータベース２８を有する。
【００３５】
ルータ
ルータ２５は、インフラストラクチャ２のための、インターネットへのアクセスゲートウェイ機能を確保する。ルータ２５は、インターネットから認識可能な１つのパブリックＩＰアドレスを有する。
【００３６】
ルータ２５は、例えば、アドレス変換（ＮＡＴ）及び／又はソースルーティングにより、インターネットから受信されたデータの、インフラストラクチャ２のローカルエリアネットワークにおける特定のＩＰアドレスを有する各中間サーバ２０へのルーティングを確保する。ルータ２５はまた、ユニットから発生された要求の、コントローラ２６へのルーティングを確保する。
【００３７】
ルータ２５はまた、インフラストラクチャ２へのアクセスポートの開放を制御するファイアウォールを有する。
【００３８】
バーチャライザ
バーチャライザ２４は、少なくとも１つのオペレーティングシステムを実行するよう構成されている仮想マシン（又はハイパーバイザ）を有する。各中間サーバ２０は、バーチャライザ２４により実行されるオペレーティングシステムであり、各オペレーティングシステムは、他のオペレーティングシステムから分離される。
【００３９】
バーチャライザ２４は、中間サーバを動的にインスタンス化し、中間サーバの動作の状態をモニタリングし、且つ／又は、それらをキャンセルするよう構成されている。
【００４０】
インスタンス化された各中間サーバ２０（「セントラル」とも呼ばれる）は、インフラストラクチャ２における１つのプライベートＩＰアドレスを用いて識別される。各サーバは、複数の論理ポートを有し、複数の論理ポートを介して、ルータ２５から発生されたデータを受信することができる。例えば、図４は、本明細書において以下で説明する方法に従ってユニット１ａとの間に確立された暗号化トンネル２４ａを示している。
【００４１】
例えば、バーチャライザ２４は、ＦｒｅｅＢＳＤ（登録商標）ホストオペレーティングシステムを有することができ、仮想マシンは、ＫＶＭ（登録商標）又はＱＥＭＵ（登録商標）のタイプとすることができる。変形形態として、仮想マシンは、ＦｒｅｅＢＳＤ（登録商標）オペレーティングシステムにおいて複数の中間サーバを互いから分離するためのＢＳＤ  Ｊａｉｌ（登録商標）のセットである。他のタイプの分離も有効である。例えば、Ｊａｉｌ又はｏｐｅｎＶＺのタイプの軽量仮想化を使用することができる。
【００４２】
各中間サーバ２０は、ＮａｎｏＢＳＤ（登録商標）のタイプのスレーブオペレーティングシステムとすることができ、インスタンス化される各ＶＰＮサーバは、対応するスレーブＮａｎｏＢＳＤ（登録商標）オペレーティングシステムのバックグラウンドで実行されるデーモンＯｐｅｎＶＰＮ（登録商標）とすることができる。
【００４３】
コントローラ
コントローラ２６は、ルータ２５、中間サーバ、及びデータベース２８に接続されている。コントローラ２６は、インフラストラクチャ２のローカルエリアネットワークにおけるＩＰアドレスを有する。
【００４４】
インフラストラクチャ２が、例えば「ｍｙｄｏｍａｉｎｎａｍｅ．ｃｏｍ」といった第２レベルドメイン名を有する場合、コントローラ２６は、例えば「ｃｏｎｔｒｏｌｌｅｒ．ｍｙｄｏｍａｉｎｎａｍｅ．ｃｏｍ」といったサブドメイン名を有することもできる。
【００４５】
コントローラ２６はまた、中間サーバの動作をモニタリングして、障害がある中間サーバ２０を検出するよう構成されている。
【００４６】
コントローラ２６は、ルータ２５を介して、電源がオンにされている各相互接続ユニットと通信する。各ユニット１ａ、１ｂとコントローラ２６との間の通信は、好ましくは、各ユニットに以前に記憶された証明書の提示に関するＨＴＴＰＳプロトコルにより確保される。
【００４７】
コントローラ２６はまた、イベントメッセージを生成して、データベース２８内のログにこのようなメッセージを登録するよう構成されている。
【００４８】
仮想プライベートネットワークの確立
図５を参照すると、仮想プライベートネットワークの確立は、第１のユニット（例えば、第１のローカルエリアネットワークＲａのユニット１ａ）に関して実行される以下のステップを含む。
【００４９】
ステップＳＮＤＴＯＰにおいて、ユニット１ａは、少なくとも１つの接続メッセージを、インフラストラクチャ２のコントローラ２６に送信する。各接続メッセージは、ユニット１ａが配置されているネットワークのそれぞれのゲートウェイを通過する（ここでは、ローカルエリアネットワークＲａは、１つのゲートウェイＰａのみを含むので、１つのメッセージは、ユニット１ａに送信される）。
【００５０】
このメッセージは、各ゲートウェイと、可能であれば、開放ポートを発見するための、様々なポートのリストにあるポートと、を介して、送信される。このメカニズムは、デフォルト設定のポート（ポート１１９４）以外のポートを発見して使用することができる。
【００５１】
宛先コントローラ２６のアドレスは、判別されており、各ユニット１ａ、１ｂから既知である。このアドレスは、ローカルエリアネットワークにおけるユニットの初期電源オンの前に、記憶手段１４に記憶され得る。このアドレスは、コントローラ２６のＩＰアドレスとすることができる、又は、好ましくは、コントローラ２６のドメイン名とすることができる。コントローラ２６のドメイン名は、コントローラ２６のＩＰアドレスのいかなる変化も透過的にする。
【００５２】
受信ステップＲＣＶＴＯＰにおいて、コントローラ２６は、少なくとも１つの接続メッセージを受信し、結果として、ユニット１ａが配置されているローカルエリアネットワークＲａのトポロジを判別する。トポロジは、特に、どのアクセスゲートウェイが、ユニット１ａが配置されているローカルエリアネットワークＲａの、インターネットへのアクセスゲートウェイであるかを特定するものである。トポロジは、特に、それぞれの接続メッセージが通過した各ゲートウェイ（ここではゲートウェイＰａ）についての、パブリックＩＰアドレスとローカルエリアネットワークＲａにおけるプライベートＩＰアドレスとを含む。
【００５３】
これらと同じステップが、ローカルエリアネットワークＲｂにおいて電源がオンにされている相互接続ユニット１ｂに関しても実行される。
【００５４】
したがって、パブリックネットワークＩからの、各ローカルエリアネットワークにおける入接続を行うことなく、各ローカルエリアネットワークのトポロジが判別される。
【００５５】
ステップＩＮＩＴＶＰＮにおいて、中間サーバ２０は、ＶＰＮサーバ２２をインスタンス化する。このステップＩＮＩＴＶＰＮは、第１のネットワーク（例えばＲａ）のトポロジデータの判別後に実行されてもよいし、複数のネットワーク（Ｒａ及びＲｂ）のトポロジデータの判別後に実行されてもよい。
【００５６】
より正確には、コントローラ２６は、使用される中間サーバ２０を決定し、その中間サーバ２０にインスタンス化要求を送信する。コントローラ２６により選択された中間サーバ２０は、ＶＰＮサーバ２２のインスタンスを起動し、起動通知をコントローラ２６に返送する。次いで、コントローラ２６は、ステップＳＮＤＡＣＫにおいて、接続メッセージを送信したユニットに、ＶＰＮサーバ２２が使用される準備ができていることを知らせるための通知を送信することができる。
【００５７】
ステップＲＣＶＡＣＫにおいて、ユニットは、起動通知を受信する。
【００５８】
次いで、ステップＴＵＮＮにおいて、暗号化トンネル２４ａが、インスタンス化されたＶＰＮサーバ２２とユニット１ａとの間に確立される。このステップは、従来のように実行される。暗号化トンネル２４ａは、次のステップにより、従来のように確立することができる：ユニット１ａのＶＰＮクライアント１６による、インスタンス化されたＶＰＮサーバ２２への要求の送信；ＶＰＮサーバ２２によるトンネル２４ａの作成；及び、ＶＰＮサーバ２２による、ＶＰＮクライアント１６への通知の返送。このステップＴＵＮＮが終了すると、ユニット１ａは、ＶＰＮサーバ２２によりユニット１ａに付与される仮想ＩＰアドレスを有するようになる。
【００５９】
ステップＴＵＮＮは、ＶＰＮサーバ２２とユニット１ｂとの間の暗号化トンネル２４ｂを確立するためにも実行される。
【００６０】
次いで、ステップＲＯＵＴにおいて、第１の暗号化トンネル２４ａ、２４ｂと第２の暗号化トンネル２４ｂ、２４ａとの間のルーティングルールを表すルーティングデータが、作成され、データベース２８に記憶される。
【００６１】
次いで、仮想プライベートネットワークが、ローカルエリアネットワークＲａとローカルエリアネットワークＲｂとの間に確立される。
【００６２】
作成／記憶ステップＲＯＵＴは、インフラストラクチャ２に登録された新たなユニットの各々に関して、それぞれのローカルエリアネットワークにおいて新たなユニットの各々の電源がオンにされた後に実行される。Ｎ個のユニットの電源がすでにオンにされており、それぞれのＮ個の暗号化トンネルが作成されている場合、ステップＲＯＵＴは、作成された最後の暗号化トンネルと以前に作成された暗号化トンネル（群）との間の新たなルーティングルールを作成して記憶する。
【００６３】
ユニットにより実行される上述したステップを実行するためのコード命令を含むプログラムが、記憶手段１６に記憶され、このプログラム製品が、データ処理モジュールにより実行される。
【００６４】
このプログラムは、典型的には、各ユニットの電源がオンにされるときに実行されるスクリプトとすることができる。
【００６５】
接続メッセージの送信ステップＳＮＤＴＯＰは、例えば、周期的に、各ユニットの電源がオンにされた後、等、好ましくは、経時的に繰り返される。これは、インフラストラクチャがローカルエリアネットワークにおける入接続を行うことなく、インフラストラクチャに、各ローカルエリアネットワークにおけるトポロジの変化を検出させる。
【００６６】
トポロジの変化は、例えば、ローカルエリアネットワークにおける動作モード中のゲートウェイの数の変化（新たなゲートウェイの電源オン又は既存のゲートウェイの電源オフ）や、ゲートウェイに関連付けられているパラメータの変化（例えば、ゲートウェイのパブリックＩＰアドレスの変化）を含み得る。
【００６７】
相互接続されたユニット間におけるデータのルーティング
第１のローカルエリアネットワークＲａの第１の端末Ｕａにより第２のローカルエリアネットワークＲｂの第２の端末Ｕｂに送信される有用なデータのパケットは、まず、第１のユニット１ａの第１のＶＰＮクライアント１６により暗号化され、次いで、対応する暗号化トンネル２４ａを介して第１のＶＰＮサーバ２２に送信される。このパケットは、第１のＶＰＮサーバ２２により復号化され、第２のＶＰＮサーバ２２に送信される。次いで、このパケットは、第２のＶＰＮサーバ２２により再度暗号化され、ステップＲＯＵＴ中に確立されたルーティングルールが調べられた後、暗号化トンネル２４ｂを介して第２のユニット１ｂの第２のＶＰＮクライアント１６に送信される。第２のユニット１ｂの第２のＶＰＮクライアント１６は、宛先端末Ｕｂに送信する前に、このパケットを復号化する。
【００６８】
暗号化トンネルの確立に関する詳細
一実施形態において、暗号化トンネルは、複数のデジタル証明書を用いて確立される。
【００６９】
デジタル証明書には、ネットワークにおける２つのエンティティ間の通信のスコープが記述される。これは、第１のエンティティによる別のエンティティへの管理データに「署名する」。このようにして、この別のエンティティは、ネットワークから別のエンティティが受信したデータが、信頼できるエンティティからのものであることを認識する。
【００７０】
第１のデジタル証明書が、各ユニット１ａ、１ｂが、対応するローカルエリアネットワークＲａ、Ｒｂに設置される前であって、工場における事前設定ステップ中に、各ユニット１ａ、１ｂの記憶手段１４に記憶される。
【００７１】
この第１のデジタル証明書は、インフラストラクチャに対して各ユニット１ａ、１ｂを認証するために使用される。これは、ユニット１ａ、１ｂと中間サーバとの間の前述した管理データ（トポロジデータ等）の伝送をセキュアにする。その後、暗号化トンネルが作成される。暗号化トンネルは、２つのリモートローカルエリアネットワークＲａ、Ｒｂの２つの端末の間で有用なデータを伝送することが意図されている。
【００７２】
１ａ等の相互接続ユニットによりその第１のデジタル証明書を用いて署名されたメッセージを受信すると、コントローラは、ユニット１ａがシステムに知られているかどうかを検証する。
【００７３】
ユニット１ａがシステムに知られている場合、コントローラは、第１のデジタル証明書とは異なる第２のデジタル証明書（第２のレベルのセキュリティ）の生成を制御する。
【００７４】
次いで、コントローラは、この生成された第２のデジタル証明書を、ユニット１ａに送信する。
【００７５】
暗号化トンネル２４ａが、ユニット１ａの要求に応じて、コントローラからユニット１ａが受信した第２のデジタル証明書を用いて、従来のように作成される。
【００７６】
これらと同じステップが、中間サーバとユニット１ｂとの間の暗号化トンネル２４ｂを作成するためにも実行される。
【００７７】
第１のデジタル証明書は、システムにおける異なるユニットを識別するために、各ユニット１ａ、１ｂに固有である。
【００７８】
同じ第１のデジタル証明書を使用する２つのマシン（ユニット）が、コントローラにより検出された場合、重複しているこの第１のデジタル証明書を無効にすることができる。
【００７９】
一方、生成された第２のデジタル証明書は、同じグループに属するユニット１ａ、１ｂを相互接続するために作成される全ての暗号化トンネル２４ａ、２４ｂについて同じであることが提供され得る。
【００８０】
第２のデジタル証明書は、コントローラ自身により生成することができる。
【００８１】
しかしながら、より分散化されたアーキテクチャにおいては、第２のデジタル証明書は、インフラストラクチャ２の外部のサードパーティエンティティ（ＰＫＩ）（すなわち、パブリックネットワークＩを通過する、インフラストラクチャ２によりアクセス可能なエンティティ）により生成される。
【００８２】
この第２のデジタル証明書の生成を外部のエンティティに委ねることは、ＶＰＮのセキュリティを向上させる。なぜならば、この第２のデジタル証明書は、インフラストラクチャ２に記憶されることがないからである（インフラストラクチャ２は、サードパーティエンティティとユニット１ａとの間のリレーとして動作するに過ぎない）。
【００８３】
この場合、コントローラは、コントローラにより以前に記憶された第３のデジタル証明書（「ルート」証明書）を用いて、このサードパーティエンティティに対して認証される。
【００８４】
この場合におけるこの第３のデジタル証明書は、コントローラとサードパーティエンティティとの間の通信をセキュアにし、結果として、システムに対するさらに別のレベルのセキュリティに寄与する。
【００８５】
第３のデジタル証明書は、インスタンス化された中間サーバにより提供され得る。この場合、サービスに提供される前に、「ルート」証明書の予め定められたリストが、コントローラに記憶される。新たな中間サーバがインスタンス化されるたびに、新たな「ルート」証明書が、コントローラにより、その新たな中間サーバに関連付けられる。
【００８６】
複数の「ルート」証明書を提供することにより、セキュリティレベルに応じて、相互接続可能なユニットの異なるグループが分離される。
【００８７】
暗号化トンネルの集約
図６を参照すると、複数のアクセスゲートウェイを含むローカルエリアネットワークとの暗号化トンネルを確立するためのステップＴＵＮＮは、各暗号化サブトンネルがローカルエリアネットワークの特定のアクセスゲートウェイを通過するルートに対応する複数の暗号化サブトンネルの作成ＳＴＵＮというサブステップと、暗号化サブトンネルの暗号化トンネルへの集約ＡＧＲというサブステップと、を含み得る。
【００８８】
各暗号化サブトンネルルートは、インフラストラクチャ２のルータ２５の特定のポートに関連付けられ得る。
【００８９】
パケットスイッチングを実装する実施形態において、異なる暗号化サブトンネルは、異なるパケットを並列に伝送するよう要求される。この技術は、ローカルエリアネットワークの最大帯域幅を増加させる。
【００９０】
図２に示される第２のローカルエリアネットワークＲｂは、第２の相互接続ユニット１ｂに接続されている、インターネットへの２つのアクセスゲートウェイＰｂ１、Ｐｂ２を含む。したがって、このボックスにより判別されるトポロジは、これら２つのアクセスゲートウェイのそれぞれのパブリックＩＰアドレスを含む。２つの暗号化サブトンネル２４１ｂ、２４２ｂが、ステップＴＵＮＮ中に確立され、その後に、ローカルエリアネットワークＲｂとＶＰＮサーバ２２との間の共通トンネル２４ｂを作成する集約ステップＡＧＲが続く。
【００９１】
同じグループに属するユニットの相互接続
一実施形態において、各相互接続ユニットは、相互接続されるボックスの一部を形成する。例えば、複数のユニットのグループは、同じ企業の複数のサイトのセットに対応することができ、各ユニットは、その企業のそれぞれのサイトのローカルエリアネットワークに配置される。
【００９２】
次いで、予め定められたグループ識別子が、各ユニットの記憶手段に記憶される。また、各中間サーバ２０には、特定のグループ識別子が付与される。グループ識別子と中間サーバとを関連付ける関連付けテーブルが、データベース２８に記憶される。
【００９３】
次いで、各ユニットのデータ処理ユニット１０は、当該ユニットにより記憶されたグループ識別子を読み出し、ステップＳＮＤＴＯＰ中に送信される各接続メッセージにそのグループ識別子を挿入する。また、ステップＴＧＲＰにおいて、コントローラは、受信されたグループ識別子に基づいて、使用される中間サーバ２０を決定する。これを行うために、コントローラは、これと同じグループ識別子に関連付けられている中間サーバ２０のインスタンスを探すために、関連付けテーブル内を検索する。
【００９４】
中間サーバ２０が、関連付けテーブル内で見つけられなかった場合、コントローラ２６は、新たな中間サーバ２０のインスタンス化要求を、バーチャライザ２４に送信し、ステップＩＮＩＴＳＲＶにおいて、バーチャライザ２４は、新たな中間サーバ２０をインスタンス化し、通知が、コントローラ２６に返送される。
【００９５】
インスタンス化が成功した場合、作成されたサーバインスタンスを、ボックスから受信されたグループ識別子に関連付けている新たなエントリが、データベース２８に記憶される。
【００９６】
次いで、コントローラ２６は、ボックスから受信されたトポロジを、中間サーバ２０に送信する。
【００９７】
バーチャライザ２４の起動時には、中間サーバ２０はインスタンス化されていない。新たなグループに属する各ボックスの電源がオンにされた後、新たな中間サーバ２０がインスタンス化される。
【００９８】
一実施形態において、各ユニットはまた、１つのサイト識別子を記憶することができる。このサイト識別子は、予め定められたものとすることができる。すなわち、このサイト識別子は、ローカルエリアネットワークにおいて各ユニットの電源がオンにされる前に、各ユニットの記憶手段１４に記憶されている。
【００９９】
サイト識別子も、ステップＳＮＤＴＯＰにおいてユニットにより相互接続インフラストラクチャに送信されるトポロジに挿入される。
【０１００】
このようなサイト識別子は、ローカルエリアネットワークＲａ、Ｒｂのトポロジが変更されたとしても（例えば、アクセスゲートウェイのパブリックＩＰアドレスが変わったとしても）、各ユニット１ａ、１ｂを確実に識別させる。
【０１０１】
受信された各トポロジは、インフラストラクチャ２のデータベース２８に記憶され得る。例えば、ボックスから受信された最終トポロジ値のみが記憶される。
【０１０２】
データベース２８内には、トポロジが、階層的に（例えば、ＪＳＯＮ（JavaScript（登録商標）  Object  Notation）フォーマットで）記憶され得る：「グループ」オブジェクトは、グループ識別子に関連付けられ、複数の「サイト」オブジェクトを含む。各「サイト」オブジェクトは、サイト識別子に関連付けられ、対応するローカルエリアネットワークのトポロジを表すデータを含む。
【０１０３】
証明書を用いたユニットの認証
デジタル証明書は、好ましくは、サービスに提供される前に、各ユニットの記憶手段１４に記憶される。
【０１０４】
各証明書を使用して、まず、コントローラ２６に対してユニットを認証することができる。ユニットとコントローラ２６との間の全ての通信が、ステップＳＮＤＴＯＰ中にトポロジを伴って又はトポロジを伴わずにコントローラ２６に送信された対応する証明書の提示に関するＨＴＴＰＳプロトコルにより、確保され得る。
【０１０５】
各証明書は、有限の有効期間を有することができ、コントローラ２６は、トポロジの受信ステップＲＣＶＴＯＰ中に有効日を検証するよう構成され得る。
【０１０６】
証明書が古いものである場合、コントローラ２６は、その証明書を送信したユニットに、新たな証明書を送信することができる。
【０１０７】
また、各証明書を使用して、ユニットのＶＰＮクライアントと中間サーバ２０によりインスタンス化されたＶＰＮサーバ２２との間の暗号化トンネル２４ａ、２４ｂの作成のスコープ内で、中間サーバ２０に対してこのユニットを認証することができる。
【０１０８】
コントローラによる中間サーバのモニタリング
コントローラ２６は、バーチャライザ２４及びインスタンス化された各中間サーバ２０の適切な動作をモニタリングすることができる。したがって、モニタリングステップは、例えば、周期的に、コントローラ２６により経時的に繰り返される。このモニタリングステップは、インスタンス化された各中間サーバ２０のＴＣＰアクティベーションポートが開放していることの検証を含み得る。
【０１０９】
中間サーバ２０が、予め定められた時間内に応答しなかった場合、その中間サーバ２０は、障害があるとみなされる。コントローラ２６は、障害があるとみなされた中間サーバ２０の再起動をトリガする再起動要求を、バーチャライザ２４に送信する。
【０１１０】
再起動された中間サーバ２０上で遮断された暗号化トンネルのセットを再作成するために、ステップＳＮＤＴＯＰが、例えば、周期的に、各ユニットにより繰り返し実行され得る。コントローラ２６は、再起動された中間サーバ２０により管理されていたグループに属するユニットに関連付けられていた全てのトポロジを判別することができる。
【０１１１】
各中間サーバ２０は、バーチャライザ２４において読み取り専用モードで実行され得る。すなわち、各中間サーバ２０は、バーチャライザ２４自体においては、データの書き込みをしないが、それでも、書き込みのためにデータベース２８にアクセスすることができる。
【０１１２】
作成された仮想プライベートネットワークの管理
インフラストラクチャ２は、管理インタフェース（図示せず）をさらに有することができる。管理インタフェースは、インフラストラクチャ２の外部のサードパーティ端末からアクセス可能なＨＴＴＰサーバ及びウェブサイトを有することができる。
【０１１３】
管理インタフェースは、識別子とパスワードとの典型的なペアを用いてアクセスすることができる。
【０１１４】
管理インタフェースはまた、グループ又はサブグループごとに、ルータ２５において設定されているファイアウォールルールを変更する。
【０１１５】
各ユニットはまた、ユーザインタフェースを有することができる。ユーザインタフェースは、一般的に、ユニットの記憶手段に記憶されているウェブページへのアクセスを提供する、このユニットのＨＴＴＰサーバを介して、このユニットのスクリーン上に、且つ／又はサードパーティ端末上に、表示され得る。
【０１１６】
ユーザインタフェースは、ユニットの現在の状態を通知する定められた情報、特に：
−例えばアクセスゲートウェイのリストの形で提示される、検出されたトポロジ；
−作成された暗号化トンネルに関連する情報；
−暗号化サブトンネルの集約情報；
を含み得る。
【０１１７】
ユーザインタフェースはまた、ユニット上で次の動作を実行するためのボタンを含み得る：ユニットの再起動；トポロジ検出ステップＤＴＯＰの実行；等。
【０１１８】
他の変形形態
コントローラ２６、バーチャライザ２４、及びルータ２５は、共通の物理サーバ内に統合されてもよいし、インフラストラクチャ２における別個の物理サーバを構成してもよい。
【０１１９】
各中間サーバ２０は、バーチャライザ２４内に組み込まれてもよいし、インフラストラクチャ２における特定の物理サーバを構成してもよい。
【０１２０】
データベース２８は、別個のデータサーバに記憶されてもよいし、コントローラ２６等の、インフラストラクチャ２の要素のうちの１つに記憶されてもよい。
【０１２１】
図２に示される実施形態において、各ユニットは、ローカルエリアネットワークに接続されることが意図されている独立した物理的ボックスである。
【０１２２】
一変形形態として、各ユニットは、ＶＰＮクライアントを含むプログラムがインストールされる、ローカルエリアネットワークの端末により形成される。このプログラムは、前述したもの等の、ユニット側で実行されるステップを実行するよう構成される。この変形形態において、ユニットを構成することは、ユニットとして使用される端末の記憶手段に、説明した確立方法のステップを実行するプログラムをインストールすることを含む。
【０１２３】
インフラストラクチャ２は、相互接続されるローカルエリアネットワークにさらなるサービスを提供するために使用されてもよい。したがって、各中間サーバ２０は、ＳＭＳゲートウェイ、ＤＨＣＰサーバ、ＲＡＤＩＵＳ（リモート認証ダイヤルインユーザサービス）サーバ等をホストしてもよい。
【０１２４】
前述したシステムは、多くの利点を提供する。そのような利点は、以下のものを含む：
−アーキテクチャ全体の高レベルのセキュリティ、
−工場において事前設定されたボックスの提供（「プラグアンドプレイ」／産業用デプロイメント）、
−トポロジの自動認識及びマルチアクセスｘＤＳＬインターネットの自動管理（クライアント側設定を必要としない高可用性及び負荷バランシング）、
−配置におけるゲートウェイからの独立性（ボックスを透過的に再配置することができる）、
−各ローカルエリアネットワークのパブリックＩＰを可変にすることができる、
−同じグループのマシン間におけるＶＰＮ冗長性の自動実装、
−セキュアなスーパービジョン及び管理ネットワークの自動実装、
−サイトの接続グループの強固性及び独立性、
−インフラストラクチャを介する多数のサービスへのサクセス：ログサーバ、ＵＲＬフィルタリング、ＳＭＳゲートウェイ、ＲＡＤＩＵＳサーバ、ストレージサーバ．．．、
−障害が進んだ場合におけるユニットの交換（新たなユニットは、自身のインストール中に古いユニットの設置をダウンロードする）、
−アーキテクチャの柔軟性及び弾力性：インフラストラクチャは、サイトの複数のグループをそれぞれ独立して管理することができる一方で、インフラストラクチャは、相互接続されるローカルエリアネットワークのうちの１つのローカルエリアネットワークのＤＭＺ（非武装地帯）に設置することができる。
【図１】
0006543629.tif 000002
【図２】
0006543629.tif 000003
【図３】
0006543629.tif 000004
【図４】
0006543629.tif 000005
【図５】
0006543629.tif 000006
【図６】
0006543629.tif 000007