(57)【特許請求の範囲】
【請求項１】
第１のネットワークに接続されたサーバ装置であって、
第２のネットワークに接続され、前記サーバ装置を借用するための制御を行う借用制御装置から送信された、当該第２のネットワークに接続するために必要なネットワーク設定情報を受信する第１の受信手段と、
前記第２のネットワークとの間で暗号化通信を行うための一対の公開鍵及び秘密鍵を生成する鍵対生成手段と、
前記公開鍵を前記借用制御装置へ送信する公開鍵送信手段と、
前記借用制御装置から送信された、前記第２のネットワーク上の記憶装置に記憶されているオペレーティングシステムのプログラムを起動するＯＳ起動プログラムを生成するために必要な、前記公開鍵を用いて暗号化された暗号化データを受信する第２の受信手段と、
前記暗号化データを前記秘密鍵を用いて復号することにより得られるデータに、前記ネットワーク設定情報と、前記公開鍵及び前記秘密鍵とを書き込むことにより、前記ＯＳ起動プログラムを生成する生成手段と、
予め定められたメモリ領域内に、当該サーバ装置の再起動によりデータが消去されることのない待避領域を生成し、当該待避領域に少なくとも前記ＯＳ起動プログラムを一時記憶した後、当該サーバ装置を再起動して、前記ＯＳ起動プログラムを起動する起動手段と、
を具備したことを特徴とするサーバ装置。
【請求項２】
前記ＯＳ起動プログラムは、前記サーバ装置に、
当該ＯＳ起動プログラムに含まれる前記ネットワーク設定情報と、前記公開鍵及び前記秘密鍵とを用いて、前記記憶装置と暗号化通信を行い、前記記憶装置上のルートファイルシステムを操作可能に設定する設定ステップと、
前記記憶装置に記憶された前記オペレーティングシステムのプログラム起動後の前記記憶装置との暗号化通信に用いる前記公開鍵及び前記秘密鍵を、前記記憶装置へ送信するステップと、
前記記憶装置上のルートファイルシステムに切り替えるステップと、
前記記憶装置に記憶されたオペレーティングシステムのプログラムを起動する起動ステップと、
を含む処理を実行させることを特徴とする請求項１記載のサーバ装置。
【請求項３】
第１のネットワークに接続されたサーバ装置を借用するための制御を行う第２のネットワークに接続された借用制御装置から送信された、当該第２のネットワークに接続するために必要なネットワーク設定情報を、前記サーバ装置が受信するステップと、
前記サーバ装置が、前記第２のネットワークとの間で暗号化通信を行うための一対の公開鍵と秘密鍵を生成するステップと、
前記サーバ装置が、前記公開鍵を前記借用制御装置へ送信するステップと、
前記借用制御装置が、前記第２のネットワーク上の記憶装置に記憶されているオペレーティングシステムのプログラムを起動するＯＳ起動プログラムを生成するために必要な、前記公開鍵を用いて暗号化された暗号化データを生成するステップと、
前記サーバ装置が、前記借用制御装置から送信された前記暗号化データを受信する「ステップと、
前記サーバ装置が、前記暗号化データを前記秘密鍵を用いて復号することにより得られるデータに、前記ネットワーク設定情報と、前記公開鍵及び前記秘密鍵とを書き込むことにより、前記ＯＳ起動プログラムを生成するステップと、
前記サーバ装置が、予め定められたメモリ領域内に、当該サーバ装置の再起動によりデータが消去されることのない待避領域を生成し、当該待避領域に少なくとも前記ＯＳ起動プログラムを一時記憶した後、当該サーバ装置を再起動して、前記ＯＳ起動プログラムを起動するステップと、
を有するサーバ融通方法。
【請求項４】
前記ＯＳ起動プログラムは、前記サーバ装置に、
当該ＯＳ起動プログラムに含まれる前記ネットワーク設定情報と、前記公開鍵及び前記秘密鍵とを用いて、前記記憶装置と暗号化通信を行い、前記記憶装置上のルートファイルシステムを操作可能に設定する設定ステップと、
前記記憶装置に記憶された前記オペレーティングシステムのプログラム起動後の前記記憶装置との暗号化通信に用いる前記公開鍵及び前記秘密鍵を、前記記憶装置へ送信するステップと、
前記記憶装置上のルートファイルシステムに切り替えるステップと、
前記記憶装置に記憶されたオペレーティングシステムのプログラムを起動する起動ステップと、
を含む処理を実行させることを特徴とする請求項３記載のサーバ融通方法。
【請求項５】
第１のネットワークに接続されたコンピュータに、
第２のネットワークに接続され、前記サーバ装置を借用するための制御を行う借用制御装置から送信された、当該第２のネットワークに接続するために必要なネットワーク設定情報を受信するステップと、
前記第２のネットワークとの間で暗号化通信を行うための一対の公開鍵と秘密鍵を生成するステップと、
前記公開鍵を前記借用制御装置へ送信するステップと、
前記借用制御装置から送信された、前記第２のネットワーク上の記憶装置に記憶されているオペレーティングシステムのプログラムを起動するＯＳ起動プログラムを生成するために必要な、前記公開鍵を用いて暗号化された暗号化データを受信するステップと、
前記暗号化データを前記秘密鍵を用いて復号することにより得られるデータに、前記ネットワーク設定情報と、前記公開鍵及び前記秘密鍵とを書き込むことにより、前記ＯＳ起動プログラムを生成するステップと、
予め定められたメモリ領域内に、当該コンピュータの再起動によりデータが消去されることのない待避領域を生成し、当該待避領域に少なくとも前記ＯＳ起動プログラムを一時記憶した後、当該コンピュータを再起動して、前記ＯＳ起動プログラムを起動するステップと、
を実行させるサーバ融通プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ装置を利用者組織に割り当てるサーバ融通装置、サーバ融通方法およびサーバ融通プログラムに関する。
【背景技術】
【０００２】
近年、サーバ装置の利用効率の改善や、一時的な高負荷・ハードウェア障害への対応などのために、グリッドコンピューティングというサーバ装置利用形態が提唱されている。一般的なグリッドコンピューティングシステムは、サーバを複数の利用者組織で共有し、複数の利用者組織のアプリケーションプログラムを並行して動作させている。しかし、このように１つのサーバを複数の利用者組織で共有する方式によるグリッドコンピューティングシステムにおいては、利用者組織間におけるＣＰＵ時間などのリソースの割り当ての調整、利用者組織間におけるセキュリティの確保が必要になる。
【０００３】
そこで、サーバ融通方式によるグリッドコンピューティングシステムが提案されている。サーバ融通方式は、一時的な高負荷やハードウェア障害などでサーバが不足している利用者組織に対して、サーバに余裕のある別の利用者組織からサーバを一括して貸出す方式である。例えば、非特許文献１においては、グリッド技術を利用し、サーバ（ノード）を含むリソースを複数のクラスタ間で融通する方法が開示されている。なお、サーバ融通は、サーバのほかディスクやネットワークなどの計算機リソース全般の融通を扱うリソース融通の一形態である。
【０００４】
サーバ融通方式では、１つのサーバが一括して利用者組織間で融通されるため、複数の利用者組織による共有によって生じるリソース割り当て調整やセキュリティの問題が生じないという利点がある。サーバの融通を行う主体としては、ＯＳまたはミドルウェアのレベルでサーバ装置を一括管理するクラスタシステムが主に想定されているが、クラスタ以外にも、負荷分散装置とＷｅｂサーバを組み合わせたシステムなどの複数のサーバからなるシステムをサーバ融通の主体とすることができる。また、サーバ融通方式では、複数の利用者組織間において相互に貸出す方法の他、貸出しを専門に行う組織から貸出す方法も可能である。
【０００５】
このようなサーバ融通方式では、以前、ある利用者組織に融通されていたサーバ装置が、別の利用者組織に新たに融通される場合が生じ得る。その際、一般にサーバ装置の利用用途が変わるため、ＯＳやアプリケーションの再インストールが必要になる。また、ＯＳやアプリケーションをサーバ装置のローカルディスクに自動インストールするモデルの場合、当該サーバ装置返却時に、ローカルディスクに書き込まれたデータが漏洩しないように確実に削除する必要が生じる。また、融通の度にローカルディスクへの書き込み処理や削除処理のために時間を要する。
【０００６】
サーバ装置のローカルディスクを使用しないでサーバ装置を起動する方法として、ディスクレスブートの方法がある。これは、ＯＳやアプリケーションは、予め用意しておいたサーバ装置の外部にあるストレージに記憶しておき、サーバ装置に、当該サーバ装置外にあるＯＳの起動プログラムを送り込むとともに、当該サーバ装置に、当該ストレージをルートファイルシステムとして接続することでＯＳの起動を行う方法である。これは、情報漏洩の危険がない同一組織内、すなわち、同一のネットワーク内では既存の技術で実現可能である。
【０００７】
ローカルディスクを使用せずにサーバ融通を実現しようとする場合、ＯＳやアプリケーションは予め用意しておいた利用者組織内にあるストレージに記憶しておき、貸出された借用サーバ装置に、利用者組織が所有するＯＳの起動プログラムを送り込み、当該サーバ装置を当該ストレージに接続して、ＯＳを起動しなくてはならない。
【０００８】
しかしながら、利用者組織が所有するＯＳの起動プログラムを、サーバ装置が属する組織の外から送ることは、従来方式ではできない。組織間の通信では通常セキュリティの観点から組織内への通信内容を制限しているのが一般的であり、サーバ装置側から利用者組織のＯＳ起動プログラムの所在が判らないからである。
【０００９】
また、異なる組織間でサーバを融通するので、組織間がインターネットのような通信内容の改竄・傍受の可能性がある通信網によって接続されている場合、データの改竄・傍受が行われる危険性が存在する。これを防止するためには、サーバと利用者組織との間の通信を暗号化する必要があり、暗号化通信路を確立してからＯＳ起動プログラムを送り込む手段が既存のディスクレスブートではできない。
【００１０】
利用者組織と借用サーバとの間に暗号化通信路を確立した後に、ＯＳプログラムを送信した場合、当該ＯＳプログラムを起動するために、借用サーバを再起動（リブート）する必要がある。リブートを行うと、借用サーバ内のメモリ上のデータは全てクリアされるため、リブート前に、当該メモリに記憶されている、暗号化通信路で用いた暗号鍵などの、リブート前に構築していた設定を、一旦、借用サーバのローカルディスクへ待避させることが一般的である。その結果、リブート後に、リブート前の設定を承継することができる。
【００１１】
しかしながら、ローカルディスクを使用しないとすると、この従来の方法では、リブート後に、リブート前の設定を承継することはできない。リブート時にメモリ上のデータはすべてクリアされてしまうからである。暗号鍵の安全性を考慮すると、サーバ外に退避するのも危険である。
【００１２】
別な問題として、リブート後にサーバからルートファイルシステムとなる組織外のリモートのストレージに接続できない点もある。ＯＳ起動プログラムは、起動時に仮のルートファイルシステムをサーバのメモリ上に展開して、ＯＳ起動に必要な最低限の設定を行う。最低限の設定が完了した後、起動プログラムはルートファイルシステムを本来ルートファイルシステムとするファイルシステムに切り換えて起動処理を開始する。
【００１３】
一般のアプリケーションは、この本来のルートファイルシステムに格納されており、暗号化通信に関するプログラムや設定も同様である。
【００１４】
しかし、ルートファイルシステムとするストレージがサーバ側組織の外部に存在する場合、ルートファイルシステムを接続する前の段階で暗号化通信環境を確立しておかなければならない。例えばＯＳ起動プログラム内で暗号化通信環境を確立したとしても、ルートファイルシステムを切り換えた時、新たにルートファイルシステムとなったストレージには、暗号化通信に必要な設定や暗号鍵が存在しない状況が発生してしまう。
【非特許文献１】吉田英樹、崎山伸夫、關俊文、金井達徳、平山秀昭著  「グリッド技術によるクラスタ間リソース融通」情報処理学会第６６回全国大会、２００４年３月
【発明の開示】
【発明が解決しようとする課題】
【００１５】
以上説明したように、従来は、ある組織内のネットワークとは異なる別のネットワーク上のサーバ（借用サーバ）のローカルディスクを一切使用せずに、当該組織内のサーバとして安全に動作させることができないという問題点があった。
【００１６】
そこで、本発明は、上記問題点に鑑み、組織内のネットワークとは異なるネットワークに接続されていても、ローカルディスクを一切使用せずに、組織内のサーバとして安全に動作することのできるサーバ装置、組織内のネットワークとは異なるネットワークに接続されているサーバ装置を、そのローカルディスクを一切使用せずに、組織内のサーバとして安全に動作させるためのサーバ融通方法及びサーバ融通プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１７】
本発明は、第１のネットワークに接続されたサーバ装置が、
（ａ）第２のネットワークに接続され、前記サーバ装置を借用するための制御を行う借用制御装置から送信された、当該第２のネットワークに接続するために必要なネットワーク設定情報を受信し、
（ｂ）前記第２のネットワークとの間で暗号化通信を行うための一対の公開鍵と秘密鍵を生成し、
（ｃ）前記公開鍵を前記借用制御装置へ送信し、
（ｄ）前記借用制御装置から送信された、前記第２のネットワーク上の記憶装置に記憶されているオペレーティングシステムのプログラムを起動するＯＳ起動プログラムを生成するために必要な、前記公開鍵を用いて暗号化された暗号化データを受信し、
（ｅ）前記暗号化データを前記秘密鍵を用いて復号することにより得られるデータに、前記ネットワーク設定情報と、前記公開鍵及び前記秘密鍵とを書き込むことにより、前記ＯＳ起動プログラムを生成し、
（ｆ）予め定められたメモリ領域内に、当該サーバ装置の再起動によりデータが消去されることのない待避領域を生成し、当該待避領域に少なくとも前記ＯＳ起動プログラムを一時記憶した後、当該サーバ装置を再起動して、前記ＯＳ起動プログラムを起動する。
【００１８】
前記ＯＳ起動プログラムは、前記サーバ装置に、
（ｇ）当該ＯＳ起動プログラムに含まれる前記ネットワーク設定情報と、前記公開鍵及び前記秘密鍵とを用いて、前記記憶装置と暗号化通信を行い、前記記憶装置上のルートファイルシステムを操作可能に設定する設定ステップと、
（ｈ）前記記憶装置に記憶された前記オペレーティングシステムのプログラム起動後の前記記憶装置との暗号化通信に用いる前記公開鍵及び前記秘密鍵を、前記記憶装置へ送信するステップと、
（ｉ）前記記憶装置上のルートファイルシステムに切り替えるステップと、
（ｊ）前記記憶装置に記憶されたオペレーティングシステムのプログラムを起動する起動ステップと、
を含む処理を実行させる。
【発明の効果】
【００１９】
本発明によれば、ある組織内のネットワークとは異なるネットワークに接続されているサーバ装置を、ローカルディスクを一切使用せずに、組織内のサーバとして安全に動作させることができる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の実施形態について、図面を参照して説明する。
【００２１】
本実施形態は、リソース融通対象のクラスタがサーバであり、ある組織（借用側組織）のネットワーク（借用側ネットワーク）が、当該組織とは別の組織（貸出側組織）のネットワーク（貸出側ネットワーク）上のサーバ（コンピュータ）を借用する場合を例にとり説明する。
【００２２】
図１は、本実施形態に係るサーバ融通システムの構成例を示したものである。図１のサーバ融通システムは、通信媒体や伝送方式（プロトコル）などが互いに異なる、媒体借用側ネットワーク１００と貸出側ネットワーク２００とを含み、それぞれに接続されているゲートウェイ１０、２０を介して、公衆網に接続されている。
【００２３】
借用側ネットワーク１００には、借用制御装置１１、当該借用側組織内で利用されるサーバ群１３、サーバマネージャ１２が接続されている。
【００２４】
サーバマネージャ１２は、サーバ群１３の故障の有無や負荷状況を監視し、各サーバ（サーバ１３（１）〜サーバ１３（ｉ）、ｉは２以上の正の整数）の故障の有無や負荷状況を監視するとともに、各サーバ及び各サーバ上で動作するアプリケーションの動作を制御する。
【００２５】
借用制御装置１１は、貸出側ネットワーク２００から借用する貸出用サーバ（借用サーバ）を借用側組織のサーバとして利用するために必要な設定・制御処理を行う。
【００２６】
なお、図１では、サーバマネージャ１２と借用制御装置１１は別個の構成要素として示しているが、この場合に限らず、サーバマネージャ１２が、借用制御装置１１の機能を備えていてもよい。
【００２７】
貸出側ネットワーク２００には、ブート制御装置２１、借用側組織へ貸し出すための貸出用サーバ群２３、貸出用サーバマネージャ２２が接続されている。
【００２８】
貸出側サーバマネージャ２２は、貸出用サーバ群２３の故障の有無や貸出状態を監視し、各サーバ（貸出用サーバ２３（１）〜貸出用サーバ２３（ｉ）、ｉは２以上の正の整数）の故障の有無や貸出状態を監視するとともに、各サーバ及び各サーバ上で動作する融通プログラムの動作を制御する。
【００２９】
ブート制御装置２１は、借用側ネットワーク２００へ貸し出す貸出用サーバ（借用サーバ）と、借用側ネットワーク１００のゲートウェイ１０との間で、暗号化通信を行うまで、借用サーバと借用制御装置１１との間の情報転送を中継するための処理を行う。
【００３０】
なお、図１では、貸出側サーバマネージャ２２とブート制御装置２１は別個の構成要素として示しているが、この場合に限らず、貸出側サーバマネージャ２２が、ブート制御装置２１の機能を備えていてもよい。
【００３１】
サーバマネージャ１２は、サーバ群１３のリソースが不足していることを検知すると、サーバマネージャ１２と貸出用サーバマネージャ２２との間で、借用制御装置１１とブート制御装置２１を介した通信を行い、貸出用サーバ群２３のなかから借用側ネットワーク１００へ貸し出すサーバ（借用サーバ）を検索する。
【００３２】
ここでのサーバ検索方法は、例えば、借用サーバ上で動作させるアプリケーションが要求するＣＰＵの種類、ＣＰＵのクロック数、ＯＳの種類などのリソースについての情報(リソース情報)を条件として、貸出用サーバ群２３のなかから、当該条件にマッチするサーバを借用サーバとして検索する。
【００３３】
ここでは、借用サーバとして、貸出用サーバ２３（１）が検索されたとする。サーバ検索によって借用サーバが決定された後、次に、借用制御装置１１から融通要求が発行されて、後述する融通処理が開始される。
【００３４】
図１では、サーバマネージャ１２が管理するサーバ群１３のリソースが不足し、貸出側ネットワーク２００から貸出用サーバ２３（１）が借用サーバとして決定された場合を示している。この借用する貸出用サーバ２３（１）を、以後、借用サーバ２３（１）と呼ぶ。
【００３５】
次に、借用サーバ２３（１）を、借用側組織のサーバとして動作させるためのサーバ融通処理について説明する。
【００３６】
図２は、サーバ融通処理に関わる借用制御装置１１、ブート制御装置２１及び借用サーバ２３（１）の要部の機能構成例と、サーバ融通処理における情報の流れを示したものである。
【００３７】
図４〜図５は、サーバ融通処理を説明するためのシーケンス図である。
【００３８】
以下、図４〜図５に示した手順に従って、借用制御装置１１、ブート制御装置２１及び借用サーバ２３（１）の間で実行されるサーバ融通処理について説明する。
【００３９】
まず、借用制御装置１１の融通要求送信部３１は、ブート制御装置２１へ、融通要求及びネットワーク設定情報を送信する（ステップＳ１）。ネットワーク設定情報とは、借用サーバ２３（１）を借用側ネットワーク１００に接続するために必要な情報であり、具体的には、借用側ネットワーク１００上のゲートウェイ（ＧＷ）１０のＩＰアドレスと、貸出側ネットワーク２００上のゲートウェイ（ＧＷ）２０のＩＰアドレスと、借用サーバ２３（１）の貸出側ネットワーク２００上でのＩＰアドレス及び借用側ネットワーク１００上でのＩＰアドレスとを含む。
【００４０】
ブート制御装置２１の融通要求処理部４１は、借用制御装置１１から送信された、融通要求及びネットワーク設定情報を受信すると、借用サーバ２３（１）に対し、ブート指示を送信する（ステップＳ２）。
【００４１】
さらに、ブート制御装置２１の融通仲介用システム転送部４２が、借用サーバ２３（１）に対し、汎用の遠隔ブート機能を用いることにより、融通仲介用システムのプログラム５１を転送し、起動させる（ステップＳ３）。例えば、PXE(Preboot eXecution Environment)を用いた遠隔ブートの場合、DHCP(Dynamic Host Configuration Protocol)とTFTP(Trivial File Transfer Protocol)を組み合わせれば、融通仲介用システムのプログラム５１は借用サーバ２３（１）により取得され、起動される。
【００４２】
借用サーバ２３（１）は、融通仲介用システムのプログラム５１を、メモリ５０上に展開し、このプログラム５１を実行することにより、融通仲介用システムとしての各機能を実現する。
【００４３】
融通仲介用システムは、融通情報受信部５２、鍵対生成部５３、ソフトウェア暗号／復号化部５４、融通用ＯＳ起動プログラム生成部５５、システム高速切替部５６を含む。
【００４４】
融通仲介用システムの転送・起動後、ブート制御装置２１の融通要求処理部４１は、借用サーバ２３（１）へネットワーク設定情報を送信する（ステップＳ４）。借用サーバ２３（１）上で動作している融通仲介用システムの融通情報受信部５２は、ブート制御装置２１から送信されてきたネットワーク設定情報を受信する。
【００４５】
一方、鍵対生成部５３は、公開鍵暗号方式における一対の公開鍵Ｋｐ及び秘密鍵Ｋｓを生成する（ステップＳ５）。なお、この一対の公開鍵Ｋｐ及び秘密鍵Ｋｓは、貸出用サーバ２３（１）が借用側ネットワーク２００へ貸し出されている間（サーバ融通期間）使用される。鍵対生成部５３は、生成した秘密鍵Ｋｓ及び公開鍵Ｋｐを、メモリ５０内の所定のアドレス領域へ記憶するとともに（ステップＳ６）、公開鍵Ｋｐを、ブート制御装置２１へ転送する（ステップＳ７）。
【００４６】
ブート制御装置２１の公開鍵転送部４３は、借用サーバ２３（１）から転送されてきた公開鍵Ｋｐを受信すると、これを借用制御装置１１へ転送する。借用制御装置１１の公開鍵送受信部３２は、ブート制御装置２１から送信された公開鍵Ｋｐを受信すると、これを所定の記憶領域に記憶する。
【００４７】
一方、借用制御装置１１は、暗号化通信のために、一対の公開鍵Ｋｐｐと秘密鍵Ｋｓｓを予め保持している。例えば、ここでは、ソフトウェア暗号／復号化部３３は、一対の公開鍵Ｋｐｐと秘密鍵Ｋｓｓを記憶しているものとする。借用サーバ２３（１）から、借用制御装置１１及び後述する当該借用制御装置１１に接続されているストレージ３５への暗号化通信を行うために、借用制御装置１１の公開鍵送受信部３２は、公開鍵Ｋｐｐをブート制御装置２１へ送信し、ブート制御装置２１は、この公開鍵Ｋｐｐを借用サーバ２３（１）へ転送する。借用サーバ２３（１）のソフトウェア暗号／復号化部５４は、ブート制御装置２１から送信された公開鍵Ｋｐｐを受信すると、これを所定の記憶領域に記憶する（ステップＳ８）。
【００４８】
なお、ここでは、ステップＳ８において、借用制御装置１１の公開鍵Ｋｐｐを借用サーバ２３（１）へ送信する場合を示したが、この場合に限らず、公開鍵Ｋｐｐは、ステップＳ１で借用制御装置１１から送信されるネットワーク設定情報に含まれていてもよい。また、前述の借用サーバ検索の際に、借用制御装置１１とブート制御装置２１との間の通信で、ブート制御装置２１は借用制御装置１１から公開鍵Ｋｐｐを取得するので、図４のステップＳ４で、ブート制御装置２１が、ネットワーク設定情報とともに、公開鍵Ｋｐｐを借用サーバ２３（１）へ送信するようにしてもよい。
【００４９】
以上の処理により、借用制御装置１１と借用サーバ２３（１）への暗号化通信の準備が整った。
【００５０】
次に、借用制御装置１１のソフトウェア暗号/復号化部３３は、記憶部３４に記憶されている、サーバ融通用ＯＳ起動プログラムの雛形を、公開鍵Ｋｐで暗号化した後、融通仲介用システムのソフトウェア暗号/復号化部５４へ転送する(ステップＳ９)。
【００５１】
なお、サーバ融通用ＯＳ起動プログラムの雛形は、この雛形中の予め定められた領域に、ネットワーク設定情報、及びステップＳ５で生成された秘密鍵Ｋｓ及び公開鍵Ｋｐを埋め込む（書き込む）ことにより、実行可能なサーバ融通用ＯＳ起動プログラムが完成する、融通用ＯＳ起動プログラムを生成するために必要な、未完成・未完全なサーバ融通用ＯＳ起動プログラムである。
【００５２】
サーバ融通用ＯＳ起動プログラムは、借用側ネットワーク１００上のストレージ（記憶装置）３５に構築されているルートファイルシステムを借用サーバ２３（１）にマウントし（借用サーバ２３（１）のルートファイルシステムを記憶装置３５のルートファイルシステムに切替え、記憶装置３５のルートファイルシステムを借用サーバ２３（１）から操作可能となるように設定し）、記憶装置３５に記憶されているオペレーティングシステム（ＯＳ）のプログラムを起動するために必要な処理を借用サーバ２３（１）に実行させるものである。
【００５３】
借用サーバ２３（１）がストレージ３５に構築されているルートファイルシステムをマウントし、記憶装置３５に記憶されているオペレーティングシステム（ＯＳ）のプログラムを起動することにより、記憶装置３５に記憶されている各種アプリケーションプログラムも起動することができ、以後、貸出側ネットワーク２００上の借用サーバ２３（１）が借用側組織のサーバとして動作することとなる。
【００５４】
さて、借用制御装置１１から送信された、暗号化されたサーバ融通用ＯＳ起動プログラムの雛形は、借用サーバ２３（１）で受信されると、ソフトウェア暗号／復号化部５４で、ステップＳ５で生成された秘密鍵Ｋｓを用いて復号する（ステップＳ１０）。
【００５５】
その後、借用サーバ２３（１）の融通用起動プログラム生成部５５は、復号した結果得られた、サーバ融通用ＯＳ起動プログラムの雛形中の予め定められた領域に、ステップＳ４で得たネットワーク設定情報、ステップＳ５で生成された秘密鍵Ｋｓ及び公開鍵Ｋｐを埋め込むことにより、実行可能なサーバ融通用ＯＳ起動プログラムを生成する（ステップＳ１１）。生成したサーバ融通用ＯＳ起動プログラムは、システム高速切替実行部５６に渡される。なお、公開鍵Ｋｐｐもサーバ融通用ＯＳ起動プログラムの予め定められた領域に書き込むようにしてもよい。
【００５６】
そして、システム高速切替実行部５６は、図６に示すような、システム高速切替処理を実行する（ステップＳ１２）。すなわち、メモリ５０上の予め定められたアドレス領域内に、当該コンピュータの再起動によってもデータが消去されることのない待避領域を生成し、（ステップＳ１０１）、ここに、ステップＳ１１で生成されたサーバ融通用ＯＳ起動プログラムを含む、これまでになされたサーバ融通のための設定情報を待避（一時記憶）し（ステップＳ１０２）、借用サーバ２３（１）を再起動する（ステップＳ１０３）。なお、システム高速切替処理では、この待避領域に記憶された情報は、借用サーバ２３（１）の再起動の際にもクリアされることはない。
【００５７】
この結果（システム高速切替を実行した結果）、借用サーバ２３（１）上で、メモリ５０の待避領域に一時記憶されたサーバ融通用ＯＳ起動プログラムが、メモリ５０のワークエリア内の所定のアドレス領域に展開され、起動される（ステップＳ１３）。なお、このとき、サーバ融通用ＯＳ起動プログラムに含まれる秘密鍵Ｋｓ及び公開鍵Ｋｐ、ネットワーク設定情報も、（また、公開鍵Ｋｐｐも）サーバ融通用ＯＳ起動プログラムとともに、メモリ５０のワークエリア内の所定のアドレス領域に戻される。
【００５８】
このとき（システム高速切替を実行した後）、借用サーバ２３（１）が、サーバ融通用ＯＳ起動プログラムを実行することにより備えることとなる機能構成例と、借用制御装置１１の要部の機能構成例を図３に示す。
【００５９】
以下、図５に示した手順に従って、図３に示した、システム高速切替を実行した後の借用制御装置１１と、借用サーバ２３（１）との間のサーバ融通処理を説明する。図３に示した借用制御装置１１では、システム高速切替後の処理に必要な主要部の構成例を示している。
【００６０】
借用サーバ２３（１）は、メモリ５０内に展開された、サーバ融通用ＯＳ起動プログラム６１を実行することにより、図３に示すように、鍵対管理部６２、ソフトウェア暗号／復号化部６３、ソフトウェア暗号化／復号化設定調整部６４の各機能を実現する。
【００６１】
鍵対管理部６２は、鍵対生成部５３で生成し、所定のアドレス領域に記憶された（サーバ融通用ＯＳ起動プログラム６１内の）秘密鍵Ｋｓや公開鍵Ｋｐを必要に応じて読み出す。
【００６２】
ソフトウェア暗号化/復号化設定調整部６４は、借用サーバ２３（１）内のローカルディスクを用いることなく、借用側組織のサーバとして（サーバ群１３のうちの１つとして）機能するための諸設定を行う。
【００６３】
ソフトウェア暗号/復号化部６３は、借用制御装置１１（のストレージ３５）へ送信する情報データを暗号化し、また、借用制御装置１１（のストレージ３５）から送信された暗号化データを復号する。
【００６４】
このような機能を有する借用サーバ２３（１）のソフトウェア暗号化/復号化設定調整部６４は、まず、サーバ融通用ＯＳ起動プログラムに含まれるネットワーク設定情報を用いて、ルートファイルシステムとしてマウントすべきストレージ３５への接続を試みる。すなわち、ソフトウェア暗号化/復号化設定調整部６４は、ストレージ３５（のルートファイルシステム）をマウント設定のための通信路を確立し、その後、この通信路を用いた暗号化通信により、ストレージ３５（のルートファイルシステム）をマウントするための各種設定を行う（図５のステップＳ１４）。  なお、ここで設定される通信路で用いる暗号鍵は、借用制御装置１１から借用サーバ２３（１）への通信には、公開鍵Ｋｐが用いられ、借用サーバ２３（１）から借用制御装置１１への通信には、公開鍵Ｋｐｐが用いられる。借用制御装置１１のソフトウェア暗号／復号化部３３は、公開鍵Ｋｐで暗号化したデータを借用サーバ２３（１）へ送信し、借用サーバ２３（１）のソフトウェア暗号／復号化部６３は、これを秘密鍵Ｋｓを用いて復号する。借用サーバ２３（１）のソフトウェア暗号／復号化部６３は、公開鍵Ｋｐｐで暗号化したデータを借用制御装置１１へ送信し、ソフトウェア暗号／復号化部３３は、これを秘密鍵Ｋｓｓを用いて復号する。
【００６５】
この暗号化通信路を用いて、ストレージ３５（のルートファイルシステム）をマウントするための各種設定を行う。例えば、借用側の組織の利用形態にのみ依存する言語や、時間帯などは、そのままの設定を用い、ストレージ３５と借用サーバ２３（１）との間の用いる通信プロトコルやデバイス、ディスクのパーティション（例えば、ブートパーティション及びユーザパーティションのサイズ）などが設定される。
【００６６】
この設定が終了後、ソフトウェア暗号化/復号化設定調整部６４は、ストレージ３５が持つデータにアクセス可能になるための指示をストレージ３５に発行する。
【００６７】
ストレージ３５へアクセス可能な状態になると、ソフトウェア暗号／復号化部６３は、鍵対管理部６２から、公開鍵Ｋｐ及び秘密鍵Ｋｓを取得し、それを借用サーバ２３（１）から借用制御装置１１への暗号化通信用の公開鍵ｋｐｐで暗号化して、ストレージ３５へ送信する（図５のステップＳ１５）。ソフトウェア暗号／復号化部３３は、暗号化された公開鍵Ｋｐ及び秘密鍵Ｋｓを秘密鍵Ｋｓｓを用いて復号し、ストレージ３５へ渡す。ストレージ３５は、借用サーバ２３（１）が、ストレージ３５上のＯＳプログラムを起動した後に（借用サーバ２３（１）が借用側組織のサーバとして動作する際に）、ストレージ３５と借用サーバ２３（１）との間の暗号化通信に用いる、公開鍵Ｋｐ及び秘密鍵Ｋｓを取得する。ストレージ３５は、この取得した公開鍵Ｋｐ及び秘密鍵Ｋｓを予め定められた記憶領域へ記憶する。
【００６８】
また、借用サーバ２３（１）は、ストレージ３５上のルートファイルシステムに切り替えた後の公開鍵Ｋｐ及び秘密鍵Ｋｓを用いた暗号化通信に必要なディレクトリを、当該ルートファイルシステムに追加するための処理も行う。この追加されたディレクトリの１つに、取得した公開鍵Ｋｐ及び秘密鍵Ｋｓが記憶されてもよい。
【００６９】
その後、ルートファイルシステムの切替が汎用のＯＳ機構に従って行われ(図５のステップＳ１６)、ルートファイルシステムをストレージ３５に切り替えて（具体的には、ルートファイルシステムの切替コマンドを送信する）、ストレージ３５のルートファイルシステムが借用サーバ２３（１）にマウントされ、借用サーバ２３（１）により、ストレージ３５のルートファイルシステム上のＯＳプログラムが起動される(図５のステップＳ１７)。
【００７０】
借用サーバ２３（１）にストレージ３５のルートファイルシステムをマウントする方法、すなわち、融通用ＯＳ起動プログラムを実行している借用サーバ２３（１）にストレージ３５をルートファイルシステムとして認識させる方法としては、実際には、例えばＬｉｎｕｘ（登録商標）環境の場合、ＮＦＳ（Ｎｅｔｗｏｒｋ Ｆｉｌｅ Ｓｙｓｔｅｍ）やｉＳＣＳＩ（Ｉｎｔｅｒｎｅｔ ＳＣＳＩ）を用いる。ＮＦＳとｉＳＣＳＩを比較した場合、ＮＦＳはリモートに存在するファイルシステム、ｉＳＣＳＩはローカルに存在するファイルシステムとして認識するので、ファイルシステムとしての見え方は異なる。しかし、どちらの方法でも、図３の構成及び図５のステップＳ１３〜ステップＳ１７の処理の流れでルートファイルシステムの切替が可能である。
【００７１】
なお、上記実施形態では、ストレージ３５は、借用制御装置１１に接続されている形態について説明したが、この場合に限らず、ストレージ３５が借用側ネットワーク１００に直接接続されている形態であってもよい。この場合のストレージ（以下、記憶装置と呼ぶ）は、図５の公開鍵送受信部３２，ソフトウェア暗号／復号化部３３及びストレージ３５を含む構成を有し、図５において、借用制御装置１１を当該記憶装置に置き換え、借用制御装置１１と借用サーバ２３（１）との間の処理動作を記憶装置と借用サーバ２３（１）との間の処理動作と読み替え、さらに、借用サーバ２３（１）から記憶装置への暗号化通信に、記憶装置に予め保持されている一対の公開鍵及び秘密鍵を用いることにより、上述同様に適用可能である。この記憶装置に予め保持されている公開鍵は、例えば、図５のステップＳ１４の前段に、記憶装置の公開鍵送受信部３２により、借用サーバ２３（１）へ送信される。借用サーバ２３（１）のソフトウェア暗号／復号化部６３は、このストレージ３５から送信された公開鍵を用いて、ステップＳ１４以降で、ストレージ３５へ送信すべきデータを暗号化して送信する。
【００７２】
以上説明したように、上記実施形態によれば、借用側ネットワーク２００に接続された借用サーバ２３（１）が、
（ａ）貸出側ネットワーク１００に接続するために必要なネットワーク設定情報を受信し、
（ｂ）貸出側ネットワークとの間で暗号化通信を行うための一対の公開鍵と秘密鍵を生成し、
（ｃ）当該公開鍵を送信し、
（ｄ）貸出側ネットワーク上の記憶装置（ストレージ３５）に記憶されているオペレーティングシステムのプログラムを起動するＯＳ起動プログラムを生成するために必要な、当該公開鍵を用いて暗号化された暗号化データを受信し、
（ｅ）当該暗号化データを当該秘密鍵を用いて復号することにより得られるデータに、当該ネットワーク設定情報と、当該公開鍵及び当該秘密鍵とを書き込むことにより、当該ＯＳ起動プログラムを生成し、
（ｆ）予め定められたメモリ領域内に、当該サーバ装置の再起動によりデータが消去されることのない待避領域を生成し、当該待避領域に少なくとも当該ＯＳ起動プログラムを一時記憶した後、当該サーバ装置を再起動して、当該ＯＳ起動プログラムを起動する。
【００７３】
このような構成により、借用サーバ２３（１）のディスクを一切使わずに、ＯＳ起動プログラム内に埋め込まれた、（借用サーバ上で生成した）ストレージとの間の暗号化通信に用いる鍵対を継承しながら、ストレージ３５上のＯＳの起動が実現できる。
【００７４】
このため、借用サーバ２３（１）の返却時に借用サーバ２３（１）のディスク上の情報を消去するための処理を行う必要がなく、情報漏洩を回避することができる。また、ディスクにデータを書き込む時間が皆無となるため、サーバ移送時間の短縮ができる。
【００７５】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００７６】
【図１】本発明の実施形態に係るシステム全体の構成例を示した図。
【図２】借用制御装置、ブート制御装置及び借用サーバの要部の構成例を示す図。
【図３】借用制御装置と借用サーバの要部の構成例を示す図。
【図４】借用制御装置、ブート制御装置及び借用サーバの間の処理手順を説明するためのシーケンス図。
【図５】借用制御装置と借用サーバとの間の処理手順を説明するためのシーケンス図。
【図６】借用サーバのシステム高速切替処理を説明するためのフローチャート。
【符号の説明】
【００７７】
１１…借用制御装置
１２…サーバマネージャ
１３…サーバ群
２１…ブート制御装置
２２…貸出側サーバマネージャ
２３（１）…借用サーバ
３１…融通要求送信部
３２…公開鍵送受信部
３３…ソフトウェア暗号/復号化部
３４…記憶部
３５…ストレージ（記憶装置）
５０…メモリ
５２…融通情報受信部
５３…鍵対生成部
５４…ソフトウェア暗号／復号化部
５５…融通用ＯＳ起動プログラム生成部
５６…システム高速切替実行部、
６２…鍵対管理部
６３…ソフトウェア暗号／復号化部
６４…ソフトウェア暗号化・復号化設定調整部
１００…借用側ネットワーク
２００…貸出側ネットワーク
【図１】
0004738175.tif 000002
【図２】
0004738175.tif 000003
【図３】
0004738175.tif 000004
【図４】
0004738175.tif 000005
【図５】
0004738175.tif 000006
【図６】
0004738175.tif 000007