(57)【要約】      （修正有）【課題】ネットワークを介して、ベアコンピュータへオペレーティングシステムを配信する際に、外部の悪意のある侵入を受けにくいようにする。【解決手段】配信前にネットワークスイッチ１３０によって、信用できないネットワーク１４０からベアコンピュータ１１４，１１６，１１８を隔離し、隔離されている間に、ネットワーク１２０、１２２を介して配信サーバ１０２、または更新サーバ１０４からオペレーティングシステムをベアコンピュータ１１４，１１６，１１８に配信し、配信終了後、隔離を解除する。【選択図】図１
2006099780.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサ実行可能命令がプロセッサによって実行された場合に、
信用できないネットワークからベアコンピュータが隔離されていない場合は、ネットワーク上の前記ベアコンピュータを、前記ベアコンピュータに悪意のある侵入を通信することが可能な前記信用できないネットワークから隔離すること、
前記ネットワークを介して、オペレーティングシステムをベアコンピュータが受信することを可能にすること、および、
前記ベアコンピュータが隔離されている間に、前記ネットワークを介して、前記オペレーティングシステムへの更新を前記ベアコンピュータが受信することを可能にすること
を含む動作を実施するプロセッサ実行可能命令を有することを特徴とする１つまたは複数のプロセッサ読み取り可能記憶媒体。
【請求項２】
前記ベアコンピュータが隔離されている間に、前記ベアコンピュータが、前記更新を前記オペレーティングシステムに適用することを可能にすることをさらに含むことを特徴とする請求項１に記載の１つまたは複数のプロセッサ読み取り可能記憶媒体。
【請求項３】
前記ベアコンピュータが、前記信用できないネットワークを介して通信できるように、前記ベアコンピュータが前記更新を受信した後、前記隔離を解除することをさらに含むことを特徴とする請求項１に記載の１つまたは複数のプロセッサ読み取り可能記憶媒体。
【請求項４】
前記ベアコンピュータはベアサーバを含むことを特徴とする請求項１に記載の１つまたは複数のプロセッサ読み取り可能記憶媒体。
【請求項５】
前記ベアコンピュータは、仮想ベアコンピュータを含み、前記ネットワークは、少なくとも一部分が、仮想ネットワークであることを特徴とする請求項１に記載の１つまたは複数のプロセッサ読み取り可能記憶媒体。
【請求項６】
前記隔離することは、物理ネットワークスイッチによって実施されることを特徴とする請求項１に記載の１つまたは複数のプロセッサ読み取り可能記憶媒体。
【請求項７】
前記隔離することは、仮想ネットワークスイッチによって実施され、前記ネットワークは、少なくとも一部分が、仮想ネットワークであることを特徴とする請求項１に記載の１つまたは複数のプロセッサ読み取り可能記憶媒体。
【請求項８】
前記信用できないネットワークは、信用できないネットワークに結合された１つまたは複数の装置を備えることを特徴とする請求項１に記載の１つまたは複数のプロセッサ読み取り可能記憶媒体。
【請求項９】
前記オペレーティングシステムは、イメージとして受信されることを特徴とする請求項１に記載の１つまたは複数のプロセッサ読み取り可能記憶媒体。
【請求項１０】
前記隔離することおよび前記可能にすることの前記動作は、ユーザとの対話なしに実施されることを特徴とする請求項１に記載の１つまたは複数のプロセッサ読み取り可能記憶媒体。
【請求項１１】
請求項１に記載の１つまたは複数のプロセッサ読み取り可能記憶媒体を含むことを特徴とするコンピュータ。
【請求項１２】
信用できないネットワークからベアコンピュータが隔離されていない場合に、ネットワーク上の前記ベアコンピュータを、悪意のある侵入を前記ベアコンピュータに通信することが可能な、前記信用できないネットワークから隔離することを可能にすること、
ベアコンピュータが、前記ネットワークを介してオペレーティングシステムを受信することを可能にすること、
前記ベアコンピュータが隔離されている間に、前記ネットワークを介して前記オペレーティングシステムへの更新を、前記ベアコンピュータが受信することを可能にすること、および、
前記ベアコンピュータが隔離されている間に、前記ベアコンピュータが前記更新を前記オペレーティングシステムに適用することを可能にすること
を含むことを特徴とする方法。
【請求項１３】
前記ベアコンピュータが、前記信用できないネットワークを介して通信できるように、前記ベアコンピュータが前記更新を受信した後、前記隔離を解除することをさらに含むことを特徴とする請求項１２に記載の方法。
【請求項１４】
前記ベアコンピュータはベアサーバを含むことを特徴とする請求項１２に記載の方法。
【請求項１５】
前記ベアコンピュータは、仮想ベアコンピュータを含み、前記ネットワークは、少なくとも一部分が、仮想ネットワークであることを特徴とする請求項１２に記載の方法。
【請求項１６】
前記信用できないネットワークは、信用できないネットワークに結合された１つまたは複数の装置を備えることを特徴とする請求項１２に記載の方法。
【請求項１７】
前記オペレーティングシステムは、イメージとして受信されることを特徴とする請求項１２に記載の方法。
【請求項１８】
前記隔離することおよび前記可能にすることの前記動作は、ユーザとの対話なしに実施されることを特徴とする請求項１２に記載の方法。
【請求項１９】
請求項１２に記載の方法を実施するためのプロセッサ読み取り可能命令を有することを特徴とする１つまたは複数のプロセッサ読み取り可能記憶媒体。
【請求項２０】
請求項１２に記載の方法を実施する手段を含むことを特徴とするシステム。
【請求項２１】
ネットワークを介して、ベアコンピュータにオペレーティングシステムを配信する配信手段と、
配信後に、前記ネットワークを介して前記ベアコンピュータの前記オペレーティングシステムに対する更新を送信する更新手段と、
前記更新手段が前記更新を送信している間に、前記ベアコンピュータが前記信用できないネットワークから隔離されていない場合に、悪意のある侵入を前記ベアコンピュータに通信することが可能である信用できないネットワークから、前記ベアコンピュータを隔離する隔離手段と
を含むことを特徴とするシステム。
【請求項２２】
前記ベアコンピュータが前記信用できないネットワークを介して通信することができるように、前記ベアコンピュータが前記更新を受信した後に、前記隔離を解除する隔離解除手段をさらに含むことを特徴とする請求項２１に記載のシステム。
【請求項２３】
前記ベアコンピュータはベアサーバを含むことを特徴とする請求項２１に記載のシステム。
【請求項２４】
前記ベアコンピュータは、仮想ベアコンピュータを含み、前記ネットワークは、少なくとも一部分が、仮想ネットワークであることを特徴とする請求項２１に記載のシステム。
【請求項２５】
前記信用できないネットワークは、信用できないネットワークに結合された１つまたは複数の装置を備えることを特徴とする請求項２１に記載のシステム。
【請求項２６】
前記オペレーティングシステムは、イメージとして配信されることを特徴とする請求項２１に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、ネットワーク上のオペレーティングシステムおよびその他のコンピュータソフトウェアに関し、より詳細には、ネットワークを介するソフトウェア配信を外部の悪意ある侵入から隔離するシステムおよびコンピュータソフトウェアに関する。
【背景技術】
【０００２】
新しい「ベアサーバ（bare server）」、すなわち、オペレーティングシステムを有さないサーバをネットワークに追加するための最も速く、かつ容易な方法の１つは、それをネットワークに接続し、配信サーバを用いてディスクの「イメージ」またはオペレーティングシステムのセットアップファイルを、ベアサーバに配信することである。ベアサーバは、イメージをそのハードディスクドライブ、または同等なストレージに保存し、次いで再ブートする。再ブートすると、ベアサーバは新しく配信されたオペレーティングシステムを用いて動作するようになる。
【０００３】
オペレーティングシステムに対するパッチは頻繁に配信される。新しいイメージまたはセットアップファイルを再生成してベアサーバに配信し、それにより、最初にブートしたときにベアサーバに最新のパッチが含まれるようにするためには、非常に時間がかかる。
【０００４】
したがって、別の「古くなった（stale）」オペレーティングシステムを新たに配信されたサーバは、配信後の最初の再ブートで直ちに更新されることが望ましい。配信後の最初の再ブートの後、サーバは通常、ネットワーク、普通は、（インターネットなどの）公開ネットワーク、またはイントラネットサーバから、必要な更新を取得する。
【０００５】
しかし、ネットワーク（特に、インターネットなどの信用できないネットワーク）は、ウィルス、トロイの木馬、またはその他のネットワークベースの攻撃など、悪意のある侵入を受けやすいおそれがある。新たに配信された「古くなった」サーバが、このような攻撃からサーバを守るはずの必要な更新を取得できる前に、ネットワークを介して（ウィルスやトロイの木馬のような）悪意のあるコードにより攻撃されることは珍しいことではない。
【０００６】
多くの悪意のあるプログラムは、時代遅れのオペレーティングシステムを実行しているサーバを破壊するのに１秒とかからないので、それは実際に起きる可能性がある。例えば、ＭＳ  Ｂｌａｓｔｅｒウィルスは、古くなった保護されていないサーバを１０分の１秒以下で破壊することができる。
【０００７】
この問題の一部に対処するために、ネットワークに接続せずケーブルを手動で両方のサーバに接続することなどにより、ベアサーバを配信サーバに接続することができる。そのケーブルを介して、配信サーバはオペレーティングシステムイメージをベアサーバに配信することができる。次いで、サーバは、そのオペレーティングシステムを用いて再ブートすることができる。それが行われると、普通はコンパクトディスクを用いて更新を手動でインストールし、オペレーティングシステムを安全な最適の状態にすることができる。更新された後は、サーバをネットワークに接続することができる。
【０００８】
この部分的な解決策は、攻撃に対するサーバのぜい弱性を低減するが、時間がかかる。情報技術の専門要員が、ベアサーバを直接配信サーバに接続し、イメージを配信し、更新をインストールし、サーバを配信サーバから接続解除し、次いでそれらをネットワークに接続するという、多くの時間を費やす可能性がある。このようにすることは、いくつかの点で、自動的なソフトウェア配信の目的を損なうものである。
【０００９】
この問題の一部に対処するために、サーバをネットワークに接続する前に、通常、多くのコンパクトディスクを用いて、手動で、オペレーティングシステムおよび更新をベアサーバにインストールすることもできる。しかし、オペレーティングシステムおよび更新を手動でインストールすることは、時間のかかることであり、うんざりすることである。それは、サーバごとに数時間かかる可能性がある。それも、自動的なソフトウェア配信の目的を損なうものである。
【発明の開示】
【発明が解決しようとする課題】
【００１０】
したがって、悪意のあるネットワークベースの侵入を受けにくいように、オペレーティングシステムおよび更新を、ネットワークを介してベアサーバに配信するための安全な方法が求められている。
【課題を解決するための手段】
【００１１】
悪意のあるネットワークベースの侵入を受けにくいように、ソフトウェア（例えば、オペレーティングシステム）および更新を、ネットワークを介してベアコンピュータ（例えば、サーバ）に安全に配信するための実装形態を本明細書で説明する。
【００１２】
図面を通して、同じ番号は同様なエレメントおよび機能を参照するために使用する。
【発明を実施するための最良の形態】
【００１３】
以下の説明では、悪意のあるネットワークベースの侵入を受けにくいように、オペレーティングシステムおよび更新を、ネットワークを介してベアサーバに安全に配信するための技法を述べる。本技法は、（それだけに限らないが、）プログラムモジュール、汎用および特殊目的のコンピューティングシステム、ネットワークサーバおよび装置、専用の電子装置およびハードウェアを含む多くの方法、ならびに１つまたは複数のコンピュータネットワークの一部として実施することができる。
【００１４】
この技法の例示的な実装形態は、ぜい弱でかつ新しく配信されたソフトウェアの例示的なアイソレータ（isolator）と呼ぶことができるが、単に「例示的なアイソレータ」と呼ぶこともできる。
【００１５】
（例示的な動作環境）
データセンタは、自動的なソフトウェア配信サービスを介して、参照「イメージ」をネットワークを介して転送することにより、ソフトウェア（例えば、オペレーティングシステム）を速やかに配信する能力を有する。速やかなシステム配信は、データセンタのオペレータにとって大きな利益がある。しかし、新しいサーバが単にすぐ攻撃されてしまうような高速配信は、重大な欠点となる。
【００１６】
図１は、ソフトウェアが自動的に配信される動作環境１００（または「アーキテクチャ」）を開示する。これはまた、例示的なアイソレータが動作できる例示的な動作環境でもある。
【００１７】
この例示的な動作環境１００は、重要でかつ安全なネットワーク１２０を介して結合された、いくつかの構成要素を有するものとして示されている。ネットワークで結合されたこれらの構成要素は、配信サーバ１０２、更新サーバ１０４、およびネットワークスイッチ１３０を含む。この動作環境１００はまた、いくつかの構成要素が、切換え可能でかつ安全と考えられるネットワーク１２２を介して結合された状態で示されており、その構成要素は、ラックマウントされたベアサーバ（ラック１０８にマウントされた１つまたはいくつかのサーバ）１１４、ベアサーバ１１６、およびベアデスクトップコンピュータ１１８である。さらに、この環境はまた、信用できないネットワーク１４０（例えば、インターネット）が、ネットワークスイッチ１３０を介して他の２つのネットワーク（１２０と１２２）に切り替え可能に結合されて示されている。
【００１８】
配信サーバ１０２は、ソフトウェア配信の動作（act）を実施する。配信サーバ１０２は、以下で述べる１つまたは複数のプロセスを実施することができるコンピュータ読み取り可能記憶媒体を含む。この媒体は、例えば、配信アプリケーション１１０を含むことができる。
【００１９】
図１に示すように、例示的なアイソレータは、配信サーバ１０２の配信アプリケーション１１０によって実施される。例示的なアイソレータはまた、少なくとも一部は、ネットワークスイッチ１３０によって実施される。
【００２０】
更新サーバ１０４はまた、その動作、例えば、そのセキュリティ機能を改善するために、時代遅れのオペレーティングシステムを更新することなどのソフトウェアのパッチ、修正（fix）などを配信可能な、コンピュータ読み取り可能記憶媒体を含む。この更新により、後にベアサーバが受信する様々な悪意のあるコードに対する耐性を改善することが可能となる。以下でより詳細に説明する。
【００２１】
また、３つの例示的なベアコンピュータ、すなわち、ラック１０８中のベアサーバ１１４、スタンドアロンのベアサーバ１１６、およびベアデスクトップ１１８が示されている。各ベアコンピュータは、ベアコンピュータが配信アプリケーション１１０などに基本命令を要求し、受信し、またそれに従うことを可能にするのに十分なソフトウェアまたはハードウェアアプリケーションを有する。
【００２２】
動作環境１００は、ネットワーク１２０および１２２を介して通信する。これらのネットワークは、ネットワークベースの攻撃など、悪意のある通信を受けやすい通信ネットワークである。特に、そのような悪意のある通信は、（ネットワークを介して悪意のあるコードを送信できる不正なコンピュータを有するインターネットまたはイントラネットなど）信用できないネットワーク１４０から来るおそれがある。
【００２３】
このネットワーク１２０、１２２、および１４０は、ネットワークスイッチ１３０を介して、切換え可能に共に結合されている。このスイッチは、（配信サーバ１０２などの）サーバから、どのネットワーク（および実際にそのネットワーク上のどの装置）が互いに通信できるかを選択するための命令を受信することができる。
【００２４】
例えば、ネットワークスイッチ１３０は、信用できないネットワーク１４０からネットワーク１２２を隔離するよう指示され得る。このようにすると、ネットワーク１２２上の装置は、ネットワーク１２０上の装置と通信することができるが、信用できないネットワーク１４０上の装置との通信はできなくなる。その逆も同様である。
【００２５】
（方法の実装形態（Methodological Implementation））
図２Ａおよび図２Ｂは、ぜい弱でかつ新たに配信されるソフトウェアの、例示的なアイソレータの方法の実装形態を示す。この方法の実装形態は、ソフトウェア、ハードウェア、またはそれらの組合せで実施することができる。理解しやすくするために、本方法のステップは、別々のステップとして示されている。しかし、これらの別々に示された諸ステップは、実施時に必ず従うべき順序として解釈されるべきではない。
【００２６】
図２Ａおよび図２Ｂの方法は、（配信アプリケーション１１０を有するなどの）配信サーバ１０２、ネットワークスイッチ１３０、およびベアサーバ（例えば、サーバ１１６）によって実施される、個々のオペレーション、または動作を示す一連のブロックとして示される。
【００２７】
新たに配置されるベアサーバが更新前および更新中の保護されないままでいる間に、新たに配置されるベアサーバを効果的に隔離するために、配信サーバ１０２によって実施されるその例示的なオペレーションおよび動作を、「配信サーバ／配信アプリケーション」の見出しの下に示す。
【００２８】
配信されたイメージを安全に受信すること、および、オペレーティングシステムを更新することのために、ベアサーバ（例えば、サーバ１１６）によって実施されるその例示的なオペレーションおよび動作を、「ベアサーバ」の見出しの下に示す。
【００２９】
新たに配置されるベアサーバが更新前および更新中の保護されないままでいる間に、新たに配置されるベアサーバを（そのようにする命令に応答して）選択的に隔離するために、ネットワークスイッチ１３０によって実施されるその例示的なオペレーションおよび動作を、「ネットワークスイッチ」の見出しの下に示す。
【００３０】
図２Ａの２０２で、ベアコンピュータがネットワーク１２２に接続される。例えば、ベアサーバ１１４が、ラック１０８を介してネットワークに接続される。その代わりに、スタンドアロンサーバ１１６、またはデスクトップ１１８などの他のベアコンピュータを、ネットワークに接続することもできる。
【００３１】
２０４で、ベアサーバは、ネットワーク（例えば、スイッチ１３０を介したネットワーク１２２および１２０）を介して通信し、オペレーティングシステムを要求する。オペレーティングシステムを有していない場合、ベアサーバは、通常、まだネットワーク上の悪意のあるコードに対してぜい弱ではない。
【００３２】
２０６で、配信サーバ１０２は、オペレーティングシステムを求める要求を受信する。２０８で、配信サーバ１０２は、ベアサーバを（信用できないネットワーク１４０などの）安全ではないネットワークから効果的に隔離する命令をネットワークスイッチに送る。
【００３３】
図２Ａの２１０で、ネットワークスイッチ１３０は、命令を受信し、２１２で、ネットワークスイッチ１３０は、（信用できないネットワーク１４０などの）安全ではないネットワークから、ベアサーバを効果的に隔離する。
【００３４】
ネットワークスイッチがこれを達成するには、数多くの方法がある。１つの強引な（brute force）方法は、信用できないネットワーク１４０から着信するトラフィックをすべて遮断することである。その他の方法は、ネットワーク１２２と信用できないネットワーク１４０との間の通信を阻止することである。より高度な方法は、ネットワークスイッチを通るトラフィックを監視し、信用できないネットワーク１４０からベアサーバへ、また、ベアサーバから信用できないネットワーク１４０へ、配信されているトラフィックを阻止することである。
【００３５】
新たに配置されるベアサーバは、信用できるネットワークを介して、配信サーバ、更新サーバ、および、場合により、ＤＨＣＰ（Dynamic Host Configuration Protocol）およびＤＮＳ（Domain Name System）サーバなどの他のネットワークインフラストラクチャサーバと通信することができる。
【００３６】
２１４で、配信サーバは、配信アプリケーション１１０を介してオペレーティングシステムイメージを有するイメージを、ベアサーバに安全に配信する。
【００３７】
図２Ａの２１６で、ベアサーバはネットワークを介してイメージを安全に受信し、それをメモリに保存する。２１８で、ベアサーバは、イメージを受信したことを通信する。２２０で、配信サーバは、ベアサーバから、イメージを受信したことを示す通信を受信する。２２２で、配信サーバは、配信アプリケーションを介して、ベアサーバにそのイメージをブートするように命令する。
【００３８】
図２Ａの２２４で、ベアサーバは再ブートし、それによって、オペレーティングシステムおよびそのコンフィギュレーション設定を有するイメージを動作させる。ベアサーバは、オペレーティングシステムを有しているのでもはやベア（bare：裸）ではないが、ブートプロセスの終了後には動作し、オペレーションが可能である。
【００３９】
信用できないネットワークから効果的にベアサーバを隔離しているネットワークスイッチ１３０がなかったら、時代遅れのオペレーティングシステムを有するベアサーバは、ネットワークを介して送られる悪意のある妨害および通信に対してぜい弱であるはずである。ベアサーバ中のいずれの物も、悪意のある攻撃からそれを守ることはない。その代わりとして、ベアサーバがまだぜい弱である間、外部の構成要素（つまり、配信サーバおよびスイッチ）の働きで、ベアサーバを隔離する。
【００４０】
本方法は、次に図２Ｂに進む。
図２Ｂの２２６で、ベアサーバ１１４は、配信サーバに、オペレーティングシステムが動作しており、および／またはブートが成功したことを通知する。
【００４１】
２２８で、配信サーバ１０２は、その情報を受信する。２３０で、配信サーバは、配信アプリケーション１１０を介して、ベアサーバに更新を受信し、および／または更新をインストールするように命令する。
【００４２】
一実施形態では、配信サーバは、ベアサーバに更新サーバ１０４との通信を開始するように命令する。他の実施形態では、配信サーバは、ベアサーバのオペレーティングシステムに更新を送信し、その更新を追加するように命令する。
【００４３】
図２Ｂの２３２で、ベアサーバは、更新を受け取るための命令を受信する。２３４で、ベアサーバは、更新を受信するための通信を開始する。例えば、ベアサーバは、更新サーバ１０４からの通信を要求する。
【００４４】
２３６で、ベアサーバは、更新を受信し、オペレーティングシステムに更新を適用する。例えば、これらの更新は、ブロック２３４で要求した更新サーバから、または、直接、配信サーバから、ネットワークを介して受信することができる。
【００４５】
図２Ｂの２３８で、ベアサーバは、オペレーティングシステムを更新したことを通信する。２４０で、配信サーバは、その通信を受信する。
【００４６】
２４２で、配信サーバは、ネットワークスイッチにベアサーバの隔離を中止するように命令する。言いかえると、ベアサーバは、完全に更新され、もはや悪意のある攻撃に対してぜい弱ではないと考えられるので、インターネットなどの安全ではないネットワークを介して自由に行動できるようにすべきである。
【００４７】
図２Ｂの２４４で、ネットワークスイッチ１３０は、その命令を受信する。２４６で、ネットワークスイッチは、ベアサーバを隔離から外す。次に、ネットワークスイッチは、ベアサーバと（信用できないネットワーク１４０などの）安全ではないネットワークの間のトラフィックを可能にする。
【００４８】
本明細書では、配信サ−バ、配信アプリケーション、およびネットワークスイッチの動作のすべてではないが大部分を、ユーザとの対話を必要とせず、自動的に実施することができる。
【００４９】
そのようにすると、ユーザは、ベアサーバまたは他のベアコンピュータをネットワークに接続できるようになり、さらなる対話を必要とせずに、オペレーティングシステムの更新前にベアサーバがネットワークを介して悪意のあるコードを受けることなく、更新されたオペレーティングシステムを用いてベアサーバを動作させることが可能になる。
【００５０】
（代替の動作環境）
図３は、例示的なアイソレータが動作できる他の例示的な動作環境３００（または「アーキテクチャ」）を開示する。その動作環境３００は、いくつかの構成要素がネットワーク３２０を介して結合された状態で示されている。
【００５１】
そのネットワーク結合された構成要素は、配信サーバ３０２および更新サーバ３０４を含む。信用できないネットワーク３４０（例えば、インターネット）が、ネットワーク３２０にさらに接続されている。また、ネットワーク結合された、図示されていない多くの他の装置もある可能性がある。
【００５２】
「仮想サーバ」３５０は、ネットワーク３２０に結合された、図３に示す他の構成要素である。仮想サーバは、仮想マシンの１つまたは複数のインスタンスをホストする（hosting）サーバである。その仮想サーバには、仮想ローカルエリアネットワーク（「仮想ＬＡＮ」）３６０が存在している。この仮想ＬＡＮは、物理的に存在せず、仮想サーバ３５０によりシミュレートされたものである。明確にするために、実際の物理ネットワーク３２０を本明細書では、「外部」ネットワークと呼び、仮想ＬＡＮ３６０を本明細書では、「内部」ネットワークと呼ぶ。
【００５３】
代替的に、配信サーバ３０２および更新サーバ３０４を、仮想サーバ３５０内の仮想マシンとし、内部ネットワーク３６０内の信用される仮想ネットワークの一部とすることもできる。
【００５４】
内部ネットワーク３６０は、（図１に示すスイッチ１３０をシミュレートしたバージョンである）仮想ネットワークスイッチ３６２、および複数の仮想マシン（例えば、３６６と３６８）を有する。さらに、信用できない仮想ネットワーク３６４を有する内部ネットワーク３６０も示されており、それは、内部ネットワーク３６０のほかの物と仮想的に、切換え可能に、結合されている。
【００５５】
仮想スイッチ３６２が、信用できない仮想ネットワーク３６４へのアクセスを仮想的にスイッチオン／オフできることを示すことを目的として、信用できない仮想ネットワーク３６４を、内部ネットワーク３６０の内部に存在するものとして図３に示す。しかし、図３に示す信用できない仮想ネットワーク３６４は、実際の信用できないネットワーク３４０を表しているに過ぎない。スイッチは、実際の信用できないネットワーク３４０とのアクセスを仮想的に切り替える（またはフィルタする）ことができる。
【００５６】
この代替の実施形態では、ターゲットのベアサーバは、（サーバ３６８などの）仮想サーバである。ある物理ネットワークおよび物理ベアサーバに関して前述したオペレーションおよびアクションは、図３で示す実施形態における内部ネットワーク３６０内のオペレーションとよく類似している。
【００５７】
（例示的なコンピューティングシステムおよび環境）
図４は、本明細書で述べる例示的なアイソレータをその中に（完全にまたは部分的に）実装できる適切なコンピューティング環境４００の一実施例を示す。コンピューティング環境４００は、本明細書で述べるコンピュータおよびネットワークアーキテクチャ中で利用することができる。
【００５８】
例示的なコンピューティング環境４００はコンピューティング環境の一実施例に過ぎず、コンピュータおよびネットワークアーキテクチャの使用または機能の範囲に関して何らかの限定を示唆するものではない。コンピューティング環境４００は、例示的なコンピューティング環境４００中に示されている構成要素の任意の１つまたは任意の組合せに関して依存性または要件を有するものとして解釈すべきではない。
【００５９】
例示的なアイソレータは、数多くの他の汎用もしくは特殊目的コンピューティングシステム環境もしくはコンフィギュレーションを用いて実装することも可能である。使用するのに適切であり得る周知のコンピューティングシステム、環境、および／またはコンフィギュレーションの諸実施例は、それだけに限らないが、パーソナルコンピュータ、サーバコンピュータ、シンクライアント（thin client）、シッククライアント（thick client）、ハンドヘルドもしくはラップトップ装置、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、ＰＤＡ（personal digital assistant：携帯情報端末）、電気機器（appliance）、特殊目的電子装置（例えば、ＤＶＤ再生装置）、プログラム可能な家庭用電子機器、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、上記システムもしくは装置のいずれも含む分散コンピューティング環境などを含む。
【００６０】
例示的なアイソレータは、コンピュータによって実行される、プログラムモジュールなどのプロセッサ実行可能命令の一般的文脈で説明することができる。一般に、プログラムモジュールは、特定のタスクまたは特定の抽象データ型を実施するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。例示的なアイソレータはまた、通信ネットワークを介してリンクされているリモート処理装置によりタスクが実施される分散コンピューティング環境中で実施することもできる。分散コンピューティング環境では、プログラムモジュールは、メモリストレージ装置を含むローカルとリモートの両方のコンピュータ記憶媒体中に位置することができる。
【００６１】
コンピューティング環境４００は、コンピュータ４０２の形の汎用コンピューティング装置を含む。コンピュータ４０２のコンポーネントは、それだけに限らないが、１つまたは複数のプロセッサもしくは処理装置４０４、システムメモリ４０６、およびプロセッサ４０４を含む様々なシステムコンポーネントをシステムメモリ４０６に結合するシステムバス４０８を含むことができる。
【００６２】
システムバス４０８は、メモリバスもしくはメモリコントローラ、周辺バス、アクセラレイティッドグラフィックスポート（Accelerated Graphics Port）、および任意の様々なバスアーキテクチャを使用するプロセッサもしくはローカルバスを含む、１つまたは複数の任意のいくつかのタイプのバス構造を表す。例として、このようなアーキテクチャは、カードバス、ＰＣＭＣＩＡ（Personal Computer Memory Card International Association）、ＡＧＰ（Accelerated Graphics Port）、ＳＣＳＩ（Small Computer System Interface）、ＵＳＢ（Universal Serial Bus）、ＩＥＥＥ１３９４、ＶＥＳＡ（Video Electronics Standards Association）ローカルバス、およびメザニンバスとしても知られているＰＣＩ（Peripheral Component Interconnect：周辺コンポーネント相互接続）バスを含むことができる。
【００６３】
コンピュータ４０２は、通常、様々なプロセッサ読み取り可能記憶媒体を含む。このような媒体は、コンピュータ４０２によってアクセス可能であり、また揮発性／不揮発性媒体、取外し可能／取外し不能媒体を共に含む任意の利用可能な媒体とすることができる。
【００６４】
システムメモリ４０６は、ＲＡＭ（random access memory）４１０などの揮発性メモリ、および／またはＲＯＭ（read only memory）４１２などの不揮発性メモリの形のプロセッサ読み取り可能記憶媒体を含む。起動中などに、コンピュータ４０２内の要素間で情報を転送できるようにする基本ルーチンを含む基本入出力システム（ＢＩＯＳ）４１４は、ＲＯＭ４１２に記憶されている。ＲＡＭ４１０は、通常、処理装置４０４が直ちにアクセス可能な、および／または現在処理装置４０４によって動作されているデータおよび／またはプログラムモジュールを含む。
【００６５】
コンピュータ４０２はまた、他の取外し可能／取外し不能な、揮発性／不揮発性コンピュータ記憶媒体を含むことができる。例のために、図４は、取外し不能の不揮発性磁気媒体（図示せず）に対して読取りおよび書込みを行うためのハードディスクドライブ４１６、取外し可能の不揮発性磁気ディスク４２０（例えば「フロッピー（登録商標）ディスク」）に対して読取りおよび書込みを行うための磁気ディスクドライブ４１８、およびＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、または他の光媒体など、取外し可能の不揮発性光ディスク４２４に対して読取りおよび／または書込みを行うための光ディスクドライブ４２２を示す。ハードディスクドライブ４１６、磁気ディスクドライブ４１８、および光ディスクドライブ４２２はそれぞれ、１つまたは複数のデータ媒体インターフェース４２５によってシステムバス４０８に接続されている。あるいは、ハードディスクドライブ４１６、磁気ディスクドライブ４１８、および光ディスクドライブ４２２は、１つまたは複数のインターフェース（図示せず）によってシステムバス４０８に接続され得る。
【００６６】
ディスクドライブおよびその関連するプロセッサ読み取り可能記憶媒体は、コンピュータ読み取り可能命令、データ構造、プログラムモジュール、およびコンピュータ４０２のための他のデータの、不揮発性ストレージを提供する。実施例では、ハードディスク４１６、取外し可能磁気ディスク４２０、および取外し可能光ディスク４２４が示されているが、磁気カセットもしくは他の磁気記憶装置、フラッシュメモリカード、ＣＤ−ＲＯＭ、ＤＶＤ（digital versatile disk）もしくは他の光ストレージ、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（electrically erasable programmable read-only memory）など、コンピュータによってアクセス可能なデータを記憶できる、他のタイプのプロセッサ読み取り可能記憶媒体もまた、例示的なコンピューティングシステムおよび環境を実施するために使用できることを理解されたい。
【００６７】
例えば、オペレーティングシステム４２６、１つまたは複数のアプリケーションプログラム４２８、その他のプログラムモジュール４３０、およびプログラムデータ４３２を含む任意の数のプログラムモジュールを、ハードディスク４１６、磁気ディスク４２０、光ディスク４２４、ＲＯＭ４１２、および／またはＲＡＭ４１０に記憶することができる。
【００６８】
ユーザは、キーボード４３４やポインティング装置４３６（例えば「マウス」）などの入力装置を介して、コンピュータ４０２にコマンドおよび情報を入力することができる。その他の入力装置４３８（具体的に図示していない）は、マイクロフォン、ジョイスティック、ゲームパッド、サテライトディッシュ、シリアルポート、スキャナなどを含むことができる。これらのおよびその他の入力装置は、システムバス４０８に結合されている入出力インターフェース４４０を介して処理装置４０４に接続されているが、パラレルポートやゲームポート、ＵＳＢなどのその他のインターフェースおよびバス構造によって接続することもできる。
【００６９】
ビデオアダプタ４４４などのインターフェースを介して、モニタ４４２またはその他のタイプの表示装置をシステムバス４０８に接続することもできる。モニタ４４２に加えて、その他の出力周辺装置には、入出力インターフェース４４０を介してコンピュータ４０２に接続できるスピーカ（図示せず）や、プリンタ４４６などの構成要素も含めることができる。
【００７０】
コンピュータ４０２は、リモートコンピューティング装置４４８などの１つまたは複数のリモートコンピュータへの論理接続を用いて、ネットワーク化された環境中で動作することができる。例として、リモートコンピューティング装置４４８は、パーソナルコンピュータ、ポータブルコンピュータ、サーバ、ルータ、ネットワークコンピュータ、ピア装置もしくはその他の一般のネットワークノード、配信サーバ１０２、更新サーバ１０４などとすることができる。リモートコンピューティング装置４４８は、コンピュータ４０２に関連して、本明細書に記載の要素および機能の多く、またはすべてを含むことができるポータブルコンピュータとして示されている。
【００７１】
コンピュータ４０２とリモートコンピュータ４４８の間の論理接続は、ＬＡＮ（ローカルエリアネットワーク）４５０、および一般のＷＡＮ（広域ネットワーク）４５２として示されている。このようなネットワーキング環境は、オフィス、企業規模のコンピュータネットワーク、イントラネット、およびインターネットでは一般的なものである。このようなネットワーキング環境は、有線または無線でよい。
【００７２】
ＬＡＮネットワーキング環境中で実装された場合、コンピュータ４０２は、ネットワークインターフェースまたはアダプタ４５４を介して、ローカルネットワーク４５０に接続される。ＷＡＮネットワーキング環境中で実装された場合、コンピュータ４０２は、通常、広域ネットワーク４５２を介して、通信を確立するためのモデム４５６またはその他の手段を含む。コンピュータ４０２に対して内部または外部に存在することができるモデム４５６は、入出力インターフェース４４０またはその他の適切な機構を介して、システムバス４０８に接続することができる。図示のネットワーク接続は例示的なものであり、コンピュータ４０２と４４８の間の通信リンクを確立するためのその他の手段を使用することもできることを理解されたい。
【００７３】
コンピューティング環境４００で図示されたような、ネットワーク化環境では、コンピュータ４０２またはその部分に関して示されたプログラムモジュールは、リモートメモリストレージ装置に記憶することもできる。例として、リモートアプリケーションプログラム４５８は、リモートコンピュータ４４８のメモリ装置上に常駐する。オペレーティングシステムなどのアプリケーションプログラム、およびその他の実行可能なプログラムコンポーネントは、様々な場合にコンピューティング装置４０２の異なるストレージコンポーネント中に常駐して、コンピュータのデータプロセッサによって実行されるものと理解されているが、例示のために、ここではそれらを別個のブロックとして図示する。
【００７４】
（プロセッサ実行可能命令）
例示的なアイソレータの実装形態は、１つまたは複数のコンピュータまたはその他の装置によって実行される、プログラムモジュールなどのプロセッサ実行可能命令の一般的文脈で説明することができる。一般に、プログラムモジュールは、特定のタスクまたは特定の抽象データ型を実施するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。通常、プログラムモジュールの機能は、様々な実施形態で所望されるように組み合わせることが可能であり、あるいは分散することもできる。
【００７５】
（例示的な動作環境）
図４は、例示的なアイソレータがその中に実装できる、適切な動作環境４００の一実施例を示す。具体的には、本明細書に記載の例示的なアイソレータは、図４の任意のプログラムモジュール４２８〜４３０、および／またはオペレーティングシステム４２６、あるいはその一部によって（全体的にまたは一部を）実施することができる。
【００７６】
この動作環境は、適切な動作環境の一実施例に過ぎず、本明細書に記載の例示的なアイソレータの機能の範囲または使用に関して何らかの限定を示唆するものではない。使用するのに適切なその他の周知のコンピューティングシステム、環境、および／またはコンフィギュレーションは、それだけに限らないが、パーソナルコンピュータ（ＰＣ）、サーバコンピュータ、ハンドヘルドまたはラップトップ装置、マルチプロセッサシステム、マイクロプロセッサベースのシステム、プログラム可能な家庭用電子機器、無線電話および装置、汎用および特殊目的の電気機器、ＡＳＩＣ（application−specific integrated circuit：特定用途向け集積回路）、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、上記システムもしくは装置のいずれかを含む分散コンピューティング環境などを含む。
【００７７】
（プロセッサ読み取り可能記憶媒体）
例示的なアイソレータの実装形態を、プロセッサ読み取り可能記憶媒体の何らかの形態に記憶し、あるいはそれを介して送信することができる。プロセッサ読み取り可能記憶媒体は、コンピュータがアクセスできる任意の利用可能な媒体とすることができる。例として、プロセッサ読み取り可能記憶媒体は、それだけに限らないが、「コンピュータ記憶媒体」および「通信媒体」を含むことができる。
【００７８】
「コンピュータ記憶媒体」は、コンピュータ読み取り可能命令やデータ構造、プログラムモジュール、その他のデータなどの情報を記憶するための任意の方法または技術で実装される、揮発性および不揮発性の、取外し可能および取外し不能な媒体を含む。コンピュータ記憶媒体は、それだけに限らないが、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ、もしくはその他のメモリ技術、ＣＤ−ＲＯＭ、ＤＶＤ、もしくはその他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、もしくはその他の磁気記憶装置、あるいは所望の情報を記憶するために使用可能であり、コンピュータによってアクセス可能なその他の任意の媒体を含む。
【００７９】
「通信媒体」は、通常、プロセッサ読み取り可能命令、データ構造、プログラムモジュール、またはその他のデータを、搬送波もしくはその他の移送機構などの被変調データ信号として実施する。通信媒体は、任意の情報送達媒体も含む。
【００８０】
（結論）
上記の１つまたは複数の実装形態は、構造的な機能および／または方法の諸ステップに特有の言語で記述されるが、記述された特有の機能または諸ステップを用いずにその他の実装形態を実施することも可能であることを理解されたい。もっと正確に言えば、この特有の機能および諸ステップは、１つまたは複数の実装の好ましい形態として開示されている。
【図面の簡単な説明】
【００８１】
【図１】例示的なサーバ、悪意のある侵入を受けやすいネットワーク、およびベアコンピュータを有する、本明細書に記載の実装形態のための例示的な動作環境を示す図である。
【図２Ａ】本明細書に記載の方法の実装形態を示す流れ図である。
【図２Ｂ】本明細書に記載の方法の実装形態を示す流れ図である。
【図３】本明細書に記載の実装形態のための例示的な代替動作環境のブロック図である。
【図４】本明細書に記載の少なくとも１つの実施形態を（全体的にまたは部分的に）実施することができるコンピューティング動作環境の一実施例の図である。
【図１】
2006099780.tif 000003
【図２Ａ】
2006099780.tif 000004
【図２Ｂ】
2006099780.tif 000005
【図３】
2006099780.tif 000006
【図４】
2006099780.tif 000007