【解決手段】DBサーバ74は、外部網の装置と通信すべき場合に、送信元アドレスとしてDBサーバ74のアドレスを指定し、宛先アドレスとして外部網の装置のアドレスを指定したパケットを送出する。ユーザA−FW32は、DBサーバ74から送出されたパケットを受信し、指定された送信元アドレスが内部セグメント70のアドレスである場合に、当該パケットを中継サーバ64へ転送する。中継サーバ64は、ファイアウォールから転送されたパケットの送信元アドレスを自装置のアドレスへ変更して送出する。ユーザA−FW32は、中継サーバ64から送出されたパケットを受信し、指定された送信元アドレスがDMZ60のアドレスであって、そのパケットが所定の基準を満たす場合に、受信したパケットを外部網へ転送することを許可する。
前記ファイアウォールは、第1ユーザの内部セグメントに配置された第1ユーザの第1装置から送出された前記外部網の装置宛のパケットと、第2ユーザの内部セグメントに配置された第2ユーザの第1装置から送出された前記外部網の装置宛のパケットの両方を受信し、前者のパケットを第1のユーザのDMZに配置された第1ユーザの第2装置へ転送する一方、後者のパケットを第2のユーザのDMZに配置された第2ユーザの第2装置へ転送し、
前記第1ユーザの第2装置と前記第2ユーザの第2装置のそれぞれは、前記ファイアウォールから転送されたパケットを受信し、受信したパケットで指定された送信元アドレスを自装置のアドレスへ変更したパケットを送出し、
前記ファイアウォールは、前記第1のユーザの第2装置から送出されたパケットと、前記第2ユーザの第2装置から送出されたパケットの両方を受信し、前者のパケットで指定された送信元アドレスが前記第1ユーザのDMZのアドレスであり、かつ、第1ユーザによって予め定められた基準を前者のパケットが満たす場合に、前者のパケットを前記外部網へ転送することを許可する一方、後者のパケットで指定された送信元アドレスが前記第2ユーザのDMZのアドレスであり、かつ、第2ユーザによって予め定められた基準を後者のパケットが満たす場合に、後者のパケットを前記外部網へ転送することを許可することを特徴とする請求項1に記載の情報処理システム。
管理者ごとに定められたアカウントの情報であって、前記ファイアウォール、前記第1装置、前記第2装置にログインするための管理者単位で共通のアカウント情報を一括して保持するディレクトリサーバをさらに備え、
前記ファイアウォール、前記第1装置、前記第2装置のそれぞれは、ログイン要求を受け付けた場合に、前記ログイン要求で指定されたアカウント情報と、前記ディレクトリサーバに保持されたアカウント情報とが整合するか否かにもとづいてログインの許否を決定することを特徴とする請求項1または2に記載の情報処理システム。
内部セグメントに配置されたクレジットカード情報を処理する第1装置に対する外部網からの通信を禁止する一方、DMZに配置された第2装置に対する前記外部網からの通信を許可する通信許否部と、
前記第1装置から送出された、送信元アドレスとして前記第1装置のアドレスを指定し、宛先アドレスとして前記外部網の装置のアドレスを指定したパケットを受信するパケット受信部と、
前記パケット受信部が受信したパケットで指定された送信元アドレスが前記内部セグメントのアドレスである場合に、当該パケットを前記第2装置へ転送するパケット転送部と、
を備え、
前記第2装置は、本装置が転送したパケットで指定された送信元アドレスを前記第2装置のアドレスへ変更したパケットを送出するものであり、
前記パケット受信部は、前記第2装置から送出されたパケットを受信し、
前記通信許否部は、前記パケット受信部が受信したパケットで指定された送信元アドレスが前記DMZのアドレスであり、かつ、受信したパケットが所定の基準を満たす場合に、受信したパケットを前記外部網へ転送することを許可することを特徴とするファイアウォール装置。
【発明を実施するための形態】
【0011】
図1は、実施の形態のクラウドシステム10の物理構成を示す。クラウドシステム10は、ユーザ企業のシステムのPCI DSS準拠を支援するクラウドサービスを提供する情報処理システムである。例えば、クラウドシステム10は、PCI DSSが定めるネットワーク要件を充足するよう通信を制御する。また、クラウドシステム10は、各ユーザ企業に専用サーバのPaaS(Platform as a Service)環境を提供する。そして複数のユーザ企業に、共通のファイアウォール装置等の通信装置を利用させることにより、個々のユーザ企業が負担するシステム構築コストおよびシステム運用コストを低減させる。典型的なユーザ企業はPCI DSSの準拠を要請される企業であり、例えばクレジットカードの加盟店や決済代行事業者、ECサイト事業者、カード会社である。
【0012】
図1は、クラウドシステム10の物理的な網構成、ハードウェア構成を示している。クラウドシステム10は、複数のユーザ間で共用される基盤装置として、レイヤ3スイッチ(L3スイッチ12)と、レイヤ2スイッチ(L2スイッチ14)と、ファイアウォール16と、ロードバランサ18を備える。L3スイッチ12、L2スイッチ14、ファイアウォール16、ロードバランサ18のそれぞれは、現用機と予備機の冗長構成である(予備機は不図示)。
【0013】
クラウドシステム10では、クラウドサービスを利用するユーザ企業(実施の形態ではユーザA、ユーザBと呼ぶ)ごとに2台ずつ物理サーバを割り当てる。言い換えれば、ユーザが増加する都度、そのユーザ専用の2台の情報処理装置を追加する。ユーザAに割り当てられたユーザAサーバ20a、ユーザAサーバ20b(総称して「ユーザAサーバ20」と呼ぶ。)と、ユーザBに割り当てられたユーザBサーバ22a、ユーザBサーバ22b(総称して「ユーザBサーバ22」と呼ぶ。)のそれぞれはL2スイッチ14に接続される。
【0014】
また、ユーザAサーバ20、ユーザBサーバ22のそれぞれには、仮想化ソフトウェア(例えばVMWare(商標または登録商標))がインストールされている。ユーザAおよびユーザBは、1台の物理サーバ内に、ウェブサーバやアプリケーションサーバ(APサーバ)、データベースサーバ(DBサーバ)等、論理的に複数台の仮想サーバを構築する。そして、複数の仮想サーバを連携させて電子商取引サイト、クレジットカード決済、カード会員情報管理、購買履歴管理・分析等の業務処理を実行させる。
【0015】
また、ユーザA端末24は、ユーザAの管理者がユーザAサーバ20に対する操作(各種の設定作業や保守作業等)を入力する情報処理端末である。ユーザA端末24は、インターネットを経由してクラウドシステム10と接続される。また、
図1には不図示だが、クラウドシステム10全体を管理するための物理サーバであり、後述する
図2のログサーバ42、中継サーバ44、クラウド管理サーバ52の機能を提供する管理用サーバもL2スイッチ14に接続される。
【0016】
図2は、実施の形態のクラウドシステム10の論理構成を示す。同図は、
図1に示したクラウドシステム10の論理的な網構成、機能構成を示している。以下、DMZ40および内部セグメント50により構成されるクラウド管理用のネットワークを「クラウド管理網」と呼ぶ。また、DMZ60および内部セグメント70により構成されるユーザA用のネットワークを「ユーザA網」と呼ぶ。また、DMZ80および内部セグメント90により構成されるユーザB用のネットワークを「ユーザB網」と呼ぶ。また、クラウド管理網にとっての外部網は、ユーザA網、ユーザB網、インターネットを含むネットワークとし、ユーザA網にとっての外部網は、ユーザB網、クラウド管理網、インターネットを含むネットワークとし、ユーザB網にとっての外部網は、ユーザA網、クラウド管理網、インターネットを含むネットワークとする。
【0017】
ルートFW30は、ファイアウォール16により実現される論理的なファイアウォールである。ルートFW30は、クラウド管理網の外部網からDMZ40への直接アクセスを許可する(例えばパケットを通過させる)一方、その外部網から内部セグメント50への直接アクセスを禁止する(例えばパケットを廃棄する)。ユーザA−FW32も、ファイアウォール16により実現される論理的なファイアウォールである。ユーザA−FW32は、ユーザA網の外部網からDMZ60への直接アクセスを許可する一方、その外部網から内部セグメント70への直接アクセスを禁止する。ユーザB−FW34も、ファイアウォール16により実現される論理的なファイアウォールである。ユーザB−FW34は、ユーザB網の外部網からDMZ80への直接アクセスを許可する一方、その外部網から内部セグメント90への直接アクセスを禁止する。
【0018】
実施の形態では、物理的に1台のファイアウォール16を論理的に複数台のファイアウォールとして機能させるために、L2スイッチ14のVLAN機能を使用する。例えば、L2スイッチ14は、ユーザA網から受け付けたパケットに、ユーザAに対して予め割り当てられたVLAN−IDを付与する。また、ユーザB網から受け付けたパケットに、ユーザBに対して予め割り当てられたVLAN−IDを付与する。ファイアウォール16は、ユーザAを示すVLAN−IDが付与されたパケットを、ユーザA網から送出されたパケットとして識別する。そして、ユーザAにより予め定められたポリシーにしたがってパケットフィルタリングを実行することでユーザA−FW32として機能する。同様に、ユーザBを示すVLAN−IDが付与されたパケットを、ユーザB網から送出されたパケットとして識別する。そして、ユーザBにより予め定められたポリシーにしたがってパケットフィルタリングを実行することでユーザB−FW34として機能する。
【0019】
ユーザA網にはユーザAの業務処理を実行するシステムが構築され、ユーザB網にはユーザBの業務処理を実行するシステムが構築される。
図2では、プレゼンテーション層、アプリケーション層、データ層に分割した3層構成を示している。具体的には、ユーザA網のDMZ60には2つの仮想サーバ、すなわちウェブサーバ62と中継サーバ64が配置され、内部セグメント70には4つの仮想サーバ、すなわちAPサーバ72とDBサーバ74とディレクトリサーバ76と作業用サーバ78が配置されている。ユーザB網のDMZ80には、ウェブサーバ82と中継サーバ84が配置され、内部セグメント90には、APサーバ92とDBサーバ94とディレクトリサーバ96と作業用サーバ98が配置されている。
【0020】
ユーザA網における各仮想サーバのネットワークセグメントは、PCI DSSに則ってユーザAが決定する。典型的には、高度なセキュリティレベルが要求されるサーバであり、例えばクレジットカード情報を用いたデータ処理を実行するAPサーバ72と、クレジットカード情報や決済情報を保持するDBサーバ74を内部セグメント70に配置する。その一方、外部網の装置と直接通信をすべきサーバ、例えばウェブサーバ62と中継サーバ64をDMZ60に配置する。なお、ウェブサーバ62は、電子商取引に関するウェブページを提供し、外部網からのHTTPアクセスを受け付ける。中継サーバ64は、内部セグメント70のサーバと外部網の装置との通信を中継する。
【0021】
例えばユーザAは、ユーザAサーバ20にインストールされた仮想化ソフトウェアを使用してウェブサーバ62と中継サーバ64を構築し、各サーバにDMZ60のIPアドレスを設定する。同様に、ユーザAサーバ20にインストールされた仮想化ソフトウェアを使用してAPサーバ72とDBサーバ74とディレクトリサーバ76を構築し、各サーバに内部セグメント70のIPアドレスを設定する。ユーザB網における各仮想サーバのネットワークセグメントも同様に、PCI DSSに則ってユーザBが決定する。
【0022】
また、ユーザA網の各仮想サーバおよびネットワーク機器には、ユーザAの管理者ごとに異なるログインアカウント、すなわちログインIDおよびパスワードが設定される。その一方、各仮想サーバおよびネットワーク機器へのログインアカウントは、管理者単位で共通に設定される。すなわち、ユーザAに属するある管理者のアカウントは、他の管理者のアカウントとは異なるが、同じアカウントでユーザA−FW32、ウェブサーバ62、中継サーバ64、APサーバ72・・・にログインできる。
【0023】
ディレクトリサーバ76は、このようなユーザAの管理者ごとに定められたアカウント情報であって、ユーザA網の各仮想サーバおよびネットワーク機器にログインするための管理者単位で共通のアカウント情報を一括して保持する。ディレクトリサーバ96も同様であり、ユーザBの管理者ごとに定められたアカウント情報であって、ユーザB網の各仮想サーバおよびネットワーク機器にログインするための管理者単位で共通のアカウント情報を一括して保持する。
【0024】
また、クラウド管理網のDMZ40にはログサーバ42と中継サーバ44が配置され、内部セグメント50にはクラウド管理サーバ52が配置される。ログサーバ42は、ユーザ網の各装置が出力したログデータを、ユーザ単位および仮想サーバ単位に逐次蓄積する機能と、蓄積したログデータをユーザの要求に応じて提供する機能を備える。
【0025】
クラウド管理サーバ52は、ユーザAやユーザBからの要求にしたがって、ユーザAサーバ20およびユーザBサーバ22に対する各種設定を実行する機能を備える。中継サーバ44は、クラウドシステム10外部の装置(例えばユーザA端末24)から送信された、ユーザAサーバ20に仮想サーバ(例えばウェブサーバ)を構築する旨の設定要求を受け付けて、クラウド管理サーバ52へ転送する機能を備える。
【0026】
具体的には、クラウド管理サーバ52は仮想サーバのテンプレートデータを保持する。クラウド管理サーバ52は、中継サーバ44を介して、テンプレート選択画面をクラウドシステム10外部の装置(例えばユーザA端末24)へ送信して表示させ、ユーザによる選択結果を取得する。なお、クラウド管理サーバ52には、VMWare(商標または登録商標)のクラウド管理用アプリケーションがインストールされてもよい。そして、このアプリケーションからユーザAサーバ20およびユーザBサーバ22のVMWare(商標または登録商標)へ仮想サーバの設定指示が通知されてもよい。
【0027】
図3は、仮想サーバのテンプレートを示す。同図は16種類のテンプレートを示している。例えばID「5」は、OSがWindows(登録商標)で、ウェブサーバソフトウェアおよびウイルス対策ソフトウェアをインストールしたサーバを示すテンプレートである。またID「4」は、OSがLinux(登録商標)で、ウイルス対策ソフトウェアをインストールしないサーバを示すテンプレートである。後者の場合、典型的には仮想サーバが構築された後に、必要なアプリケーションをユーザが適宜インストールする。
図3には不図示だが、ディレクトリサーバ、DNSサーバ、中継サーバ等、他の種類のサーバを示すテンプレートがさらに含まれてよい。
【0028】
ファイアウォール16を詳細に説明する。
ファイアウォール16は、レイヤ3〜レイヤ7に亘るパケットデータに基づいて、通信の許否を決定し、パケットの方路を制御する。例えば、IPパケットに設定されたIPアドレス、ポート番号、ペイロードのアプリケーションデータ、およびこれらの任意の組み合わせに基づいて、パケットの通過を許可し、またはパケットの通過を禁止する。ファイアウォール16は、レイヤ3〜レイヤ7スイッチとして機能するとも言える。
【0029】
図4は、
図1のファイアウォール16の機能構成を示すブロック図である。本明細書のブロック図において示される各ブロックは、ハードウェア的には、コンピュータのCPUやメモリをはじめとする素子や機械装置、電子回路で実現でき、ソフトウェア的にはコンピュータプログラム等によって実現されるが、ここでは、それらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックはハードウェア、ソフトウェアの組合せによっていろいろなかたちで実現できることは、当業者には理解されるところである。
【0030】
ファイアウォール16は、各種データを記憶する記憶領域であるデータ保持部100と、パケットの通過・廃棄を制御する制御部110を備える。データ保持部100はポリシー保持部102を含む。制御部110は、パケット受信部112と、通信許否部114と、パケット転送部116と、認証部118と、ポリシー更新部120を含む。
【0031】
ポリシー保持部102は、ユーザ(ユーザ企業)ごとの、パケットの通過または廃棄を決定するための基準となる規則(以下、「通信制御ポリシー」と呼ぶ。)を保持する。例えば、各ユーザに予め割り当てられたVLAN−IDと対応づけて各ユーザの通信制御ポリシーを保持する。通信制御ポリシーは、パケットの条件と、接続・遮断等のフィルタリング処理の内容とを対応づけて定めたものである。
【0032】
実施の形態のファイアウォール16はホワイトリスト方式である。例えばユーザA用の通信制御ポリシーは、送信元IPアドレスとして内部セグメント70のIPアドレスが指定されたパケットであり、かつ、ユーザAにより予め定められた通過許可条件を満たすパケットを、中継サーバ64へ転送する旨のポリシーを含む。また、送信元IPアドレスとしてDMZ60のIPアドレスが指定されたパケットであり、かつ、ユーザAにより予め定められた通過許可条件を満たすパケットを、その送信元IPアドレスを所定のグローバルアドレスに変換した上で、その宛先IPアドレスに応じてユーザA網外部へ転送することを許可する旨のポリシーを含む。
【0033】
ユーザB用の通信制御ポリシーは、送信元IPアドレスとして内部セグメント90のIPアドレスが指定されたパケットであり、かつ、ユーザBにより予め定められた通過許可条件を満たすパケットを、中継サーバ84へ転送する旨のポリシーを含む。また、送信元IPアドレスとしてDMZ80のIPアドレスが指定されたパケットであり、かつ、ユーザBにより予め定めた通過許可条件を満たすパケットを、その送信元IPアドレスを所定のグローバルアドレスに変換した上で、その宛先IPアドレスに応じてユーザB網外部へ転送することを許可する旨のポリシーを含む。
【0034】
通過許可条件は、例えば、宛先IPアドレス、ポート番号、ペイロードの内容のうち少なくとも1つ、もしくはこれらの任意の組み合わせが満たすべき条件を定めたものである。具体的には、宛先ポート番号が、Syslog、SNMP、SSHまたはNTPを示す番号である場合に充足される条件を含む。また、ペイロードの内容(例えばアプリケーションデータ)が、ウイルス定義の更新ファイルの取得要求またはOSの更新ファイルの取得要求を示す場合に充足される条件を含む。ユーザA用とユーザB用のいずれの通信制御ポリシーにおいても、通過許可条件を充足しないパケット、例えば予め定められた宛先ポート番号以外を指定するパケットの通過を拒否する旨、例えば当該パケットを廃棄する旨を定める。
【0035】
パケット受信部112は、L2スイッチ14から転送されたパケットを取得する。通信許否部114は、ポリシー保持部102に保持された通信制御ポリシーにしたがって、パケット受信部112で受信されたパケットの通過を許可し、または廃棄し、または転送先を決定する。パケット転送部116は、通信許否部114で通過が許可されたパケットをL2スイッチ14へ送出し、また、通信許否部114で決定された転送先宛にパケットをL2スイッチ14へ送出する。後者の場合、パケット転送部116は、通信許否部114で決定された転送先装置のMACアドレスを送信先MACアドレスとして設定したMACフレームであり、パケット受信部112で受信されたIPパケットを含むMACフレームをL2スイッチ14へ送出してもよい。
【0036】
DMZ60から送出されたパケットをユーザA網外部へ転送する際、パケット転送部116は、NAT処理を実行するアドレス変換部としても機能する。具体的には、パケット転送部116は、パケットの送信元IPアドレスとして指定されたDMZ60のローカルアドレス(例えば中継サーバ64のIPアドレス)を、外部網(インターネット等)との通信用に予め保持するグローバルアドレスへ変換する。パケット転送部116は、送信元IPアドレスをグローバルアドレスに変換後のパケットをユーザA網外部へ転送する。これにより、ユーザA網内部の装置に対してユーザAは任意のIPアドレスを付与することができる。
【0037】
認証部118は、ユーザA端末24や中継サーバ64から送出されて、L2スイッチ14により中継された、ログインIDおよびパスワードを指定したログイン要求を受信する。典型的には、パケット受信部112で受信され、通信許否部114を通過したログイン要求を取得する。認証部118は、ログイン要求元ユーザのネットワークセグメントを示す情報(例えばログイン要求パケットが示すVLAN−ID)と、ログインIDを指定した、アカウント問い合わせのためのLDAP電文をディレクトリサーバ76へ送信する。認証部118は、ログイン要求元ユーザのパスワードをディレクトリサーバ76から取得する。そして、ログイン要求で指定されたアカウント情報と、ディレクトリサーバ76から取得したアカウント情報が整合し、例えば、ログインIDとパスワードの組み合わせが一致する場合にログインを許可する。
【0038】
図4には不図示であるが、ファイアウォール16は、認証部118によりログインが許可されたユーザの装置に、ファイアウォール16を操作するためのコンソール画面のデータを送信して表示させるコンソール画面表示制御部を備えてもよい。ポリシー更新部120は、ユーザA端末24や中継サーバ64から送出され、L2スイッチ14により中継された、ポリシー変更情報を受信する。例えば、ファイアウォール16のコンソール画面に入力されたポリシー変更情報を受信する。そして、ポリシー保持部102に格納された通信制御ポリシーのうち、ログインユーザのネットワークセグメント(例えばログインユーザのVLAN−ID)に対応づけられた通信制御ポリシーを、ポリシー変更情報にしたがって変更する。
【0039】
次に中継サーバ64を詳細に説明する。
中継サーバ64は、内部セグメント70の装置がユーザA網外部の装置へアクセスするための踏み台サーバ・プロキシサーバとして機能する。同様に、中継サーバ84は、内部セグメント90の装置がユーザB網外部の装置へアクセスするための踏み台サーバ・プロキシサーバとして機能する。以下、中継サーバ64の機能を示すが中継サーバ84も同様である。
【0040】
図5は、
図2の中継サーバ64の機能構成を示すブロック図である。中継サーバ64は、各種情報処理を実行する制御部140を備える。制御部140は、パケット受信部142と、パケット変換部144と、パケット転送部146を含む。
【0041】
パケット受信部142は、L2スイッチ14から転送されたパケットを取得する。パケット変換部144は、パケット受信部142で受け付けられたパケットのうち、送信元IPアドレスが内部セグメント70のアドレスで、かつ、宛先IPアドレスがユーザA網の外部網の装置であるパケットを変換対象パケットとして特定する。データ保持部130は、この特定のためのアドレス情報、例えば、内部セグメントのIPアドレス体系、DMZのIPアドレス体系を示す情報を保持してもよい。パケット変換部144はこのアドレス情報を参照して、内部セグメント70のアドレス、および、ユーザA網の外部網のアドレスを識別してもよい。
【0042】
パケット変換部144は、変換対象パケットの送信元IPアドレスを自装置、すなわち中継サーバ64のIPアドレスに変更する。当該パケットの他のヘッダ情報およびペイロードは変更しない。パケット転送部146は、パケット変換部144により送信元IPアドレスが変換されたパケットをL2スイッチ14へ送信する。なお、パケット変換部144は、変換対象パケットのオリジナルの送信元IPアドレスを記録しておく。変換対象パケットに対する外部装置からの応答パケット、すなわち宛先IPアドレスが内部セグメント70のアドレスで、送信元IPアドレスがユーザA網の外部網の装置であるパケットが受け付けられた場合、パケット変換部144は、応答パケットの宛先IPアドレスをオリジナルの送信元IPアドレスへ変換する。そして、パケット転送部146は、変換後の応答パケットをL2スイッチ14へ送信する。
【0043】
次に作業用サーバ78を詳細に説明する。
作業用サーバ78は、ユーザA網外部の装置が内部セグメント70の装置へアクセスするための中継サーバ・踏み台サーバ・プロキシサーバとして機能する。同様に、作業用サーバ98は、ユーザB網外部の装置が内部セグメント90の装置へアクセスするための中継サーバ・踏み台サーバ・プロキシサーバとして機能する。以下、作業用サーバ78の機能を示すが作業用サーバ98も同様である。
【0044】
図6は、
図2の作業用サーバ78の機能構成を示すブロック図である。作業用サーバ78は、各種データを記憶する領域であるデータ保持部130と、各種情報処理を実行する制御部147を備える。データ保持部130は画像保持部132を含む。制御部147は、認証部148と、コンソール画面表示制御部150と、画像記録部152と、コマンド受信部154と、コマンド実行部156を含む。
【0045】
画像保持部132は、作業用サーバ78のコンソール画面の画像データを、ログインユーザの識別情報(例えばログインユーザのリモート端末のPC名とログインID)と対応づけて保持する。実施の形態で蓄積する画像データは、ユーザAの管理者がログインしている全期間に亘るコンソール画面の表示内容と、その変遷を示す動画像データである。言い換えれば、ユーザのログイン期間に亘る中継サーバ64に対する操作内容と、ユーザA網の各装置に対する操作内容を時系列に示す動画像データである。変形例として、ユーザのログイン期間中におけるコンソール画面の定期的なスナップショット、すなわち複数枚の静止画データであってもよい。
【0046】
作業用サーバ78は、VPN(Virtual Private Network)経由でのユーザA端末24からのアクセスを受け付ける。セキュリティはVPNにより担保されるため、作業用サーバ78は、予め定められたVPN以外、言い換えれば、ユーザA端末24以外からのアクセスを拒否する。
【0047】
認証部148は、ユーザA端末24から送信され、VPNを介して伝送された、ログインIDおよびパスワードを指定したログイン要求を受信する。認証部148は、認証部118と同様に、ログイン要求元ユーザのネットワークセグメントを示す情報と、ログインIDを指定した、アカウント問い合わせのためのLDAP電文をディレクトリサーバ76へ送信する。認証部148は、ログイン要求元ユーザのパスワードをディレクトリサーバ76から取得する。そして、ログイン要求で指定されたアカウント情報と、ディレクトリサーバ76から取得したアカウント情報が整合する場合にログインを許可する。
【0048】
コンソール画面表示制御部150は、認証部148によりログインが許可されたユーザA端末24に、作業用サーバ78を操作するためのGUI画面であるコンソール画面を送信して表示させる。コンソール画面は、リモートデスクトップ(X Window SystemやRemote Desktop Protocol等)のGUI画面でもよい。変形例として、コンソール画面はCLI画面であってもよい。
【0049】
画像記録部152は、ユーザのログイン期間中に亘るコンソール画面の表示内容を示す動画像データ、言い換えれば映像データをログインユーザの識別情報と対応づけて画像保持部132へ格納する。画像記録部152は、ユーザのログイン期間中、継続して画像保持部132に動画像データを蓄積させる。
【0050】
コマンド受信部154は、ユーザA端末24に表示されたコンソール画面に対する操作内容を示す情報であり、コンソール画面に対してユーザが入力した情報を含むコマンド情報をユーザA端末24から取得する。コマンド実行部156は、コマンド受信部154により取得されたコマンド情報に応じて各種プログラムを実行する。ここで、コマンド情報がユーザA網の他の仮想サーバ(例えばAPサーバ72やDBサーバ74)に対する操作、また、ユーザA−FW32(ファイアウォール16)に対する操作を示す場合に、コマンド実行部156は、そのコマンド情報を操作対象装置へ転送する。そして、操作対象装置からの応答電文であり、コマンド実行結果を含む応答情報を取得する。
【0051】
コンソール画面表示制御部150は、自装置もしくは他装置におけるコマンド実行結果をユーザA端末24へ送信し、ユーザA端末24で表示中のコンソール画面にコマンド実行結果を表示させる。画像記録部152は、コマンド実行結果を示すコンソール画面の画像を画像保持部132へ記録する。すなわち、コンソール画面表示制御部150は、ユーザA端末24へ送信するコンソール画面のデータを画像記録部152にも渡し、画像保持部132に保存させる。
【0052】
図6には不図示だが、作業用サーバ78は、各ユーザ企業の権限を有する特定の管理者から画像提供要求を受け付けた場合に、要求元ユーザのリモート端末のPC名とログインIDに対応づけられた画像データを提供する画像提供部をさらに備えてもよい。なお、画像データと対応づけられるユーザの識別情報は、ユーザのOSのIDであってもよく、画像提供部は、要求元ユーザのOSのIDに対応づけられた画像データを提供してもよい。また、画像データと対応づけられるユーザの識別情報は、リモート端末のPC名と、ログインIDと、OSのIDとの任意の組み合わせであってもよい。また、
図6の認証部148、コンソール画面表示制御部150、コマンド受信部154、コマンド実行部156は、ユーザAサーバ20およびユーザBサーバ22に構築された他の仮想サーバも備える。
【0053】
以上の構成によるクラウドシステム10の動作を
図1、
図2を参照しつつ説明する。
まず、ユーザA網の内部セグメント70の仮想サーバが発信元となり、ユーザA網外部の装置が宛先となる通信を行う際の動作を説明する。ここでは例として、DBサーバ74が、Syslogを使用して、自サーバのログデータをログサーバ42へ格納する動作を説明する。クラウドシステム10では、ユーザAサーバ20およびユーザBサーバ22に構築された各仮想サーバは、自サーバのログデータをクラウド管理網のログサーバ42へ格納する。言い換えれば、ログデータの蓄積先としてログサーバ42を共用する。これにより、各ユーザはログ管理のためのシステムコストを低減できる。
【0054】
DBサーバ74は、実行中のアプリケーションがログデータを出力し、そのログデータを不揮発に保存すべきときに、そのログデータを含むログ通知パケットを送出する。ログ通知パケットでは、送信元IPアドレスとしてDBサーバ74のIPアドレスが指定され、宛先IPアドレスとしてログサーバ42のIPアドレスが指定され、宛先ポート番号としてSyslogの番号が指定される。L2スイッチ14は、ユーザA網、ユーザB網、および外部網から受信したパケットを一旦ファイアウォール16へ転送する。ここでもL2スイッチ14は、内部セグメント70と接続されたポートで受信したログ通知パケット(実際にはログ通知パケットを含むMACフレーム)に、ユーザAを示すVLAN−IDを付与し、ログ通知パケットをファイアウォール16へ転送する。
【0055】
ファイアウォール16は、ユーザAを示すVLAN−IDを認識して、ユーザA−FW32として動作する。すなわち、ログ通知パケットの送信元IPアドレスを参照し、送信元IPアドレスが内部セグメント70のアドレスであることを識別し、ユーザAの通信制御ポリシーにしたがってログ通知パケットを中継サーバ64へ転送する。すなわち、ログ通知パケットの送信元IPアドレスが内部セグメント70のアドレスであり、かつ、宛先ポート番号がSyslogを示すものであるため、このパケットの通過を許可し、このパケットを中継サーバ64へ転送する。中継サーバ64は、ログ通知パケットの送信元IPアドレスを中継サーバ64自身のIPアドレスに変更し、変更後のログ通知パケットを送出する。L2スイッチ14は、ログ通知パケットをファイアウォール16へ転送する。
【0056】
ユーザA−FW32として動作するファイアウォール16は、ログ通知パケットの送信元IPアドレスがDMZ60のアドレスであり、かつ、宛先ポート番号がSyslogを示すものであるため、ユーザAの通信制御ポリシーにしたがって、ログ通知パケットを外部網へ転送することを許可する。このとき、ユーザA−FW32として動作するファイアウォール16は、送信元IPアドレスを予め用意されたグローバルアドレスに変換した上で、ログ通知パケットを外部網へ転送する。
【0057】
具体的には、ユーザA−FW32として動作するファイアウォール16は、ログ通知パケットを含み、ルートFW30のMACアドレスを送信先MACアドレスとして指定したMACフレームをL2スイッチ14へ送出する。ここで指定するルートFW30のMACアドレスは、ユーザごとに予め定められた異なる複数のMACアドレスのうちユーザAに割り当てられたMACアドレスである。なお、ルートFW30のMACアドレスは1つで、VLAN−IDとの組み合わせにより、実質的に異なるアドレスとして認識されてもよい。L2スイッチ14は、ログ通知パケットを含むMACフレームをファイアウォール16へ転送し、ルートFW30として動作するファイアウォール16は、当該MACフレームをログサーバ42へ転送する。ログサーバ42は、ログ通知パケットを受信し、ログ通知パケットからログデータを抽出して、ユーザAのDBサーバのログとしてストレージに保存する。
【0058】
ユーザA網の内部セグメント70の仮想サーバから、ウイルス定義の更新ファイルを取得し、OSの更新ファイルを取得し、NTPにより時刻を同期し、SNMPのTRAP通知を行う場合もログの記録と同様の動作になる。なお、外部網の宛先装置から応答電文が送信される場合、L2スイッチ14は一旦ファイアウォール16へ応答電文を転送する。ファイアウォール16は、送信先IPアドレスをグローバルアドレスから中継サーバ64のIPアドレスへ変換した上で、中継サーバ64へ応答電文を転送する。中継サーバ64は、応答電文の宛先IPアドレス(ここでは中継サーバ64のアドレス)を、先の変換時に記録しておいた内部セグメント70の仮想サーバのIPアドレスに書き戻す。これにより、要求元の仮想サーバへ応答電文を返信する。
【0059】
既述したように、ユーザA網の内部セグメント70の仮想サーバからユーザA網外部の装置への通信を許可すべき状況が発生する。しかし、PCI DSSの要件では、ユーザA網外部の装置への通信は、ユーザA網のDMZ60のサーバからのみに制限する必要がある。そこでクラウドシステム10では、DMZ60の中継サーバ64を踏み台として使用し、宛先装置への代理アクセスを中継サーバ64に実行させる。これにより、PCI DSSの要件を充足しつつ、ユーザA網の内部セグメント70のサーバからユーザA網外部の装置への通信を実現する。また、ログ記録サーバ、ウイルス定義およびOSの更新ファイルの取得サーバ、NTPサーバ、TRAP通知サーバ等をDMZ60に設ける必要がなく、システム構築および運用のコストを低減できる。すなわち、PCI DSSに準拠したセキュリティ強度を有するシステムを効率的に実現できる。
【0060】
図7は、クラウドシステム10における通信制御ポリシーを模式的に示す。「○」はパケットの伝送を許可することを示し、「×」はパケットの伝送を禁止することを示している。これまでのシステムでは、通常、内部セグメントの装置は信用できるものと見なし、内部セグメント発、外部網宛のパケットは通過させていた。しかし、内部セグメント発、外部網宛の通信を何ら制限しないと、コンピュータウイルスへの感染や、悪意のある第三者による攻撃等により、意図しない形で内部セグメント内に保持された秘密情報が外部網へ漏洩する可能性がある。クラウドシステム10では、内部セグメント発、外部網宛の通信を原則禁止し、中継サーバ64を経由し、かつ、ユーザが予め定めた基準に合致するパケットのみを外部網へ伝送させることでセキュリティ強度を一層高める。
【0061】
ユーザB網の内部セグメント90の仮想サーバが、ユーザB網外部の装置へパケットを送信する際も上記同様の動作となる。L2スイッチ14は、内部セグメント90と接続されたポートで受信したログ通知パケットに、ユーザBを示すVLAN−IDを付与し、ログ通知パケットをファイアウォール16へ転送する。ファイアウォール16は、ユーザBを示すVLAN−IDを認識して、ユーザB−FW34として動作する。すなわち、ログ通知パケットの送信元IPアドレスが内部セグメント90のアドレスである場合に、ユーザBの通信制御ポリシーにしたがってログ通知パケットを中継サーバ84へ転送する。中継サーバ84は中継サーバ64と同様に、ログ通知パケットの送信元IPアドレスを中継サーバ84自身のIPアドレスに変更する。
【0062】
ファイアウォール16は、ログ通知パケットの送信元IPアドレスがDMZ80のアドレスであり、かつ、宛先ポート番号がSyslogを示すものであるため、ユーザBの通信制御ポリシーにしたがって、ログ通知パケットを外部網へ転送することを許可する。このように、クラウドシステム10では、ユーザAサーバ20に設けられた仮想サーバ間、もしくは仮想サーバと外部網の装置との通信と、ユーザBサーバ22に設けられた仮想サーバ間、もしくは仮想サーバと外部網の装置との通信のいずれでも、L3スイッチ12、L2スイッチ14、ファイアウォール16、ロードバランサ18を共用する。これにより、個々のユーザが負担すべきシステム構築および運用のコストを一層低減できる。
【0063】
次に、ユーザA網外部の装置が発信元となり、ユーザA網の各装置へアクセスする際の動作を説明する。ここでは例として、ユーザA端末24からユーザA−FW32へログインするときの動作を説明する。この場合、クラウドシステム10では、作業用サーバ78を踏み台として使用する。なお、ユーザB網外部の装置が発信元となり、ユーザB網の各装置へアクセスする際も同様の動作となる。
【0064】
ユーザAの管理者は、ユーザA端末24を操作して、ユーザA端末24と作業用サーバ78をVPN経由で接続させる。そして、VPN経由で作業用サーバ78へのログイン要求を送信させる。VPNによる接続であるため、ユーザA−FW32は、ログイン要求の通過を許可する。作業用サーバ78は、ログイン要求を受け付けると、ユーザAの管理者のアカウント情報をディレクトリサーバ76に問い合わせ、ディレクトリサーバ76は、ユーザAの管理者のアカウント情報を作業用サーバ78へ提供する。作業用サーバ78は、ログイン要求で指定されたアカウント情報と、ディレクトリサーバ76から提供されたアカウント情報が整合する場合にログインを許可し、作業用サーバ78を操作するためのコンソール画面の表示内容を示すデータをユーザA端末24へ送信する。それとともに作業用サーバ78は、コンソール画面の表示内容を示す画像データの記録を開始する。
【0065】
作業用サーバ78へのログインが許可された場合に、ユーザA端末24は、作業用サーバ78のコンソール画面をモニターに表示させる。ユーザAの管理者は、作業用サーバ78のコンソール画面に対して、ユーザA−FW32へのログインを指示する操作を入力する。例えば、CLIのシェルを起動して、ユーザA−FW32へのリモートログインを要求するSSHコマンドを入力してもよい。ユーザA端末24は、ユーザA−FW32へのログイン要求を作業用サーバ78へ送信し、作業用サーバ78は、そのログイン要求をユーザA−FW32へ送信する。また、作業用サーバ78は、コンソール画面に対するユーザAの管理者の操作内容を示す画像データを保存する。
【0066】
内部セグメント70の作業用サーバ78が発信元であり、宛先ポート番号がSSHを示すため、ユーザA−FW32は、ログイン要求パケットを通過させ、ログイン要求を受け付ける。ユーザA−FW32は、ユーザAの管理者のアカウント情報をディレクトリサーバ76に問い合わせ、ディレクトリサーバ76は、ユーザAの管理者のアカウント情報をユーザA−FW32へ提供する。ユーザA−FW32は、ログイン要求で指定されたアカウント情報と、ディレクトリサーバ76から提供されたアカウント情報が整合する場合にログインを許可する。ユーザA−FW32は、ログインを許可する場合、その旨のメッセージを作業用サーバ78へ送信し、コマンドを受け付け可能な状態で待機する。作業用サーバ78は、ユーザA−FW32から送信されたメッセージをコンソール画面の表示データとしてユーザA端末24へ送信する。それとともに作業用サーバ78は、そのメッセージを含むコンソール画面の画像データを保存する。
【0067】
以降、ユーザA端末24は、ユーザA−FW32に対する操作コマンドを、作業用サーバ78を介してユーザA端末24へ送信し、ユーザA−FW32はその操作コマンドに応じた処理を実行する。例えば、ユーザA用の通信制御ポリシーの変更処理を実行する。またユーザA−FW32は、操作コマンドの実行結果を示すメッセージを作業用サーバ78へ送信する。作業用サーバ78は、ユーザA−FW32から送信されたメッセージをコンソール画面の表示データとしてユーザA端末24へ送信する。それとともに作業用サーバ78は、そのメッセージを含むコンソール画面の画像データを保存する。ユーザA端末24がユーザA−FW32からログアウトし、さらに作業用サーバ78からログアウトすると、作業用サーバ78は、コンソール画面の画像データの記録を終了する。
【0068】
ユーザA端末24から、ウェブサーバ62、APサーバ72、DBサーバ74等へログインする際の動作も同様である。例えば、作業用サーバ78は、作業用サーバ78のコンソール画面に入力された、DBサーバ74をログイン先に指定するログイン要求をユーザA端末24から受け付けると、そのログイン要求をDBサーバ74へ送信する。内部セグメント70の作業用サーバ78が発信元であり、宛先ポート番号がSSHを示すため、ユーザA−FW32は、ログイン要求を通過させる。DBサーバ74は、ユーザAの管理者のアカウント情報をディレクトリサーバ76に問い合わせ、ディレクトリサーバ76は、ユーザAの管理者のアカウント情報をDBサーバ74へ提供する。DBサーバ74は、ログイン要求で指定されたアカウント情報と、ディレクトリサーバ76から提供されたアカウント情報が整合する場合にログインを許可する。
【0069】
このように、クラウドシステム10では、ユーザのアカウント情報を、そのユーザ網のディレクトリサーバが一元管理する。これにより、ユーザアカウントの効率的な管理および保守を実現する。ユーザ網のファイアウォールおよび各仮想サーバにログインするアカウントは管理者単位で共通であるため、ユーザの負担も低減できる。また、クラウドシステム10では、外部網の管理者端末からのアクセスを、所定のVPN経由であることを条件に作業用サーバ78が受け付け、作業用サーバ78を踏み台として各仮想サーバへのアクセスを許可する。このとき作業用サーバ78は、ユーザのログイン期間中、ユーザの操作入力内容を示す画像を継続して記録する。これにより、不正操作がなされたことの証左物を残すことができる。
【0070】
次に、ユーザAサーバ20に仮想サーバを構築する際の動作を説明する。
ユーザAの管理者は、ユーザA端末24を操作し、中継サーバ44を踏み台にしてクラウド管理サーバ52へログインする。クラウド管理サーバ52は、
図3に示した仮想サーバの複数種類のテンプレートを示す選択画面をユーザA端末24へ提供する。ユーザAの管理者が選択画面において特定のテンプレートを選択すると、ユーザA端末24は、選択されたテンプレートを示す情報をクラウド管理サーバ52へ送信する。クラウド管理サーバ52は、選択されたテンプレートに対応づけられた仮想サーバの設定指示をユーザAサーバ20へ送信する。ユーザAサーバ20のVMWare(商標または登録商標)は、設定指示にしたがって、選択されたテンプレートが示す態様の仮想サーバを構築する。
【0071】
これにより、仮想サーバの構築におけるユーザの負担を低減できる。ユーザは、テンプレート選択すれば仮想サーバが自動で構築されるため、あとは、構築された仮想サーバにDMZもしくは内部セグメントのIPアドレスを付与し、適宜アプリケーションを導入すればよい。ユーザBサーバ22に仮想サーバを構築する際の動作も同様である。
【0072】
以上、本発明を実施の形態をもとに説明した。これらの実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せによりいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【0073】
また、請求項に記載の各構成要件が果たすべき機能は、実施の形態および変形例において示された各構成要素の単体もしくはそれらの連携によって実現されることも当業者には理解されるところである。