(57)【要約】【課題】サーバ管理者の行動が制限されることなく、サーバ群へのコマンド入力を実現可能なＷｅｂサーバ及び方法を提供すること。【解決手段】Ｗｅｂサーバ１０のＷｅｂプログラム部１１は、ユーザ端末２０から、サーバ群３０に含まれるサーバを指定して、ＨＴＴＰプロトコルにより受け付けた入力を、当該サーバに対するコマンドとしてコマンド受付ＤＢ１４に書き込む。Ｗｅｂサーバ１０のコマンドライン部１２は、コマンド受付ＤＢ１４に書き込まれた情報を読み込み、暗号化された通信プロトコルにより対象サーバへのコマンド入力を実行し、実行結果をコマンド受付ＤＢ１４に書き込む。Ｗｅｂプログラム部１１は、ユーザ端末２０からの要求に応じて、コマンド受付ＤＢ１４に書き込まれた実行結果をユーザ端末２０に送信する。【選択図】図１
2011134255.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ端末とＨＴＴＰプロトコルにより通信可能であり、サーバ群に含まれる各々のサーバと暗号化されたプロトコルにより通信可能に接続されたＷｅｂサーバであって、
前記ユーザ端末から、前記サーバ群の中のサーバを指定する情報及び入力コマンドを示す情報を含む入力を受け付ける入力受付手段と、
受け付けた前記入力に含まれる入力コマンドを示す情報を、前記サーバ群のうち前記指定されたサーバに対するコマンドとして記憶するコマンド記憶手段と、
前記コマンド記憶手段に記憶された前記コマンドを所定の時間間隔で読み込むコマンド読込手段と、
前記コマンド読込手段により読み込まれた前記コマンドを前記指定されたサーバに対して実行するコマンド実行手段と、
前記コマンド実行手段の実行結果を記憶する実行結果記憶手段と、
前記実行結果記憶手段に記憶された前記実行結果を前記ユーザ端末にＷｅｂページとして送信する実行結果送信手段と、
を備えるＷｅｂサーバ。
【請求項２】
前記実行結果送信手段は、前記ユーザ端末から前記実行結果の送信要求を受信することに応じて、前記実行結果を送信する請求項１に記載のＷｅｂサーバ。
【請求項３】
前記実行結果送信手段は、前記実行結果記憶手段に前記実行結果が記憶されることに応じて、前記実行結果を送信する請求項１に記載のＷｅｂサーバ。
【請求項４】
ユーザ端末とＨＴＴＰプロトコルにより通信可能であり、サーバ群に含まれる各々のサーバと暗号化されたプロトコルにより通信可能に接続されたＷｅｂサーバを介して、前記ユーザ端末から前記サーバ群にコマンドを実行する方法であって、
前記ユーザ端末から、前記サーバ群の中のサーバを指定する情報及び入力コマンドを示す情報を含む入力を受け付ける入力受付工程と、
受け付けた前記入力に含まれる入力コマンドを示す情報を、前記サーバ群のうち前記指定されたサーバに対するコマンドとして記憶するコマンド記憶工程と、
記憶された前記コマンドを所定の時間間隔で読み込むコマンド読込工程と、
読み込まれた前記コマンドを前記指定されたサーバに対して実行するコマンド実行工程と、
前記コマンド実行工程の実行結果を記憶する実行結果記憶工程と、
前記実行結果記憶工程に記憶された前記実行結果を前記ユーザ端末にＷｅｂページとして送信する実行結果送信工程と、
を含む方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Ｗｅｂサーバ及び方法、より詳しくは、ユーザ端末のＷｅｂブラウザからの入力に応じて、サーバ群へのコマンド操作を実現可能なＷｅｂサーバ及び方法に関する。
【背景技術】
【０００２】
インターネットの爆発的な普及により、ポータルサイトや動画投稿サイトなどの様々なサービスが提供されるようになっている。このような大規模なサービスを提供するサイトは、多数のサーバ群により運営されるところ、サーバ障害が生じるとサービスの提供が困難になり、多大な損失が生じてしまうことになる。そのため、運営会社のサーバ管理者は、サーバ障害によるサービス停止を防止すべく、サーバの管理に膨大な労力をかけている。
【０００３】
サーバ管理者の労力を軽減すべく、サーバ障害の早期発見を実現するための様々な方法が知られている（例えば、特許文献１参照）。このような障害発見方法を使用することで、サーバ管理者は容易かつ早期にサーバ障害を発見することができる。
また、発見されたサーバ障害について、過去に発生した障害事例の履歴と比較することでサーバ障害の復旧を容易にする方法なども知られている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−１４９３９６号公報
【特許文献２】特開平１０−３１２３２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、サーバ障害が生じた場合や、メンテナンスを行う場合には、サイト運営会社は、障害が生じているサーバの復旧を実現し、或いは、メンテナンスを行うサーバを操作する必要がある。この点、特許文献１、２の方法により早期発見や復旧が容易になったとしても、サーバ管理者が当該サーバにアクセス可能な端末を使用して復旧作業やメンテナンス作業を行う必要があり、サーバ管理者の行動が制限されてしまっていた。そこで、サーバの復旧作業やメンテナンス作業などを含む運用作業を、サーバ管理者が遠隔地からリモートで復旧可能な方法が望まれていた。
【０００６】
ここで、遠隔地の端末からセキュリティを維持した状態でサーバにアクセスするために、通信電文を暗号化したり、電子証明書を用いて端末を当該サーバに認証させたりする技術が普及している。しかしながら、このような方法では、通信の暗号化のためのソフトウェアを端末に導入したり、電子証明書を導入したりする必要があり、作業が可能な端末が依然として限られる。さらに、このような暗号化や電子証明書を各端末に配布するための運用管理が煩雑になる上、逆にそのような端末が悪意の第三者の手に渡った場合には、サーバに自由にアクセス可能となってしまい、これが致命的なセキュリティホールとなるので適切ではない。
【０００７】
本発明はこのような問題に鑑みてなされたものであり、サーバ管理者の行動が制限されることなく、サーバ群へのコマンド入力を実現可能なＷｅｂサーバ及び方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明では、以下のような解決手段を提供する。
【０００９】
（１）  ユーザ端末とＨＴＴＰプロトコルにより通信可能であり、サーバ群に含まれる各々のサーバと暗号化されたプロトコルにより通信可能に接続されたＷｅｂサーバであって、前記ユーザ端末から、前記サーバ群の中のサーバを指定する情報及び入力コマンドを示す情報を含む入力を受け付ける入力受付手段と、受け付けた前記入力に含まれる入力コマンドを示す情報を、前記サーバ群のうち前記指定されたサーバに対するコマンドとして記憶するコマンド記憶手段と、前記コマンド記憶手段に記憶された前記コマンドを所定の時間間隔で読み込むコマンド読込手段と、前記コマンド読込手段により読み込まれた前記コマンドを前記指定されたサーバに対して実行するコマンド実行手段と、前記コマンド実行手段の実行結果を記憶する実行結果記憶手段と、前記実行結果記憶手段に記憶された前記実行結果を前記ユーザ端末にＷｅｂページとして送信する実行結果送信手段と、を備えるＷｅｂサーバ。
【００１０】
（１）に記載のＷｅｂサーバによれば、ユーザ端末からＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）プロトコルにより受け付けた入力に基づいて、Ｗｅｂサーバがユーザ端末に代わりサーバ群へのコマンド入力を実行する。
ここで、ユーザ端末には、ＨＴＴＰプロトコルで通信可能な機能、すなわち、通常の端末が備えるＷｅｂブラウザがあれば足り、また、ユーザ端末はＷｅｂサーバと通信するだけであるため、ユーザ端末とサーバ群との間に直接暗号化などをする必要はない。そのため、ユーザ端末の種別に制限がかけられることがない。
したがって、サーバ管理者は、任意のユーザ端末（例えば、自己の携帯電話）を常備するだけで遠隔地からサーバ群へのコマンド入力を実現することができ、サーバ管理者の行動が制限されることなく、サーバ群へのコマンド入力を実現することができる。
【００１１】
また、Ｗｅｂサーバは、Ｗｅｂサーバとサーバ群とは暗号化（例えば、ＳＳＨ（Ｓｅｃｕｒｅ  Ｓｈｅｌｌ））された通信プロトコル（例えば、ｔｅｌｎｅｔ）により接続される。これにより、サーバ群へのアクセスを保護することができる。
したがって、サーバ管理者の行動が制限されることがないだけでなく、サーバ群へのセキュアなコマンド入力を実現することができる。
【００１２】
（２）  前記実行結果送信手段は、前記ユーザ端末から前記実行結果の送信要求を受信することに応じて、前記実行結果を送信する（１）に記載のＷｅｂサーバ。
【００１３】
（２）に記載のＷｅｂサーバによれば、ユーザ端末からの送信要求、すなわち、サーバ管理者の操作に応じてコマンドの実行結果がユーザ端末に送信されるため、利便性を高めることができる。
【００１４】
（３）  前記実行結果送信手段は、前記実行結果記憶手段に前記実行結果が記憶されることに応じて、前記実行結果を送信する（１）に記載のＷｅｂサーバ。
【００１５】
（３）に記載のＷｅｂサーバによれば、コマンドの実行結果は、実行結果記憶手段に記憶されるたびに、すなわち、コマンドが実行されるたびに、ユーザ端末に送信される。そのため、ユーザ端末には直接コマンド操作を行った場合のような表示が行われることになり、利便性を高めることができる。
【００１６】
（４）  ユーザ端末とＨＴＴＰプロトコルにより通信可能であり、サーバ群に含まれる各々のサーバと暗号化されたプロトコルにより通信可能に接続されたＷｅｂサーバを介して、前記ユーザ端末から前記サーバ群にコマンドを実行する方法であって、前記ユーザ端末から、前記サーバ群の中のサーバを指定する情報及び入力コマンドを示す情報を含む入力を受け付ける入力受付工程と、受け付けた前記入力に含まれる入力コマンドを示す情報を、前記サーバ群のうち前記指定されたサーバに対するコマンドとして記憶するコマンド記憶工程と、記憶された前記コマンドを所定の時間間隔で読み込むコマンド読込工程と、読み込まれた前記コマンドを前記指定されたサーバに対して実行するコマンド実行工程と、前記コマンド実行工程の実行結果を記憶する実行結果記憶工程と、前記実行結果記憶工程に記憶された前記実行結果を前記ユーザ端末にＷｅｂページとして送信する実行結果送信工程と、を含む方法。
【００１７】
（４）に記載の方法によれば、当該方法を実施することにより、（１）のＷｅｂサーバと同様の効果が期待できる。
【発明の効果】
【００１８】
本発明によれば、サーバ管理者の行動が制限されることなく、サーバ群へのコマンド入力を実現可能なＷｅｂサーバ及び方法を提供できる。
【図面の簡単な説明】
【００１９】
【図１】本発明のＷｅｂサーバの構成を示すブロック図である。
【図２】ユーザＩＤ管理データベースを示す図である。
【図３】コマンド受付データベースを示す図である。
【図４】コマンド実行処理を示す図である。
【図５】実行結果送信処理を示す図である。
【図６】実行結果送信処理を示す図である。
【図７】ログイン時の動作例を示す図である。
【図８】コマンド入力時の動作例を示す図である。
【図９】実行結果出力時の動作例を示す図である。
【図１０】コマンド入力に引数を指定する場合の動作例を示す図である。
【図１１】別実施形態におけるログイン時の動作例を示す図である。
【発明を実施するための形態】
【００２０】
以下、本発明の実施形態について図を参照し、説明する。
【００２１】
［Ｗｅｂサーバの概略］
図１は、本実施形態に係るＷｅｂサーバ１０を含む、ＨＴＴＰプロトコルによるコマンド実行システム１（以下、このシステムを「システム１」とする）の概略を示す図である。図１を参照して、本実施形態に係るＷｅｂサーバ１０について説明する。
システム１は、Ｗｅｂサーバ１０と、ユーザ端末２０と、サーバ群３０と、ユーザＩＤ管理サーバ４０と、を含んで構成される。
【００２２】
ここで、ユーザ端末２０は、Ｗｅｂブラウザを備え、Ｗｅｂサーバ１０とＨＴＴＰプロトコルにより通信可能な端末であれば足り、例えば、ＰＣ２０ａ（デスクトップＰＣ、ノートブックＰＣのいずれであってもよい）、携帯電話２０ｂ又はＰＤＡ２０ｃなど任意の端末を採用することができる。
また、サーバ群３０は、インターネット上のサービスを提供するサイトを運営する多数のサーバからなる。ユーザ端末２０からコンテンツ要求がされると、サーバ群３０内に蓄積されたデータがＷｅｂサーバ１０を介して送信されることで、ユーザ端末２０にコンテンツが提供される。
また、ユーザＩＤ管理サーバ４０は、後述するユーザＩＤ管理データベース（以下、データベースを「ＤＢ」とする）１３を管理するサーバである。具体的には、サーバ群３０に含まれるサーバのアクセス権限をどのユーザに対して開放（アクセス可能に）するかを管理する。なお、ユーザＩＤ管理ＤＢ１３の管理を別サーバに行わせることなく、Ｗｅｂサーバ１０に当該機能を持たせることとしてもよい。
【００２３】
続いて、本実施形態に係るＷｅｂサーバ１０は、Ｗｅｂプログラム部１１と、コマンドライン部１２と、記憶部の一部を構成するユーザＩＤ管理ＤＢ１３及びコマンド受付ＤＢ１４と、を備える。
【００２４】
Ｗｅｂプログラム部１１は、ユーザ端末２０のＷｅｂブラウザからのリクエスト要求に応じて、コンテンツの提供などといったレスポンスを返す制御部（ＨＴＴＰデーモン）であり、ユーザ端末２０のＷｅｂブラウザとＨＴＴＰプロトコルにより通信する。
Ｗｅｂプログラム部１１は、ログイン受付手段１１１と、アクセス可否確認手段１１１２と、入力受付手段１１３と、コマンド書込手段１１４と、実行結果読込手段１１５と、実行結果送信手段１１６と、を備える。
【００２５】
コマンドライン部１２は、サーバ群３０に含まれるサーバへのコマンドを実行すると共に実行結果を取得可能な制御部であり、サーバ群３０に含まれる各サーバとＳＳＨで暗号化されたｔｅｌｎｅｔなどの通信プロトコルにより通信する。なお、コマンドライン部１２とサーバ群３０との間の通信は、暗号化された通信プロトコルで行われていれば足り、暗号化の方法や通信プロトコルの種別は、ＳＳＨやｔｅｌｎｅｔに限られるものではない。
コマンドライン部１２は、コマンド読込手段１２１と、コマンド実行手段１２２と、実行結果書込手段１２３と、を備える。
【００２６】
本実施形態に係るＷｅｂサーバ１０は、このようなＷｅｂプログラム部１１とコマンドライン部１２とを用いることにより、ＨＴＴＰプロトコルにより受け付けたユーザからの入力に応じて、サーバ群へのセキュアなコマンド操作を実現している。以下に、本実施形態に係るＷｅｂサーバ１０の具体的な構成を説明する。
【００２７】
ログイン受付手段１１１は、ユーザ端末２０から、ユーザを識別するユーザＩＤ及びサーバ群３０の中のサーバを指定する情報と共にログイン要求を受け付ける。アクセス可否確認手段１１２は、ログイン要求を受け付けると、ユーザＩＤ管理ＤＢ１３を参照して、指定されたサーバへのアクセス権限が当該ユーザＩＤに与えられているか判断し、この判断結果をユーザ端末２０に通知する。
ここで、ユーザＩＤ管理ＤＢ１３は、図２に示すように、ユーザＩＤ欄１３１に関連付けてアクセス可能サーバ欄１３２を備え、ユーザＩＤに関連付けて、サーバ群３０に含まれる各々のサーバの中でアクセスを許可するサーバを識別する情報を記憶している。なお、図２では、ユーザＩＤに関連付けてアクセス可能サーバを記憶しているが、各々のサーバに関連付けてアクセス可能なユーザＩＤを記憶することとしてもよい。
アクセス可否確認手段１１２は、例えば、「ｓｅｒｖｅｒ０２」へのログイン要求が、ユーザＩＤ「０００１」のユーザから行われた場合にはログインできたことをユーザ端末２０に返信し、ユーザＩＤ「０００２」のユーザから行われた場合にはログイン不可能である旨をユーザ端末２０に返信する。
【００２８】
図１に戻り、指定されたサーバにログインできた場合には、ユーザ端末２０から所定の入力情報（指定されたサーバに対する入力コマンドを示す情報を含む）が送信される。入力受付手段１１３は、この情報をユーザ端末２０から受け付ける。コマンド書込手段１１４は、受け付けた情報から入力コマンドを示す情報を抽出し、ログインされたサーバに対するコマンドとして、コマンド受付ＤＢ１４に書き込む。なお、ユーザ端末２０からの入力をコマンド受付ＤＢ１４に書き込むのは、Ｗｅｂプログラム部１１では入力されたコマンドを実行することができないため、入力されたコマンドを実行可能なコマンドライン部１２に送るためである。
ここで、コマンド受付ＤＢ１４は、図３に示すように、コマンド入力欄１４１と実行結果入力欄１４２とから構成される。また、コマンド入力欄１４１は、コマンド欄１４１Ａと対象サーバ欄１４１Ｂとから構成される。このコマンド受付ＤＢ１４は、コマンド記憶手段の一例として機能する。
例えば、「ｓｅｒｖｅｒ０２」にログインしたユーザから、「ｒｅｓｔａｒｔ」という入力情報を受け付けた場合には、コマンド書込手段１１４は、コマンド欄１４１Ａに「ｒｅｓｔａｒｔ」と書き込み、対象サーバ欄１４１Ｂに「ｓｅｒｖｅｒ０２」と書き込む。詳しくは後述するが、このように書き込まれると、サーバ群３０に含まれる「ｓｅｒｖｅｒ０２」に対し、「ｒｅｓｔａｒｔ」コマンドが実行される。
【００２９】
図１に戻り、コマンド読込手段１２１は、コマンド受付ＤＢ１４のコマンド入力欄１４１に書き込まれた情報（コマンド及び対象サーバ）を、所定の時間間隔で読み込む。ここで、コマンド読込手段１２１は、定期的に（例えば、０．５秒毎に）コマンド受付ＤＢ１４にアクセスし、新たな書き込みがある場合に当該書き込みを読み込む機能（ｐｏｌｌｉｎｇ）を有する。
コマンド実行手段１２２は、読み込まれた情報に基づいて、暗号化された通信プロトコルによりコマンド操作を実行する。具体的には、リモートホストでのコマンドを実行するシェルなどのコマンドラインインタプリタにおいて、「コマンド」及び「対象サーバ」を入力することによりコマンド操作を行う。例えば、コマンド欄１４１Ａに「ｒｅｓｔａｒｔ」、対象サーバ欄１４１Ｂに「ｓｅｒｖｅｒ０２」と書き込まれていた場合には、コマンド実行手段１２２は、コマンドラインインタプリタにおいて「ｒｅｓｔａｒｔ  ｓｅｒｖｅｒ０２」と入力する。その結果、「ｓｅｒｖｅｒ０２」の再起動が行われる。
実行結果書込手段１２３は、コマンド実行手段１２２によるコマンド操作の実行結果を、コマンド受付ＤＢ１４の実行結果入力欄１４２に書き込む。これにより、コマンド受付ＤＢ１４には、コマンド実行手段１２２の実行結果が記憶されるため、コマンド受付ＤＢ１４は、実行結果記憶手段の一例としても機能する。
【００３０】
実行結果読込手段１１５は、コマンド受付ＤＢ１４の実行結果入力欄１４２に書き込まれた情報を読み込む。ここで、実行結果読込手段１１５は、ユーザ端末２０から実行結果の送信要求を受信することに応じて、実行結果入力欄１４２に書き込まれた情報を読み込む。なお、ユーザ端末２０からの送信要求は、ユーザの意思による操作、例えば、ユーザ端末２０からリロード操作（Ｗｅｂサーバ１０へ入力情報を送信した後のＵＲＬと同一ＵＲＬでのリロード操作）、が行われた場合に行われる。
実行結果送信手段１１６は、実行結果読込手段１１５が読み込んだ実行結果を、ユーザ端末２０に送信する。これにより、ユーザ端末２０からユーザの意思による送信要求がなされると、実行結果がユーザ端末２０に送信されることになる。
【００３１】
なお、ユーザ端末２０への実行結果の送信を、ユーザの意思による送信要求ではなく、コマンド受付ＤＢ１４の実行結果入力欄１４２に実行結果が書き込まれることに応じて、行うこととしてもよい。具体的には後述するが、公知のＣｏｍｅｔ（コメット）という技術を利用することで実現することができる。これにより、コマンド受付ＤＢ１４の実行結果入力欄１４２に書き込まれた実行結果が、略リアルタイムでユーザ端末２０に送信され、ユーザ端末２０に表示される。例えば、コマンド操作の実行結果が数十行・数百行にわたる場合には、ユーザの意思による送信要求に応じて実行結果を送信したのでは、何度も送信要求を行わなければならず、また、表示される実行結果も中途半端な状態となってしまう。さらに、コマンド操作の実行結果が何らかの原因で長時間にわたり書き込まれない場合には、実行結果が書き込まれるより前にユーザがリロード操作を行っても実行結果送信手段１１６は実行結果を返すことが出来ず、ユーザに何度もリロード操作を強いることになる。これに対して、Ｃｏｍｅｔを利用し実行結果を送信することで、ユーザ端末２０には実行結果が略リアルタイムで順次表示されるため、ユーザ端末２０上で実際にコマンド操作を実行したかのような状況を実現できる。
【００３２】
本実施形態のＷｅｂサーバ１０の構成についての説明は以上である。なお、本実施形態のＷｅｂサーバ１０のハードウェアは、一般的なコンピュータによって構成してもよい。一般的なコンピュータは、例えば、制御部として、中央処理装置（ＣＰＵ）を備える他、記憶部として、メモリ（ＲＡＭやＲＯＭ）、ハードディスク（ＨＤＤ）及び光ディスク（ＣＤやＤＶＤなど）を、ネットワーク通信装置として各種有線や無線ＬＡＮ装置を適宜備え、バスラインにより接続されている。このような一般的なコンピュータにおいて、ＣＰＵは、Ｗｅｂサーバ１０を統括的に制御し、各種プログラムを適宜読み出して実行することにより、上述したハードウェアと協働し、本発明に係る各種機能を実現している。また、ユーザ端末２０及びサーバ群３０に含まれるサーバについても同様の構成を有してよい。
【００３３】
［システム１の動作］
次に、図４〜図６を参照して、ＨＴＴＰプロトコルにより受け付けたユーザからの入力に応じて、サーバ群３０へのセキュアなコマンド操作を実現する方法について説明する。図４は、ユーザからの入力に応じてサーバ群３０へのコマンド操作を実行するコマンド実行処理を示し、図５は、ユーザの意思による操作に応じて実行結果を送信する実行結果送信処理１を示し、図６は、Ｃｏｍｅｔを利用し実行結果を送信する実行結果送信処理２を示す。
【００３４】
［コマンド実行処理］
図４を参照して、コマンド実行処理について説明する。
【００３５】
Ｓ１、Ｓ２：ユーザ端末２０が、サーバ群３０に含まれるサーバの障害を示すアラームを受信すると、ユーザは、サーバ障害を復旧するためユーザ端末２０を介してＷｅｂサーバ１０のＷｅｂプログラム部１１にログイン要求を行う。なお、ログイン要求は、ユーザＩＤ及びログイン対象のサーバを指定して行われる。
【００３６】
Ｓ３、Ｓ４：Ｗｅｂプログラム部１１のログイン受付手段１１１がログイン要求を受け付けると、アクセス可否確認手段１１２は、ユーザＩＤ管理ＤＢ１３を参照して、該当ユーザＩＤがログイン対象サーバにアクセス可能であるか否かを判別する。
Ｓ５：このとき、該当ユーザＩＤがログイン対象サーバにアクセスできない場合には、アクセス可否確認手段１１２は、アクセス不可能であることを示す情報をユーザ端末２０に送信する。
Ｓ６：一方、アクセス可能である場合には、アクセス可否確認手段１１２は、アクセス可能であることを示す情報をユーザ端末２０に送信する。
【００３７】
Ｓ７：対象サーバにアクセス可能なユーザ端末２０は、後述するコマンド入力画面から入力された入力情報をＷｅｂプログラム部１１に送信する。
Ｓ８、Ｓ９：入力受付手段１１３は、当該入力情報を受け付け、コマンド書込手段１１４は、ログイン対象サーバへのコマンドとして、コマンド受付ＤＢ１４に書き込む。
【００３８】
Ｓ１０、Ｓ１１：コマンド読込手段１２１は、コマンド受付ＤＢ１４を定期的に確認し、新たな書き込みがある場合には当該書き込みからコマンド及び対象サーバを読み込む。続いて、コマンド実行手段１２２は、読み込んだ情報に基づいてコマンド操作を実行する。
【００３９】
Ｓ１２：サーバ群３０の対象サーバでは、コマンド操作に応じた処理を実行する。
Ｓ１３：そして、実行結果書込手段１２３は、この実行結果をコマンド受付ＤＢ１４に書き込み、コマンド実行処理を終了する。
【００４０】
［実行結果送信処理１］
次に図５を参照して、ユーザの意思による操作に応じて実行結果を送信する実行結果送信処理１について説明する。
【００４１】
Ｓ２１：ユーザ端末２０では、例えば、ユーザのリロード操作などにより、実行結果の送信要求を行う。
【００４２】
Ｓ２２〜Ｓ２４：Ｗｅｂプログラム部１１の実行結果読込手段１１５は、送信要求を受け付けると、コマンド受付ＤＢ１４の実行結果入力欄１４２に書き込まれた実行結果を読み込む。続いて、実行結果送信手段１１６は、読み込んだ実行結果をユーザ端末２０に送信する。
【００４３】
Ｓ２５、Ｓ２６：ユーザ端末２０は、実行結果を受信すると、Ｗｅｂブラウザに実行結果を表示し、実行結果送信処理１を終了する。
【００４４】
［実行結果送信処理２］
次に図６を参照して、Ｃｏｍｅｔを利用し実行結果を送信する実行結果送信処理２について説明する。
ここで、Ｃｏｍｅｔは、Ｗｅｂサーバが常にＨＴＴＰリクエストを受け付けたままの状態にしておくものである。具体的には、ＷｅｂサーバがＨＴＴＰリクエストを受け付けると、返すべき情報が出てくるまで（又はタイムアウトになる前まで）この状態のまま保留する。そして、返すべき情報が出てきた場合には、この情報を返信し、返すべき情報がないままタイムアウトになる場合には、空の情報を返信する。ユーザ端末のＷｅｂブラウザでは、返すべき情報を受け付けた場合には、この情報に応じた処理を行った後、直ちに次のＨＴＴＰリクエストをＷｅｂサーバに送る一方で、空の情報を受け付けた場合には、直ちに次のＨＴＴＰリクエストをＷｅｂサーバに送る。このようにして、Ｃｏｍｅｔでは、Ｗｅｂサーバが常にＨＴＴＰリクエストを受け付けたままの状態にしておく。
【００４５】
Ｓ３１：ユーザ端末２０（Ｗｅｂブラウザ）は、Ｗｅｂサーバ１０のＷｅｂプログラム部１１にＣｏｍｅｔ用のＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）コネクションを開設する。
Ｓ３２：続いて、ユーザ端末２０は、Ｗｅｂプログラム部１１に対して、実行結果の送信要求を示すＨＴＴＰリクエストを送信する。
【００４６】
Ｓ３３〜Ｓ３５：Ｗｅｂプログラム部１１の実行結果読込手段１１５は、実行結果の送信要求を受け付けると、コマンド受付ＤＢ１４の実行結果入力欄１４２に書き込まれた実行結果を読み込む。続いて、Ｗｅｂプログラム部１１は、新たな実行結果が読み込まれたか否か、すなわち、返すべき情報があるか否かを判断する。
【００４７】
Ｓ３６：このとき、新たな実行結果がある場合には、実行結果送信手段１１６は、読み込んだ実行結果をユーザ端末２０に送信する。
Ｓ３７、Ｓ３８、Ｓ３２：ユーザ端末２０は、実行結果を受信すると、Ｗｅｂブラウザに実行結果を表示する。続いて、ユーザ端末２０は、Ｗｅｂプログラム部１１に対して、直ちに次のＨＴＴＰリクエストを送信する。
【００４８】
Ｓ３９：他方、新たな実行結果がない場合には、Ｗｅｂプログラム部１１は、タイムアウトであるか否かを判断する。
Ｓ３４、Ｓ３５：このとき、タイムアウトでない場合には、実行結果読込手段１１５は、コマンド受付ＤＢ１４の実行結果入力欄１４２に書き込まれた実行結果を読み込み、Ｗｅｂプログラム部１１は、新たな実行結果が読み込まれたか否かを判断する。
Ｓ４０：他方、タイムアウトである場合には、実行結果送信手段１１６は、空の情報をユーザ端末２０に送信する。
Ｓ４１、Ｓ３２：ユーザ端末２０は、空の情報を受信すると、Ｗｅｂプログラム部１１に対して、直ちに次のＨＴＴＰリクエストを送信する。
【００４９】
［動作例］
続いて、図７〜図９を参照して、システム１の動作例を説明する。図７は、ユーザがサーバ群３０に含まれるサーバにログインする際（図４のＳ１〜Ｓ７に相当）のユーザ端末２０の表示例を示し、図８は、ユーザ端末２０からの入力に基づいて対象サーバへのコマンド操作を実行する際（図４のＳ７〜Ｓ１１に相当）の動作例を示し、図９は、コマンドの実行結果をユーザ端末２０に表示する際（図４のＳ１２、Ｓ１３、図５、図６に相当）の動作例を示す。
【００５０】
［ログイン時の動作例］
図７を参照して、ログイン時の動作例について説明する。
【００５１】
図７（１）を参照して、サーバ群３０に含まれるサーバに障害が生じると、ユーザ端末２０にはその旨が送信され、ユーザ端末２０の表示画面にアラーム画面が表示される。図７（１）では、「ｓｅｒｖｅｒ０２」に障害が生じたことが表示されている。このとき、ユーザは、障害が生じたサーバが、自分がアクセス可能なサーバである場合には、「ｓｅｒｖｅｒ０２」にログインし、障害の復旧を行う。
【００５２】
図７（２）は、ログイン画面を示す図である。このログイン画面は、例えば、アラーム画面において対象サーバを選択することにより表示される。図７（２）では、アラーム画面において「ｓｅｒｖｅｒ０２」を選択したことにより、「ｓｅｒｖｅｒ０２」に対するログイン画面がユーザ端末２０に表示されている。ログイン画面において、ユーザがユーザＩＤ入力欄２０１にユーザＩＤを入力し、ログインボタン２０２を選択することで、ログイン要求が行われる。
【００５３】
その結果、ログインできた場合には、ユーザ端末２０には図７（３）に示すコマンド入力画面が表示される。このコマンド入力画面には、テキスト入力可能なコマンド入力欄２０３が設けられる。本実施形態では、ログインされたサーバが、コマンド操作を行う対象サーバとして、自動的に決定される。
なお、対象サーバにアクセスできない場合には、アクセス不可能であることを示す画面がユーザ端末２０に表示される。
【００５４】
［コマンド入力時の動作例］
次に、図８を参照して、ユーザ端末２０からの入力に基づいて、サーバ群３０に含まれるサーバに対してコマンド入力を行う際の動作例について説明する。
【００５５】
ログインできた場合にはユーザ端末２０にコマンド入力画面が表示される（図８（１））。このコマンド入力画面において、コマンド入力欄２０３にテキスト形式の入力がされ、送信ボタン２１１が操作されると、Ｗｅｂプログラム部１１を介してコマンド受付ＤＢ１４に所定の情報が書き込まれる。具体的には、コマンド受付ＤＢ１４のコマンド欄１４１Ａには、コマンド入力欄２０３に入力された情報が書き込まれ、対象サーバ欄１４１Ｂには、ログインされたサーバの種類を示す情報が書き込まれる（図８（２））。
そして、コマンド受付ＤＢ１４に書き込まれた情報は、コマンドライン部１２により読み込まれ、サーバ群３０に含まれるサーバに対するコマンド入力として実行される（図８（３））。具体的には、シェルなどのコマンドラインインタプリタにおいて、「コマンド」及び「対象サーバ」を入力することで行われる。例えば、コマンド欄１４１Ａに「ｒｅｓｔａｒｔ」、対象サーバ欄１４１Ｂに「ｓｅｒｖｅｒ０２」と書き込まれていた場合には、コマンドラインインタプリタにおいて「ｒｅｓｔａｒｔ  ｓｅｒｖｅｒ０２」と入力する。
【００５６】
［実行結果出力時の動作例］
次に、図９を参照して、入力されたコマンドの実行結果をユーザ端末２０に表示する際の動作例について説明する。
【００５７】
コマンドラインインタプリタにおいて入力されたコマンドが実行されると（図９（１））、その実行結果が、コマンドライン部１２を介してコマンド受付ＤＢ１４の実行結果入力欄１４２に書き込まれる（図９（２））。
そして、ユーザの意思による送信要求やＣｏｍｅｔによる送信要求がなされると、Ｗｅｂプログラム部１１が、コマンド受付ＤＢ１４に書き込まれた実行結果を読み出した上で、ユーザ端末２０に実行結果を送信する。ユーザ端末２０では、実行結果を受信すると、受信した実行結果を表示画面に表示する。
【００５８】
［Ｗｅｂサーバによる効果］
以上のように、本実施形態に係るＷｅｂサーバ１０は、ユーザ端末２０からＨＴＴＰプロトコルにより受け付けた入力に基づいて、サーバ群３０へのコマンド入力を実行する。このコマンド入力にあたり、ユーザ端末２０にはＨＴＴＰプロトコルで通信可能な機能があれば足り、また、ユーザ端末２０とサーバ群３０との間に直接暗号化などをする必要はない。その結果、ユーザ端末２０の種別に制限がかけられることがない。
また、Ｗｅｂサーバ１０は、ユーザ端末２０からのアクセスをユーザＩＤと関連付けて管理すると共に、Ｗｅｂサーバ１０とサーバ群３０とは暗号化された通信プロトコルにより接続される。これにより、ユーザＩＤ管理と暗号化された通信プロトコルという２つの方法により、サーバ群３０へのアクセスを保護することができる。
したがって、ユーザ端末の種別に制限をかけることなく、サーバ群３０へのセキュアなコマンド入力を実現することができる。
【００５９】
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載されたものに限定されるものではない。
【００６０】
例えば、本実施形態では、コマンド実行時の引数として、コマンドが動作する対象となるオブジェクトを指定する引数（対象サーバ）のみをとることとしているが、これに限られるものではない。いわゆる「フラグ」や「パラメータ」といったコマンドの動作を修正する引数をとることとしてもよい。
具体的には、図１０に示すように、コマンド入力画面においてフラグ入力欄２３１を設け（図１０（１））、Ｗｅｂプログラム部１１において入力された引数をコマンド受付ＤＢ１４に書き込み（図示は省略）、書き込まれた「コマンド」「対象サーバ」及び「フラグ」に基づいて、図１０（２）に示すようなコマンド入力を行うこととしてもよい。
【００６１】
また、本実施形態では、ログイン時に対象サーバの指定を受け付けた上で、ログインされたサーバが、コマンド操作を行う対象サーバとして自動的に決定されることとしているが、これに限られるものではない。コマンド操作を行う対象サーバは、コマンド入力時にユーザからの指定により決定することとしてもよい。
図１１に別実施形態における、ログイン時の動作例を示す。サーバ群３０に含まれるサーバに障害が発生すると、ユーザ端末２０にはアラーム画面が表示される（図１１（１））。
サーバに障害が発生したことを把握すると、サーバ管理者はユーザ端末２０においてログイン画面を開き、ユーザＩＤ入力欄３０１にユーザＩＤを入力し、ログインボタン３０２を選択することで、ログイン要求を行う。このログイン要求に対して、Ｗｅｂサーバ１０は、任意の方法（例えば、ユーザＩＤ管理ＤＢ１３に、ユーザＩＤが、個別のサーバへのアクセス権限を有するか否かの情報に加え、サーバ群３０へのアクセス権限を有する否かの情報を記憶させ、ログイン要求に含まれるユーザＩＤがサーバ群３０へのアクセス権限を有するか否かにより判断する）により、ログイン可能であるか否かを判断し、その結果をユーザ端末２０に送信する。
そして、ログインできた場合には、サーバ管理者が、コマンド入力画面（図１１（３））において、対象サーバ入力欄３０３にコマンド操作を行う対象サーバを入力すると共に、コマンド入力欄３０４に実行するコマンドを入力し、送信ボタン３０５を選択することで、Ｗｅｂサーバ１０には、サーバ群３０の中のサーバを指定する情報及び入力コマンドを示す情報を含む入力情報が送信される。Ｗｅｂサーバ１０では、ユーザＩＤ管理ＤＢ１３を参照して、指定されたサーバへのアクセス権限を有するユーザＩＤであるか判断し、アクセス権限を有する場合には、コマンド受付ＤＢ１４の所定の領域に、コマンド及び対象サーバを書き込む。
【００６２】
なお、上述の実施形態は、サーバに障害が発生したことを把握することにより行われるものとして説明したが、これに限られず、サーバの障害の有無に関わらず、様々な実施形態が可能である。
【符号の説明】
【００６３】
１０  Ｗｅｂサーバ
１１  Ｗｅｂプログラム部
１１１  ログイン受付手段
１１２  アクセス可否確認手段
１１３  入力受付手段
１１４  コマンド書込手段
１１５  実行結果読込手段
１１６  実行結果送信手段
１２  コマンドライン部
１２１  コマンド読込手段
１２２  コマンド実行手段
１２３  実行結果書込手段
１３  ユーザＩＤ管理ＤＢ
１４  コマンド受付ＤＢ
【図１】
2011134255.tif 000003
【図２】
2011134255.tif 000004
【図３】
2011134255.tif 000005
【図４】
2011134255.tif 000006
【図５】
2011134255.tif 000007
【図６】
2011134255.tif 000008
【図７】
2011134255.tif 000009
【図８】
2011134255.tif 000010
【図９】
2011134255.tif 000011
【図１０】
2011134255.tif 000012
【図１１】
2011134255.tif 000013