(57)【要約】【課題】仮想サーバ同士の通信制限をユーザが容易に行えるようにする。【解決手段】サーバ装置１０Ａ，１０Ｂは、複数の仮想サーバ１２Ａ〜１２Ｆと、各仮想サーバ１２Ａ〜１２Ｆに対して、２つ以上の仮想サーバにおいて共通なグループ識別情報を設定する設定部１８Ａ，１８Ｂと、複数の仮想サーバ１２Ａ〜１２Ｆを互いに通信可能に接続する接続部１６Ａ，１６Ｂであって、複数の仮想サーバ１２Ａ〜１２Ｆのうち１つの仮想サーバが他の仮想サーバとデータの通信をする場合に、１つの仮想サーバに設定されているグループ識別情報と、他の仮想サーバに設定されているグループ識別情報とに基づいて、通信を制限する接続部１６Ａ，１６Ｂと、を備える。【選択図】図３
2018136751.tif 000002
【特許請求の範囲】
【請求項１】
複数の仮想サーバと、
各仮想サーバに対して、２つ以上の仮想サーバにおいて共通なグループ識別情報を設定する設定部と、
前記複数の仮想サーバを互いに通信可能に接続する接続部であって、前記複数の仮想サーバのうち１つの仮想サーバが他の仮想サーバとデータの通信をする場合に、前記１つの仮想サーバに設定されているグループ識別情報と、前記他の仮想サーバに設定されているグループ識別情報とに基づいて、前記通信を制限する接続部と、
を備えるサーバ装置。
【請求項２】
前記接続部は、前記１つの仮想サーバから前記データを取得した場合に、前記１つの仮想サーバに設定されているグループ識別情報を取得し、取得したグループ識別情報が、前記他の仮想サーバに設定されているグループ識別情報と一致するか否かを判定し、肯定判定をした場合には前記他の仮想サーバへ転送し、否定判定をした場合には前記他の仮想サーバへの転送を禁止する、
請求項１に記載のサーバ装置。
【請求項３】
前記接続部は、前記否定判定をした場合には前記データを削除する、
請求項２に記載のサーバ装置。
【請求項４】
前記複数の仮想サーバそれぞれに設けられ、前記複数の仮想サーバのそれぞれと前記接続部とを接続し、前記データの経路とされる経路部を更に備え、
前記グループ識別情報は、前記複数の仮想サーバそれぞれに対応する経路部に対して設定されている、
請求項１乃至３の何れか１項に記載のサーバ装置。
【請求項５】
前記接続部は、前記１つの仮想サーバに設定されているグループ識別情報を前記データに付与する、
請求項１乃至４の何れか１項に記載のサーバ装置。
【請求項６】
複数の仮想サーバを備えるコンピュータを、
各仮想サーバに対して、２つ以上の仮想サーバにおいて共通なグループ識別情報を設定する設定部、
前記複数の仮想サーバを互いに通信可能に接続する接続部であって、前記複数の仮想サーバのうち１つの仮想サーバが他の仮想サーバとデータの通信をする場合に、前記１つの仮想サーバに設定されているグループ識別情報と、前記他の仮想サーバに設定されているグループ識別情報とに基づいて、前記通信を制限する接続部、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ装置及びプログラムに関する。
【背景技術】
【０００２】
従来から、サーバ装置（論理サーバ）上に複数の仮想サーバを設け、仮想サーバ同士で通信する技術が知られている（例えば、特許文献１参照。）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−３１６１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、仮想サーバ同士で自由に通信ができてしまうと、セキュリティの観点から好ましくない場合があるため、仮想サーバ同士の通信を制限する必要がある。
【０００５】
本発明は以上説明した事情を鑑みてなされたものであり、仮想サーバ同士の通信制限をユーザが容易に行うことができるサーバ装置及びプログラムを提供することを目的の一つとする。
【課題を解決するための手段】
【０００６】
本発明の第一態様におけるサーバ装置は、複数の仮想サーバと、各仮想サーバに対して、２つ以上の仮想サーバにおいて共通なグループ識別情報を設定する設定部と、前記複数の仮想サーバを互いに通信可能に接続する接続部であって、前記複数の仮想サーバのうち１つの仮想サーバが他の仮想サーバとデータの通信をする場合に、前記１つの仮想サーバに設定されているグループ識別情報と、前記他の仮想サーバに設定されているグループ識別情報とに基づいて、前記通信を制限する接続部と、を備える。
【０００７】
この態様によれば、サーバ装置において仮想サーバが新たに増えた場合、ユーザは、既存の仮想サーバに設定されているグループ識別情報との関係を考慮し、新たに増えた仮想サーバに対してグループ識別情報を設定することで、既存の仮想サーバに対してグループ識別情報の設定を変えることなく、新たに増えた仮想サーバと既存の仮想サーバとの通信を制限することができる。したがって、仮想サーバ同士の通信制限をユーザが容易に行うことができる。
【発明の効果】
【０００８】
本発明によれば、仮想サーバ同士の通信制限をユーザが容易に行うことができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、本実施形態のサーバ装置を含む情報処理システムの概略図である。
【図２】図２は、物理サーバのハードウェア構成の一例を概略的に示す図である。
【図３】図３は、図１に示す情報処理システムの機能的な構成の一例を概略的に示すブロック図である。
【図４】図４は、図３に示す情報処理システムの機能的な構成において、仮想サーバ同士の通信処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照しながら本発明の実施形態について説明する。説明の理解を容易にするため、各図面において同一の構成要素及びステップに対しては可能な限り同一の符号を付して、重複する説明は省略する。
【００１１】
図１は、本実施形態のサーバ装置を含む情報処理システムの概略図である。図１に示すように、情報処理システム１は、サーバ装置としての一又は複数の物理サーバ１０を備える。複数の物理サーバ１０は、通信ネットワークＮＴを介して互いに接続されていることにより、互いに通信可能である。
【００１２】
物理サーバ１０は、一又は複数の仮想サーバ１２を備えている。仮想サーバ１２は、物理サーバ１０に記憶されたプログラムにより実現される。仮想サーバ１２は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）やアプリケーションを実行させることができ、ユーザに対してあたかも独立したコンピュータを提供するものである。
【００１３】
図２は、物理サーバ１０のハードウェア構成の一例を概略的に示す図である。図２に示すように、物理サーバ１０は、制御装置２０と、通信装置２６と、記憶装置２８と、を備える。制御装置２０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２２及びメモリ２４を主に備えて構成される。
【００１４】
制御装置２０では、ＣＰＵ２２がメモリ２４或いは記憶装置２８等に格納された所定のプログラムを実行することにより、各種の機能実現手段として機能する。この機能実現手段の詳細については後述する。
【００１５】
通信装置２６は、外部の装置と通信するための通信インターフェース等で構成される。通信装置２６は、例えば、他の物理サーバ１０との間で各種の情報を送受信する。
【００１６】
記憶装置２８は、ハードディスク等で構成される。記憶装置２８は、制御装置２０における処理の実行に必要な各種プログラムや各種の情報、及び処理結果の情報を記憶する。
【００１７】
なお、物理サーバ１０は、専用又は汎用のコンピュータなどの情報処理装置を用いて実現することができる。なお、物理サーバ１０は、単一の情報処理装置より構成されるものであっても、通信ネットワークＮＴ上に分散した複数の情報処理装置より構成されるものであってもよい。
【００１８】
なお、図２は、物理サーバ１０が有する主要なハードウェア構成の一部を示しているに過ぎず、物理サーバ１０は、サーバが一般的に備える他の構成を備えることができる。
【００１９】
図３は、図１に示す情報処理システム１の機能的な構成の一例を概略的に示すブロック図である。図３に示すように、情報処理システム１は、例えば、物理サーバ１０として、第１物理サーバ１０Ａと、第２物理サーバ１０Ｂとを備える。
【００２０】
第１物理サーバ１０Ａは、機能的な構成として、例えば、第１仮想サーバ１２Ａと、第２仮想サーバ１２Ｂと、第３仮想サーバ１２Ｃと、第１経路部１４Ａと、第２経路部１４Ｂと、第３経路部１４Ｃと、第１接続部１６Ａと、設定部１８Ａと、を例示的に備える。第２物理サーバ１０Ｂは、機能的な構成として、例えば、第４仮想サーバ１２Ｄと、第５仮想サーバ１２Ｅと、第６仮想サーバ１２Ｆと、第４経路部１４Ｄと、第５経路部１４Ｅと、第６経路部１４Ｆと、第２接続部１６Ｂと、設定部１８Ｂと、を例示的に備える。これら機能的な構成は、制御装置２０がプログラムを実行することにより実現される。
【００２１】
第１仮想サーバ１２Ａ、第２仮想サーバ１２Ｂ、第３仮想サーバ１２Ｃ、第４仮想サーバ１２Ｄ、第５仮想サーバ１２Ｅ、第６仮想サーバ１２Ｆは、例えば他の仮想サーバを宛先としてデータを送信することが可能な機能部である。本実施形態では、データは、パケットデータである。以下、パケットデータを単に「パケット」と称す。
【００２２】
第１経路部１４Ａ、第２経路部１４Ｂ、第３経路部１４Ｃ、第４経路部１４Ｄ、第５経路部１４Ｅ、及び、第６経路部１４Ｆは、パケットの経路とされる機能部である。各経路部１４Ａ〜１４Ｆは、例えばＴＡＰデバイスやＴＡＰインターフェースと呼ばれるものである。
【００２３】
第１経路部１４Ａは、第１仮想サーバ１２Ａに対応付けて設けられ、第１仮想サーバ１２Ａと第１接続部１６Ａとを接続する。第２経路部１４Ｂは、第２仮想サーバ１２Ｂに対応付けて設けられ、第２仮想サーバ１２Ｂと第１接続部１６Ａとを接続する。第３経路部１４Ｃは、第３仮想サーバ１２Ｃに対応付けて設けられ、第３仮想サーバ１２Ｃと第１接続部１６Ａとを接続する。第４経路部１４Ｄは、第４仮想サーバ１２Ｄに対応付けて設けられ、第４仮想サーバ１２Ｄと第２接続部１６Ｂとを接続する。第５経路部１４Ｅは、第５仮想サーバ１２Ｅに対応付けて設けられ、第５仮想サーバ１２Ｅと第２接続部１６Ｂとを接続する。第６経路部１４Ｆは、第６仮想サーバ１２Ｆに対応付けて設けられ、第６仮想サーバ１２Ｆと第２接続部１６Ｂとを接続する。
【００２４】
各経路部１４Ａ〜１４Ｆには、２つ以上の仮想サーバにおいて共通とすることが可能なグループ識別情報が設定されている。本実施形態では、グループ識別情報は、非限定の例示としてグループ番号とする。例えば、第１経路部１４Ａには１４番（Ｇｒ：１４）、第２経路部１４Ｂには２０番（Ｇｒ：２０）、第３経路部１４Ｃには２０番（Ｇｒ：２０）が設定されている。また、第４経路部１４Ｄには１４番（Ｇｒ：１４）、第５経路部１４Ｅには１４番（Ｇｒ：１４）、第６経路部１４Ｆには２０番（Ｇｒ：２０）が設定されている。経路部１４Ａ〜１４Ｆは、仮想サーバ１２Ａ〜１２Ｆそれぞれに設けられていることから、各仮想サーバ１２Ａ〜１２Ｆには、グループ番号が対応付けられていると言える。なお、グループ番号は、経路部１４Ａ〜１４Ｆにではなく、仮想サーバ１２Ａ〜１２Ｆ自身に設定されてもよい。
【００２５】
第１接続部１６Ａ及び第２接続部１６Ｂは、複数の仮想サーバ１２Ａ〜１２Ｆを互いに通信可能に接続する機能部である。第１接続部１６Ａ及び第２接続部１６Ｂは、それぞれ通信装置２６に接続されている。第１接続部１６Ａ及び第２接続部１６Ｂは、複数の仮想サーバ１２Ａ〜１２Ｆのうち１つの仮想サーバが他の仮想サーバとパケットの通信をする場合に、１つの仮想サーバに設定されているグループ番号と、他の仮想サーバに設定されているグループ番号とに基づいて、通信を制限する。
【００２６】
本実施形態では、第１接続部１６Ａ及び第２接続部１６Ｂは、複数の仮想サーバ１２Ａ〜１２Ｆのうち１つの仮想サーバから他の仮想サーバを宛先としてデータが送信される過程でデータを取得した場合に、１つの仮想サーバに設定されているグループ番号を取得し、取得したグループ番号が、宛先に対応付けられているグループ番号と一致するか否かを判定し、肯定判定をした場合には宛先へ転送し、否定判定をした場合には宛先への転送を禁止する。ここで、否定判定をした場合には、例えば接続部１６Ａ、１６Ｂは、取得したデータを削除する。
【００２７】
設定部１８Ａ、１８Ｂは、各仮想サーバ１２Ａ〜１２Ｆに対応する各経路部１４Ａ〜１４Ｆに対して、グループ番号をユーザの操作に応じて設定する機能部である。例えば、設定部１８Ａ、１８Ｂは、経路部１４が新たに設けられる場合に、新たな経路部１４に対するグループ番号の指定をユーザから受け付け、受け付けたグループ番号を新たな経路部１４に対して設定する。なお、設定部１８Ａ、１８Ｂは、手動ではなく、グループ番号を自動的に設定するようにしてもよい。
【００２８】
図４は、図３に示す情報処理システム１の機能的な構成において、仮想サーバ１２同士の通信処理の流れの一例を示すフローチャートである。
【００２９】
（ステップＳＰ１０）
複数の仮想サーバ１２Ａ〜１２Ｆのうち１つの仮想サーバ、例えば第１仮想サーバ１２Ａがパケットを作成する。そして、処理は、ステップＳＰ１２の処理に移行する。
【００３０】
（ステップＳＰ１２）
第１仮想サーバ１２Ａは、特定の仮想サーバを宛先としてパケットを、対応する第１経路部１４Ａを介して送信する。そして、処理は、ステップＳＰ１４の処理に移行する。
【００３１】
（ステップＳＰ１４）
第１経路部１４Ａは、第１仮想サーバ１２Ａからパケットを取得し、これを第１接続部１６Ａに転送する。そして、処理は、ステップＳＰ１６の処理に移行する。
【００３２】
（ステップＳＰ１６）
第１接続部１６Ａは、第１仮想サーバ１２Ａから第１経路部１４Ａを介してパケットを取得する。この場合に、第１仮想サーバ１２Ａに対応付けられているグループ番号を取得する。本実施形態では、第１仮想サーバ１２Ａの第１経路部１４Ａに設定されているグループ番号（１４番）を取得する。なお、このグループ番号は、パケットと共に第１経路部１４Ａから転送されてもよい。そして、処理は、ステップＳＰ１８の処理に移行する。
【００３３】
（ステップＳＰ１８）
第１接続部１６Ａは、取得したグループ番号をパケットに付与する。そして、処理は、ステップＳＰ２０の処理に移行する。
【００３４】
（ステップＳＰ２０）
第１接続部１６Ａは、パケットの送信先（宛先）が、パケットを送信した第１仮想サーバ１２Ａを備える同一の物理サーバ１０Ａ内か否か判定する。そして、肯定判定をされた場合には、処理はステップＳＰ２８の処理に移行し、否定判定をされた場合には、処理はステップＳＰ２２の処理に移行する。
【００３５】
（ステップＳＰ２２）
第１接続部１６Ａは、パケットを通信装置２６へ転送する。そして、処理は、ステップＳＰ２４の処理に移行する。
【００３６】
（ステップＳＰ２４）
物理サーバ１０Ａの通信装置２６は、パケットを、ネットワークＮＴを介して、宛先に対応する物理サーバ、例えば物理サーバ１０Ｂへ転送する。そして、処理は、ステップＳＰ２６の処理に移行する。
【００３７】
（ステップＳＰ２６）
物理サーバ１０Ｂの通信装置２６は、物理サーバ１０Ａからパケットを受信する。これに応答して、通信装置２６は、受信したパケットを第２接続部１６Ｂへ転送する。そして、処理は、ステップＳＰ２８の処理に移行する。
【００３８】
（ステップＳＰ２８）
第１接続部１６Ａ又は第２接続部１６Ｂは、パケットに付与されているグループ番号（１４番）が、宛先に対応する経路部のグループ番号と一致するか否かを判定する。そして、肯定判定をされた場合には処理は、ステップＳＰ３０の処理に移行し、否定判定をされた場合には処理は、ステップＳＰ３２の処理に移行する。
【００３９】
例えば、宛先に対応する経路部が第２経路部１４Ｂである場合、そのグループ番号は２０番であるので、パケットに付与されているグループ番号（１４番）と一致せず、ステップＳＰ２８の判定で否定判定される。また、宛先に対応する経路部が第３経路部１４Ｃである場合、そのグループ番号は２０番であるので、パケットに付与されているグループ番号（１４番）と一致せず、ステップＳＰ２８の判定で否定判定される。また、宛先に対応する経路部が第４経路部１４Ｄである場合、そのグループ番号は１４番であるので、パケットに付与されているグループ番号（１４番）と一致し、ステップＳＰ２８の判定で肯定判定される。
【００４０】
（ステップＳＰ３０）
第１接続部１６Ａ又は第２接続部１６Ｂは、パケットを、対応する経路部を介して宛先に転送する。そして、一連の処理が終了する。
【００４１】
（ステップＳＰ３２）
第１接続部１６Ａ又は第２接続部１６Ｂは、パケットを宛先へ転送せず、破棄（削除）する。そして、一連の処理が終了する。
【００４２】
ここで、通信を制限する方法としては、参考例として、仮想サーバ毎に、通信制限する対象の仮想サーバのＩＰアドレスを登録しておき、登録したＩＰアドレスの仮想サーバから通信があった場合には、通信を禁止する方法が考えられる。しかしながら、この方法では、仮想サーバが増える度に、増えた仮想サーバにおいて、通信を制限したい仮想サーバのＩＰアドレスを全て登録する必要があり、また、既存の仮想サーバにおいても、増えた仮想サーバとの通信を制限する場合にはそのＩＰアドレスを登録する必要があり、物理サーバのユーザ（管理者等）にとって、通信制限を行うのが煩雑である。
【００４３】
これに対して、本実施形態によれば、サーバ装置１０において仮想サーバ１２が新たに増えた場合、ユーザは、既存の仮想サーバ１２Ａ〜１２Ｆに設定されているグループ番号との関係を考慮し、新たに増えた仮想サーバに対してグループ番号を設定することで、既存の仮想サーバ１２Ａ〜１２Ｆに対してグループ番号の設定を変えることなく、新たに増えた仮想サーバと既存の仮想サーバ１２Ａ〜１２Ｆとの通信を制限することができる。したがって、仮想サーバ１２同士の通信制限をユーザが容易に行うことができる。
【００４４】
また、第１接続部１６Ａ又は第２接続部１６Ｂは、１つの仮想サーバからパケットを取得した場合に、１つの仮想サーバに設定されているグループ番号を取得し、取得したグループ番号が、宛先となる他の仮想サーバに設定されているグループ番号と一致するか否かを判定し、肯定判定をした場合には他の仮想サーバへ転送し、否定判定をした場合には他の仮想サーバへの転送を禁止する。このように、第１接続部１６Ａ又は第２接続部１６Ｂは、取得したグループ番号が、宛先となる他の仮想サーバに設定されているグループ番号と一致しない場合には、他の仮想サーバへの転送を禁止するので、仮想サーバ１２同士の通信制限をより確実に行うことができる。
【００４５】
また、グループ番号は、複数の仮想サーバ１２Ａ〜１２Ｆそれぞれに対応する経路部１４Ａ〜１４Ｆに対して設定されている。ここで、仮想サーバ１２Ａ〜１２Ｆのユーザは、サーバ装置１０のユーザ（管理者）と異なる場合があるが、この場合でも、経路部１４Ａ〜１４Ｆは、管理者が管理する。したがって、グループ番号を経路部１４Ａ〜１４Ｆに対して設定するようにすれば、グループ番号を複数の仮想サーバ１２Ａ〜１２Ｆそれ自身に設定する場合に比べて、管理者側で自由且つ確実に設定することができる。
【００４６】
また、第１接続部１６Ａ又は第２接続部１６Ｂは、否定判定をした場合には、言い換えれば、グループ番号が異なる場合には、パケットを削除するので、メモリ２４の消費を抑えることができる。
【００４７】
また、第１接続部１６Ａ又は第２接続部１６Ｂは、１つの仮想サーバ（送信元）に設定されているグループ番号をパケットに付与するので、通信が異なる物理サーバ１０間の通信であっても、グループ番号同士の一致の有無を確実に判定することができる。
【００４８】
＜変形例＞
以上、具体例を参照しつつ本発明の実施の形態について説明した。しかし、本発明はこれらの具体例に限定されるものではない。すなわち、これら具体例に、当業者が適宜設計変更を加えたものも、本発明の特徴を備えている限り、本発明の範囲に包含される。前述した各具体例が備える各要素およびその配置、条件、形状などは、例示したものに限定されるわけではなく適宜変更することができる。
【００４９】
例えば、ステップＳＰ１８においてグループ番号をパケットに付与する処理を説明したが、この処理は省略してもよい。
【符号の説明】
【００５０】
１０、１２Ａ〜１２Ｆ…サーバ装置（物理サーバ）
１２、１２Ａ〜１２Ｆ…仮想サーバ
１４、１４Ａ〜１４Ｆ…経路部
１６Ａ，１６Ｂ…接続部
１８Ａ、１８Ｂ…設定部
【図１】
2018136751.tif 000003
【図２】
2018136751.tif 000004
【図３】
2018136751.tif 000005
【図４】
2018136751.tif 000006