JPWO2006067831A1 - 中継処理プログラム及び通信処理プログラム、並びにファイアウォールシステム - Google Patents

中継処理プログラム及び通信処理プログラム、並びにファイアウォールシステム Download PDF

Info

Publication number
JPWO2006067831A1
JPWO2006067831A1 JP2006548631A JP2006548631A JPWO2006067831A1 JP WO2006067831 A1 JPWO2006067831 A1 JP WO2006067831A1 JP 2006548631 A JP2006548631 A JP 2006548631A JP 2006548631 A JP2006548631 A JP 2006548631A JP WO2006067831 A1 JPWO2006067831 A1 JP WO2006067831A1
Authority
JP
Japan
Prior art keywords
connection request
destination
communication
information
source client
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2006548631A
Other languages
English (en)
Other versions
JP4570628B2 (ja
Inventor
太郎 齋木
太郎 齋木
敏 伊與田
敏 伊與田
芳正 小山
芳正 小山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2006067831A1 publication Critical patent/JPWO2006067831A1/ja
Application granted granted Critical
Publication of JP4570628B2 publication Critical patent/JP4570628B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0272Virtual private networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer

Abstract

ファイアウォールにおけるセキュリティ管理を容易にする。ファイアウォール(1)には、通過を許容する1または複数のポートを集約した集約ポートのみが許可設定されている。通信元クライアント(4)は、内部ネットワークに接続する目的の接続要求先と接続する場合、目的の接続要求先が設定された接続要求情報を、集約ポートを宛先として発行する。中継機サーバ(2)では、接続要求情報取得手段(21)は、ファイアウォール(1)を通過し、集約ポートより入力された接続要求情報を読み出す。中継手段(22)は、接続要求情報に基づいて宛先を目的の接続要求先に変更し、その接続要求情報を目的の接続要求先に送信して接続要求を行うとともに、目的の接続要求先から取得した接続結果情報を通信元クライアント(4)に送信する。

Description

本発明は中継処理プログラム及び通信処理プログラム並びにファイアウォールシステムに関し、特に外部ネットワークと内部ネットワークとの接続点に設置されて通信管理を行うファイアウォールを経由するデータ通信を中継する中継処理プログラム及び通信処理プログラム並びにファイアウォールシステムに関する。
近年、コンピュータネットワークの拡大に伴って、ネットワーク環境での不正侵入の防御、機密保護などのネットワークセキュリティの重要性が増している。
従来、コンピュータ間で通信を行なう場合の一般的なプロトコルとしてTCP/IP(Transmission Control Protocol/Internet Protocol)が普及しており、そのTCP/IPでは、対象のコンピュータ機器を特定するために、IPアドレスとTCPポートを使用する。以下、IPアドレスとTCPポートで特定される対象のコンピュータ機器の通信ポートをポートまたはソケットとする。この際、情報管理におけるセキュリティをふまえ、コンピュータ機器間で使用する通信にはファイアウォールと呼ばれる制御機構を設け、特定のポートでの通信しか行うことができないようにしている。
ファイアウォールは、外部ネットワークと内部ネットワークとの接続点に設置され、外部ネットワークからファイアウォールを超えるアクセス要求を受信すると、予め設定された規制条件に基づき、アクセス要求を許容するか否かを判断して内部ネットワークへの不正アクセスを防いでいる。この際、アクセス要求を許容するか否かを判断した後で、かつ許容する場合のみアクセス要求元のコンピュータ機器とコネクションを確立することによって、ネットワーク資源の有効利用を図るファイアウォール方式がある(たとえば、特許文献1参照)。
図12は、ファイアウォールによる通信制御機能の一例を示した図である。
ファイアウォール901は、通信元クライアント902が接続される外部ネットワークと、通信先サーバ1(903)、通信先サーバ2(904)が接続される内部ネットワークの接続点に配置され、予め設定された規制条件に基づき通信元クライアント902からのアクセス要求を許容するかどうかを判断する。通信元クライアント902からは、アプリケーションごとに特定のTCPポートを利用してファイアウォールを越えた先にある通信先サーバ1(903)もしくは通信先サーバ2(904)にアクセス要求を行う。
たとえば、ファイアウォール901に、IPアドレス「111.123.1.50」、TCPポート「80」と、IPアドレス「111.123.1.51」、TCPポート「81」のアクセス要求を許容するように設定がされていたとする。この場合、通信元クライアント902から受信したアクセス要求が、規制条件であるIPアドレス「111.123.1.50」、TCPポート「80」、もしくはIPアドレス「111.123.1.51」、TCPポート「81」に合致していた場合のみファイアウォール901を通過させる。
特開平10−215248号公報(段落番号〔0013〕〜〔0020〕、図1)
上記の説明のように、特定のポートを利用してファイアウォールを越えた通信を行なうためには、通過を許可するポートをファイアウォールに登録する必要がある。たとえば、図12では、ポート80と81をファイアウォールに対して設定する必要がある。
しかしながら、従来のファイアウォールの設定では、アプリケーションごとに使用するポートを許可設定しなければならないため、アプリケーションが複数存在する場合には管理対象のポートも多数となり、そのためのセキュリティ管理に大幅な手間を必要としてしまうという問題点がある。また、外部ネットワークの通信元クライアントが、内部ネットワークの通信先サーバからイベント結果など取得するような双方向通信を行うアプリケーションでは、外部ネットワークからのアクセス要求のためのポートのほか、内部ネットワークからのイベント結果送信のためのポートを別個にファイアウォールに設定しなければならない。
このように、ファイアウォールに設定して管理しなければならないポート数は、システム規模に応じて増大する傾向がある。管理対象のポートが多い場合、新たにアプリケーションをインストールする際、正しく行わなければならないファイアウォールの設定にミスが生じる可能性が高くなる。また、アプリケーションの削除や変更に応じてファイアウォールの設定を変更する必要があるが、登録が多数であると、設定ミスばかりでなく、変更の必要性を見逃されてしまうもしくは放置されてしまうケースも発生する。そして、このような設定ミスやバージョンアップ忘れなどによってセキュリティホールが発生し、セキュリティが大幅に低下してしまう可能性がある。実際、セキュリティホールは人為的なミスで発生することが多いことが知られている。
本発明はこのような点に鑑みてなされたものであり、ファイアウォールにおけるセキュリティ管理を容易にし、人為的なミスによるセキュリティの低下を防止することが可能なファイアウォールを介した中継処理プログラム及びファイアウォールシステムを提供することを目的とする。
本発明では上記課題を解決するために、図1に示すような処理をコンピュータに実行させるための中継処理プログラムが提供される。本発明にかかる中継処理プログラムは、通信元クライアント4が接続する外部ネットワークと、通信先サーバA(3a)、通信先サーバB(3b)及び通信先サーバC(3c)が接続する内部ネットワークとの接続点に設置されるファイアウォール1を通過する通信を中継する中継機サーバ2に適用される。
ファイアウォール1には、アクセスを許可する1または複数のポートを集約した集約ポートが許可設定されており、外部ネットワークを介して入力されるアクセスを監視し、集約ポートへのアクセスのみを通過させる。中継機サーバ2は、集約ポートを備え、集約ポートを介してファイアウォール1を通過したアクセスが入力される。また、通信元クライアント4は、所定のアプリケーションに応じてアクセスが必要となったときに、集約ポートを宛先として接続要求情報を発行して接続要求を行う。接続要求情報には、予め、通信元クライアント4が本来接続を要求する内部ネットワークの目的の接続先が設定されている。
中継機サーバ2は、ファイアウォール1が通過させた接続要求情報を取得する接続要求情報取得手段21と、接続要求情報に基づき目的の接続要求先へ接続要求情報を中継する中継手段22を具備する。接続要求情報取得手段21は、通信元クライアント4によって発行され、集約ポート経由で入力された接続要求情報を取得し、中継手段22へ伝達する。中継手段22は、接続要求先を接続要求情報に設定された目的の接続要求先に変更し、目的の接続要求先に対し接続要求情報を送信して接続要求を行うとともに、目的の接続要求先から接続結果情報を取得し、これを通信元クライアント4に送信する。
このようなファイアウォール1、中継機サーバ2及び通信元クライアント4によれば、通信元クライアント4は、内部ネットワーク内の目的の接続要求先と接続を行う場合、目的の接続要求先が記述された接続要求情報を集約ポートを宛先として発行する。ファイアウォール1は、許可設定された集約ポートを宛先とするその接続要求情報を通過させる。中継機サーバ2では、接続要求情報取得手段21が集約ポートを介して入力される接続要求情報を取得して中継手段22に伝達する。中継手段22は、接続要求情報に基づき、宛先を目的の接続要求先に変更して接続要求情報を送信する。そして、目的の接続先より接続結果情報を取得すると、宛先を通信元クライアント4として、これを送信する。このようにして、中継機サーバ2は、通信元クライアント4と、目的の接続要求先である通信先サーバA(3a)、通信先サーバB(3b)、通信先サーバC(3c)のいずれかとの間の接続処理を中継する。そして、接続要求が許可された後は、通信元クライアント4と目的の接続要求先のサーバとの通信を中継処理する。
また、上記課題を解決するために、外部ネットワークと内部ネットワークとの接続点に設置されて通信管理を行うファイアウォールを越えて内部ネットワークに接続するサーバとの通信処理を行う通信処理プログラムが提供される。本発明にかかる通信処理プログラムは、通信元クライアントに適用される。通信元クライアントは、通信処理プログラムを実行することにより、通信処理手段を実現する。通信処理手段では、アクセスを許可する1または複数のポートを集約した中継機サーバの集約ポートが許可設定されるファイアウォールを超えて内部ネットワークに接続する目的の接続要求先にアクセスする場合に、目的の接続要求先を含む接続要求情報を作成し、集約ポートを宛先として接続要求情報を発行して接続要求を行うとともに、集約ポートを具備する中継機サーバによって目的の接続要求先に中継された接続要求情報に対して目的の接続要求先が作成した接続結果情報を中継機サーバ経由で受信する。
このような通信元クライアントによれば、通信処理手段は、アクセスを許可するポートが集約された集約ポートが許可設定されるファイアウォールを越えなければならない接続要求先に対してアクセスを行う場合、目的の接続要求先を含む接続要求情報を作成し、集約ポートを宛先としてこの接続要求情報を発行して接続要求を行う。これにより、接続要求情報は、ファイアウォールを通過して集約ポートを有する中継機サーバに伝達される。そして、中継機サーバが目的の接続要求先に中継した接続要求情報に対し、目的の接続要求先が応答として作成した接続結果情報が中継機サーバを経由して通信元クライアントに送信されるので、これを受信する。
また、上記課題を解決するために、中継機サーバと通信元クライアント及びファイアウォールを有するファイアウォールシステムが提供される。ファイアウォールは、アクセスを許可する1または複数のポートを集約した集約ポートが許可設定され、外部ネットワークに接続する通信元クライアントからのアクセスを捕捉し、集約ポートを宛先とするアクセスのみを通過させる。通信元クライアントは、ファイアウォールを越えて内部ネットワークに接続する目的の接続要求先にアクセスする場合に、目的の接続要求先を含む接続要求情報を作成し、集約ポートを宛先として接続要求情報を発行して接続要求を行うとともに、目的の接続要求先の作成した接続要求情報に対する接続結果情報を受信する。中継機サーバには集約ポートが設定されており、ファイアウォールが通過させた通信元クライアントからの接続要求情報を取得する接続要求情報取得手段と、取得した接続要求情報に基づき、宛先を目的の接続要求先に変更して接続要求情報を送信するとともに、目的の接続要求先から接続結果情報を受信して通信元クライアントに送信する中継手段と、を具備する。
このようなファイアウォールシステムによれば、通信元クライアントは、ファイアウォールを越えて内部ネットワークの通信先サーバにアクセスする場合、本来接続を要求する目的の接続要求先に関する情報を含む接続要求情報を作成し、宛先を中継機サーバの集約ポートとして発行する。接続要求情報は、ファイアウォールを通過して中継機サーバに入力される。中継機サーバは、接続要求情報を取得し、接続要求情報に基づき宛先を目的の接続要求先に変更してこの接続要求情報を目的の接続要求先に送信する。そして、目的の接続要求先が作成した接続結果情報を受信すると、宛先を通信元クライアントにしてこれを送信する。こうして、外部ネットワークに接続する通信元クライアントがファイアウォールの内側の内部ネットワークに接続する目的の接続要求先に発行する接続要求は、中継機サーバが集約して取得して目的の接続要求先に振り分けるとともに、目的の接続要求先の作成した接続結果情報が中継機サーバを経由して通信元クライアントに返る。
本発明では、中継機サーバが外部ネットワークに接続する通信元クライアントから受信したリクエストを一旦集約し、そこから内部ネットワークに接続する通信先サーバにリクエストを配布するので、ファイアウォールに設定するポートを最小で1つに集約することができる。これにより、ファイアウォールに設定するポートの管理を容易にすることが可能となり、この結果、設定ミスや、バージョンアップ忘れなどの人為的なミスによるセキュリティホールの発生を回避し、セキュリティレベルを保持することができる。
本発明の上記および他の目的、特徴および利点は本発明の例として好ましい実施の形態を表す添付の図面と関連した以下の説明により明らかになるであろう。
実施の形態に適用される発明の概念図である。 第1の実施の形態の構成を示す概略図である。 本実施の形態の通信元クライアントのハードウェア構成例を示すブロック図である。 実施の形態の中継機サーバのソフトウェアモジュール構成例を示した図である。 実施の形態のHTTPの中継処理の流れを示した図である。 実施の形態の通信元クライアントの接続要求情報(HTTPヘッダ)の変換例を示す図である。 実施の形態の中継機サーバの接続要求情報(HTTPヘッダ)の変換例を示す図である。 本実施の形態におけるSSL通信手順について示した図である。 本実施の形態のSSLトンネリング通信の流れを示した図である。 本実施の形態のSSLトンネリング通信の通信例を示した図である。 本実施の形態のイベント通知手順を示した図である。 ファイアウォールによる通信制御機能の一例を示した図である。
以下、本発明の実施の形態を図面を参照して説明する。まず、実施の形態に適用される発明の概念について説明し、その後、実施の形態の具体的な内容を説明する。
図1は、実施の形態に適用される発明の概念図である。
本発明に係るファイアウォールシステムは、外部ネットワークに接続する通信元クライアント4と、内部ネットワークに接続する中継機サーバ2、通信先サーバA(3a)、通信先サーバB(3b)及び通信先サーバC(3c)と、外部ネットワークと内部ネットワークとの接続点に設置されるファイアウォール1を有し、通信元クライアント4と通信先サーバ(3a、3b、3c)との間でパケット通信が行なわれている(以下、特に特定する必要がない場合は、通信先サーバ(3a、3b、3c)と表記する。)。
ここで、外部ネットワークは、ファイアウォール1によって内部ネットワークへのアクセスが制限されるネットワークで、内部ネットワークは、ファイアウォール1によって外部からの攻撃や不正アクセスから守られるセキュリティレベルが高位なネットワークを指す。なお、ファイアウォール1と中継機サーバ2は、別装置もしくは1台の装置のいずれで構成されてもよい。また、図では、通信元クライアント4からファイアウォール1、中継機サーバ2を経由して通信先サーバ(3a、3b、3c)へ続くパケットの流れを示しているが、通信の際には、さらに応答として通信先サーバ(3a、3b、3c)から中継機サーバ2、ファイアウォール1を経由して通信元クライアント4へ応答パケットが流れる。
ファイアウォール1は、外部ネットワークと内部ネットワークを介して行われる通信を監視し、予め設定された規制条件に基づいて接続要求を許容するか否かを判断し、許容するもののみ通過させる。ここでは、1または複数のポートを集約した1つの集約ポートに対するアクセス要求のみを許容するように規制条件が設定される。ここで、集約ポートには、中継機サーバ2のポート(図1の例では、ポート8080)が最小で1つ設定される。このため、外部ネットワークに接続する通信元クライアント4から内部ネットワーク内の通信先サーバ(3a、3b、3c)にアクセスする場合、必ず中継機サーバ2を経由しなければならない。
中継機サーバ2は、接続要求情報を取得する接続要求情報取得手段(以下、ヘッダ取得手段とする)21、中継処理を行う中継手段22及びトンネリング処理を行うトンネリング手段23を具備する。
ヘッダ取得手段21は、接続要求情報が含まれる通信パケットのヘッダ部を取得し、ヘッダ部の内容を解析し、トンネリング処理が必要である場合は、トンネリング手段23を起動する。それ以外の場合は、そのまま中継手段22を起動する。
中継手段22は、通信元クライアント4が送信したパケットの宛先を目的の接続要求先に変換して、通信先サーバ(3a、3b、3c)に送信する中継処理を行う。また、通信先サーバ(3a、3b、3c)から取得した応答パケットの宛先を通信元クライアント4に送信する中継処理を行う。パケット及び応答パケットを中継する場合に、ヘッダ部の内容に変更する必要があれば、ヘッダ部を更新した後、送信処理を行う。たとえば、接続要求情報に目的の接続要求先までに経由するサーバに関する経由情報が含まれており、経由情報に自装置(中継機サーバ2)に関する情報が含まれているときには、経由情報から中継機サーバ2に関する情報を削除する。また、これに対する通信先サーバ(3a、3b、3c)からの応答パケットには、経由情報を付加して通信元クライアント4に送信させる。
トンネリング手段23は、通信元クライアント4との間及び通信先サーバ(3a、3b、3c)との間の接続を確保し、接続が確保された後は、通信元クライアント4から受信したパケットの宛先を通信先サーバ(3a、3b、3c)としただけでパケットの内容を操作せずに送信し、同様に、通信先サーバ(3a、3b、3c)から受信した応答パケットも宛先を通信元クライアントとしただけでパケットの内容を操作せずに送信する。このように、中継機サーバ2がパケットの内容を関知せずに、宛先を付け替えて中継する処理をトンネリング処理とする。双方との接続を確保するネゴシエーション手順を含むトンネリング処理の詳細については後述する。
通信先サーバA(3a)、通信先サーバB(3b)及び通信先サーバC(3c)は、通信元クライアント4がデータ通信を行う目的の接続先であって、中継機サーバ2を経由して通信元クライアント4との間のデータ通信が行なわれる。
通信元クライアント4は、複数のアプリケーション、アプリケーションA(41a)、アプリケーションB(41b)及びアプリケーションC(41c)を具備し、通信処理を行う通信処理手段42を具備する。なお、特に限定する必要がない場合は、アプリケーション(41a、41b、41c)と表記する。
アプリケーション(41a、41b、41c)は、それぞれ所定のアプリケーション処理を実行し、必要に応じて通信先サーバ(3a、3b、3c)にアクセスするため、通信処理手段42に対して目的の接続要求先の指定や接続要求先への要求などを記述した接続要求情報を含むヘッダ部を作成し、通信処理手段42に通信を依頼する。ヘッダ部はアプリケーションに応じて内容が異なる。また、使用する通信プロトコルも異なる場合もある。たとえば、WEBサーバに対してHTTPを用いて通信する場合や、さらにSSLを用いてセキュリティを確保して通信を行なう場合などがある。また、通信先サーバ(3a、3b、3c)で発生するイベント情報を必要とする場合がある。
通信処理手段42は、アプリケーション(41a、41b、41c)からのリクエストによって、ファイアウォール1を超えて内部ネットワークに接続する通信先サーバ(3a、3b、3c)にアクセスする。アプリケーション(41a、41b、41c)からヘッダ部を取得すると、必要であれば、ヘッダ部の内容を変更し、集約ポートを宛先として接続要求情報を発行して接続要求を行う。たとえば、ヘッダ部にパケットを中継する中継機サーバに関する情報を設定する必要がある場合には、ヘッダ部に経由情報を付加した後、集約ポートに向けてパケットを送信する。そして、応答として目的の接続要求先が作成した接続結果情報を中継機サーバ2経由で受信する。また、通信先サーバ(3a、3b、3c)の任意のタイミングで発生するイベント情報が必要な場合、イベント情報が取得されるまで、イベント情報を要求するパケットを上記のような手順で繰り返し送信する。
なお、上記の説明の中継機サーバ2の各処理手段は、コンピュータが中継処理プログラムを実行することによりその処理機能を実現する。また、上記の説明の通信元クライアント4の各処理手段及びアプリケーションは、コンピュータが通信処理プログラム及びアプリケーションプログラムを実行することにより、その処理機能を実現する。
このような構成のファイアウォールシステムの動作について説明する。
ファイアウォール1には、予め中継機サーバ2の所定のポートが割り当てられる集約ポート(8080)のみが許可設定されている。
通信元クライアント4は、アプリケーション(41a、41b、41c)から接続要求情報を取得すると、必要に応じて、中継を行う中継機サーバ2に関する経由情報を付加するなどのヘッダ変換処理を行い、宛先を中継機サーバ2の集約ポート(8080)に設定してパケットを送信する。
パケットを監視するファイアウォール1は、宛先が集約ポート(8080)であるこのパケットの通過を許可し、パケットが中継機サーバ2に受信される。
中継機サーバ2では、ヘッダ取得手段21が、ヘッダ部を読み出してその内容を解析し、トンネリング処理が必要であれば、トンネリング手段23を起動する。
トンネリング処理が必要のない場合、中継手段22がそのまま起動される。中継手段22では、通信元クライアント4から取得したパケットの接続要求情報に付加された経由情報を削除するなどのヘッダ変換処理をした後、宛先を目的の接続要求先の通信先サーバ(3a、3b、3c)に設定してパケットを送信する。そして、通信先サーバ(3a、3b、3c)から接続結果情報を含む応答パケットを受信すると、経由情報を付加するなどのヘッダ変換処理をした後、宛先を通信元クライアント4に設定して送信する。
一方、トンネリング処理を行う場合は、トンネリング手段23が起動され、まず、通信元クライアント4との間及び目的の接続要求先である通信先サーバ(3a、3b、3c)との間の双方の接続が確保される。双方との接続が確保された後は、通信元クライアント4と通信先サーバ(3a、3b、3c)との間で交換されるパケットの宛先の付け替えを行い、通信元クライアント4から受信したパケットは通信先サーバ(3a、3b、3c)へ、通信先サーバ(3a、3b、3c)から受信したパケットは通信元クライアント4に送信する。
このように、中継機サーバは、接続要求情報に基づいて本来の接続要求先に対してパケットを中継する中継処理を行うので、外部ネットワークに接続する通信元クライアントからのリクエストを中継機サーバに一旦集約し、そこから本来の接続要求先である通信先サーバに配布させることができる。従って、所定のアプリケーションを実現するために、ファイアウォールに許可設定しなければならないポート数を、最小で1に集約することができる。この結果、ファイアウォールにおけるポート管理を容易できるばかりでなく、ポート設定時のミスなどによるセキュリティホールの発生を回避することができる。システム規模にもよるが、従来、ファイアウォールに設定しなければならないポート数は、数万個に及ぶ場合があり、これを最小で1つに集約することができれば、セキュリティレベルの保持に多大な効果が期待できる。
以下、第1の実施の形態として、HTTPに適用した場合を例に図面を参照して説明する。HTTPは、情報の転送を依頼するリクエストとそれに対するサーバのレスポンスから構成される。通信元クライアントは、URLのパス名、Webブラウザの種類、使用言語などの情報をGETリクエストでサーバに送信し、応答としてサーバからデータやエラーコードなどを取得する。
図2は、第1の実施の形態の構成を示す概略図である。図1と同じものには同じ番号を付し、説明は省略する。
中継機サーバ2は、通信元クライアント4a、4b、4cとの間でHTTPサーバ処理を行うHTTPサーバ部201と、通信先サーバ3a、3bとの間でリクエスト配信サービスを行うリクエスト配信サービス部202を有する。HTTPサーバ処理部201は、ファイアウォール1に許可設定されている集約ポートを介して通信元クライアント4a、4b、4cから入力されるパケットに応じて要求元の通信元クライアント4a、4b、4cと接続し、パケットをリクエスト配信サービス部202へ引き渡す。そして、リクエスト配信サービス部202から受け取った応答パケットを要求先の通信元クライアント4a、4b、4cへ送信する。リクエスト配信サービス部202は、本来の接続要求先である通信先サーバ3a、3bに対し、HTTPクライアントとして機能する。HTTPサーバ部201から引き渡されたHTTPパケットの接続要求情報に従って宛先を目的の接続要求先(通信先サーバ3a、3b)に変更して送信する。そして、応答として取得した応答パケットをHTTPサーバ部201へ引き渡す。
通信先サーバ3a、3bは、同様の構成をとり、HTTPサーバ処理を行うHTTPサーバ部301、リソース管理を行うリソースマネージャー部302を有する。HTTPサーバ301は、中継機サーバ2を経由して取得したHTTPパケットを解析し、パケットが正常であると認められれば、処理をリソースマネージャー部302へ引き渡し、得られたデータなどで応答パケットを作成して中継機サーバ2へ送信する。リソースマネージャー部302は、データの読み出しなどのリクエスト処理を行って結果をHTTPサーバ部301へ返す。
通信元クライアント4a、4b、4cは、同様の構成をとり、アプリケーション処理を行うアプリケーション部401と、HTTPクライアント処理を行うHTTPクライアント部402を有する。アプリケーション部401は、所定のアプリケーション処理を行い、必要に応じて、HTTPクライアント部402に対して通信先サーバ3a、3bへのアクセス要求を行う。HTTPクライアント部402は、アプリケーション部401からアクセス要求を受けると、HTTPのプロトコルに従って、通信先サーバ3a、3bに向けたリクエストパケットを作成する。このとき、接続要求情報に目的の通信先サーバ(3a、3b)を設定し、中継機サーバ2の集約ポートを宛先にしてパケットを送信する。受信したパケットは、アプリケーション部401に引き渡す。
このようなファイアウォールシステムでは、たとえば、通信元クライアント4aのアプリケーション部401で通信先サーバ3aへのデータ要求が発生した場合、アプリケーション部401からリクエストによってHTTPクライアント402でリクエストのパケットが作成される。このパケットには、接続要求情報に目的の接続要求先(通信先サーバ3a)が設定され、宛先を中継機サーバ2の集約ポートとして送信される。このパケットは、集約ポートが許可設定されるファイアウォール1を通過し、中継機サーバ2のHTTPサーバ部201で受信され、リクエスト配信サービス部202によって目的の接続要求先(通信先サーバ3a)に宛先が変換されて送信される。通信先サーバ3aは、HTTPサーバ部301でこのパケットを受信し、リソースマネージャー部302がリクエスト処理を行った結果の応答パケットがHTTPサーバ301で作成され、中継機サーバ2へ送信される。中継機サーバ2では、リクエスト配信サービス部202は、宛先を通信元クライアント4aに変換し、HTTPサーバ201より通信元クライアント4aに送信される。そして、通信元クライアント4aでは、HTTPクライアント402が応答パケットを受信し、要求データがアプリケーション部401に引き渡される。
ところで、ファイアウォール1、中継機サーバ2、通信先サーバ3a、3b、通信元クライアント4a、4b、4cは、コンピュータがプログラムを実行することにより処理機能を実現する。各装置のハードウェア構成を通信元クライアントを例に説明する。図3は、本実施の形態の通信元クライアントのハードウェア構成例を示すブロック図である。
通信元クライアント4は、CPU(Central Processing Unit)101によって装置全体が制御されている。CPU101には、バス107を介してRAM(Random Access Memory)102、ハードディスクドライブ(HDD:Hard Disk Drive)103、グラフィック処理装置104、入力インタフェース105、通信インタフェース106が接続されている。
RAM102には、CPU101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM102には、CPU101による処理に必要な各種データが格納される。HDD103には、OSやアプリケーションのプログラムが格納される。グラフィック処理装置104には、モニタ108が接続されており、CPU101からの命令に従って画像をモニタ108の画面に表示させる。入力インタフェース105には、キーボード109aやマウス109bが接続されており、キーボード109aやマウス109bから送られてくる信号を、バス107を介してCPU101に送信する。通信インタフェース106は、ネットワーク5に接続されており、ネットワーク5を介して中継機サーバ2との間でデータの送受信を行う。
このようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。なお、図3には、通信元クライアントのハードウェア構成を示したが、ファイアウォール、中継機サーバ、通信先サーバのハードウェア構成も同様である。
次に、中継機サーバのソフトウェアモジュール構成について説明する。図4は、実施の形態の中継機サーバのソフトウェアモジュール構成例を示した図である。
中継機サーバ2の中継機機能を実現するため、HTTPセッション210は、HTTPSトンネリング211、リクエスト212、レスポンス213、チャンク入力ストリーム214、チャンク出力ストリーム215、HTTPヘッダ216、サイズ管理入力ストリーム217、サイズ管理出力ストリーム218及びGZIPレスポンス219などのモジュール群を有する。
HTTPセッション210では、通信を確立するための情報を生成するなど、HTTP通信全般を管理する。HTTPSトンネリング211は、SSLが適用された場合に、トンネリング処理を制御する。リクエスト212は、通信元クライアントから通信先サーバへ流れるデータ通信を管理するモジュールで、要求側のクライアントから送られるデータの流れを管理するチャンク入力ストリーム214と、処理側の通信先サーバから送られるデータの流れを管理するチャンク出力ストリーム215と、HTTPヘッダ操作を行うHTTPヘッダ216によりデータ制御を行う。レスポンス213は、通信先サーバから通信元クライアントへ流れるデータ通信を管理するモジュールで、通信先サーバへ送られるデータストリームの制御を行うサイズ管理入力ストリーム217と、通信先サーバから送られるデータストリームの制御を行うサイズ管理出力ストリーム218と、HTTPヘッダ216によりデータ制御を行う。また、必要に応じて、GZIPレスポンス219により圧縮データが復号される。
以上の構成の中継機サーバにおけるHTTPの中継処理の動作について説明する。図5は、実施の形態のHTTPの中継処理の流れを示した図である。
(1)通信元クライアント4から通信先サーバ3に対する接続要求が、中継機サーバ2を宛先として発行される。接続要求の際には、接続要求情報として、目的の接続要求先が設定されている。
(2)中継機サーバ2が、通信元クライアント4が発行した接続要求を受信し、その内容の確認を行う。
(3)中継機サーバ2は、接続要求が確認されたら、接続要求情報の内容を目的の接続要求先に合わせて更新する。たとえば、接続要求情報に中継機サーバ2に関する経由情報が含まれていた場合、これを削除する。
(4)中継機サーバ2は、更新した接続要求情報を、目的の接続要求先の通信先サーバ3を宛先として送信する。
(5)通信先サーバ3は、中継機サーバ2により中継された通信元クライアント4からの接続要求を受信し、所定の処理実行後、接続結果を中継機サーバ2に向けて送信する。
(6)中継機サーバ2は、通信先サーバ3の接続結果を受信し、取得した接続結果情報の内容を通信元クライアントに合わせて更新する。たとえば、中継機サーバ2に関する経由情報を削除していた場合、中継情報を追加する。
(7)中継機サーバ2は、更新した接続結果情報を通信元クライアント4に送信する。
以上の手順により、一連の通信処理が実行される。
ここで、接続要求情報(HTTPヘッダ)の変換について例をあげて説明する。
まず、通信元クライアント4におけるヘッダ変換処理について説明する。図6は、実施の形態の通信元クライアントの接続要求情報(HTTPヘッダ)の変換例を示す図である。
通信元クライアント4では、アプリケーションに応じて作成されるオリジナルのHTTPヘッダ501と、目的の接続要求先を示す要求アドレスと中継機サーバを示す中継機アドレスのアドレス情報502とを用いて、HTTPヘッダに経由情報が付加されたクライアント変換HTTPヘッダ503を作成する。
第1に、オリジナルのGET命令に目的の接続要求先を付加して変換する。図の例では、オリジナルHTTPヘッダ501に示すGET命令[GET/index.htmlHTTP/1.0]に目的の接続先の[www.def.co.jp]を付加し、クライアント変換HTTPヘッダ503に示す[GET/http://www.def.co.jp/index.htmlHTTP/1.0]に変換する。
また、接続要求先を目的の接続要求先から中継機サーバに変換する。図の例では、オリジナルHTTPヘッダ501に示す目的の接続要求先を表す[Host:www.def.co.jp]から、クライアント変換HTTPヘッダ503に示す中継機サーバを表す[Host:proxy.abc.co.jp]に変換する。
以上の手順が通信元クライアント4で実行されることにより、宛先を中継機サーバ2とし、目的の接続要求先が設定されるHTTPヘッダが作成され、中継機サーバ2に送信される。
中継機サーバ2は、通信元クライアント4からクライアント変換HTTPヘッダ503を受信し、ヘッダの変換を行う。図7は、実施の形態の中継機サーバの接続要求情報(HTTPヘッダ)の変換例を示す図である。
中継機サーバ2では、まず、GET命令に付加された目的の接続要求先を削除する。図の例では、クライアント変換HTTPヘッダ503の[GET/http://www.def.co.jp/index.htmlHTTP/1.0]から[www.def.co.jp]を削除し、サーバ変換HTTPヘッダ504に示す[GET/index.htmlHTTP/1.0]に変換する。
さらに、接続要求先を変換する。図の例では、クライアント変換HTTPヘッダ503に示す中継機サーバを表す[Host:proxy.abc.co.jp]からサーバ変換HTTPヘッダ504に示す目的の接続要求先を示す目的の接続要求先を表す[Host:www.def.co.jp]に変換する。
以上の手順が中継機サーバ2で実行されることにより、中継処理のため通信元クライアント4で付加された情報が削除され、本来のオリジナルHTTPヘッダと同じものが作成される。
こうして、オリジナルHTTPヘッダが目的の接続要求先に送信される。また、目的の接続要求先から送信される応答パケットのHTTPヘッダにも同様の操作が行われ、中継機サーバ2を経由して通信元クライアント4に送信される。
ところで、HTTPでは、セキュリティ機能として、SSL通信プロトコルが用いられる場合がある。SSLは、TCP層とアプリケーション層間に位置し、上位のHTTPなどのデータを暗号化して送信する。SSLを用いたデータ通信では、盗聴した場合には内容を解釈することが非常に困難であり、改ざんすることも難しく、安全にデータを転送するために広く用いられている。このため、接続情報とその通信内容は対象となる接続元と接続先しか所有することができず、上記の説明のようにHTTPヘッダを解析し変更することができない。そこで、SSL通信の内容に触れることなく、通信の接続元と接続先を中継するトンネリング通信機能を実現する。
まず、SSL通信手順について説明する。図8は、本実施の形態におけるSSL通信手順について示した図である。
最初に、SSL通信処理を行うため、通信元クライアント4、中継機サーバ2及び通信先サーバ3間の接続を確立するトンネリング初期化手順が行われ、続いてトンネリング初期化が完了した後のSSL通信手順が行われる。
トンネリング初期化手順は、通信元クライアント4から中継機サーバ2に向けて通信先サーバ3との間のSSLトンネリング通信を要求するトンネリング要求601が送信されて、開始される。中継機サーバ2は、通信元クライアント4との接続を確保するとともに、通信先サーバ3のSSLサーバソケットに対する接続要求602を行い、通信先サーバ3との接続を確立する。通信先サーバ3との接続が確立された後、トンネリング初期化完了603を通信元クライアント4に送信する。
以上の手順により、通信元クライアント4と中継機サーバ2間の接続及び中継機サーバ2と通信先サーバ3間の接続が確保される。すなわち、中継機サーバ2を介して通信元クライアント4と通信先サーバ3間のSSL通信の接続が確立される。
SSL通信手順は、中継機サーバ2を介して通信元クライアント4と通信先サーバ3のSSL通信の接続が確立されると開始される。通信元クライアント4からSSLハンドシェーク開始604が送信されると、中継機サーバ2経由で通信先サーバ3が受信し、ハンドシェークが行われる。ハンドシェークが終了すると、SSL通信が開始され(605)、その結果が返る(606)。この間、中継機サーバ2は、通信元クライアント4から中継機サーバ2のソケットに向けて送信されたパケットを通信先サーバ3のSSLサーバソケットに変換して送るとともに、通信先サーバ3から送信された結果を通信元クライアント4に送信するソケット変換処理が行われる。このとき、中継機サーバ2では、ソケット変換を行うのみで、データ操作は行わない。
以上の手順が実行されることにより、SSL通信内容に触れることなく、通信の接続元と接続先を中継することができる。
ここで、SSLトンネリング初期化手順について詳細に説明する。図9は、本実施の形態のSSLトンネリング通信の流れを示した図である。
SSL通信を行なう際、通信内容は接続元と接続先により暗号化されており、中継機サーバで通信内容を把握することは非常に困難である。しかしながら、SSL通信が開始される際には、接続要求としてHTTPヘッダの最初の1行に「CONNECT」という文字が記述される。そこで、「CONNECT」の文字列に基づき、SSL通信であるかどうかを判断することができる。
(1)通信元クライアント4から中継機サーバ2を経由して、SSL通信のための接続要求が発行される。このときのHTTPヘッダの最初の1行には、接続を要求する「CONNECT」が記述されている。
(2)中継機サーバ2は、接続要求を受信し、その接続要求内容を確認する。
(3)中継機サーバ2は、「CONNECT」の検出により、SSLトンネリング通信であると判断し、SSLトンネリング処理を開始する。このとき、既に接続元の通信元クライアント4からの接続要求を所有しているため、通信先サーバ3のSSLサーバソケットに対して接続要求を発行する。
(4)通信先サーバ3から接続結果が返る。
(5)中継機サーバ2は、トンネリング通信を行うために、その接続を確保する。
(6)中継機サーバ2は、トンネリング通信を行うために、通信元クライアント4からの接続要求(1)に応じて、通信元クライアント4との接続を確立し、その接続状態を確保しておく。
(7)中継機サーバ2は、通信先サーバ3から受信した接続結果(4)を途中で取得してしまったので、接続元である通信元クライアント4に対して接続要求が通ったことを接続先の通信先サーバ3に代わって代行通知する。
(8)以上の手順により、中継機サーバ2と通信先サーバ3との間で、SSL通信のための接続が確立され、SSL通信処理が開始される。
(9)以上の手順により、中継機サーバ2と通信元クライアント4との間で、SSL通信のための接続が確立され、SSL通信処理が開始される。
その後、中継機サーバ2は、接続が確保されている接続元(通信元クライアント4)からの接続に対して接続先(通信先サーバ3)の結果を返し、接続先(通信先サーバ3)からの接続に対しては接続元(通信元クライアント4)の結果を渡す。
具体例を用いて説明する。図10は、本実施の形態のSSLトンネリング通信の通信例を示した図である。
通信元クライアント4からは、通信先サーバ3を要求アドレス、中継機サーバ2を中継機アドレスに設定して、オリジナルのHTTPSヘッダ510が作成され、中継機サーバ2を宛先として送信される。なお、SSL通信プロトコルに従ったHTTPヘッダを以下では、HTTPSヘッダと表記する。HTTPSヘッダ510は、最初の1行を除いて暗号化され、中継機サーバ2では解読できないので、ヘッダ変換は行われない。こうして、オリジナルのHTTPSヘッダ510が、中継機サーバ2に受信される。
中継機サーバ2では、HTTPSヘッダ510の最初の1行を解読し、SSL通信であることを判定し、接続要求先 HYPERLINK "http://www.xyz.com" (www.xyz.com)を取得する。そこで、要求アドレスをHTTPSヘッダ510から取得した通信先サーバ3(www.xyz.com)として、受信したHTTPSヘッダ510をそのまま送信する。
また、通信先サーバ3からの接続承認も、中継機サーバ2を経由して通信元クライアント4に転送されるが、中継機サーバ2では、宛先のみを通信元クライアントとし、内容はそのまま転送する。
以上のように、中継機サーバ2は、中継する通信元クライアント4及び通信先サーバ3から受信したパケットについて、互いの転送先の接続以外の内容に変更を加えることなく、転送先に転送する。従って、転送先の接続以外には暗号化通信名内容に変更を加えることはない。このように、SSLトンネリング機能により、SSLを使用した安全性の高い通信を確保しつつ、通信の中継を行なうことが可能となり、ファイアウォールに許可設定するポートを最小とすることができる。
ところで、データ通信には、通信元クライアント側から接続要求が発生して実行される通信とともに、サーバ側に発生したイベントによって開始される通信がある。以下、このようなサーバ側のイベントによって開始される通信をイベント通知とする。従来、ファイアウォールを介してイベント通知を行う場合には、イベント通知のためのポートをファイアウォールに設定しなければならなかったが、本発明の実施の形態では、通信元クライアントからのデータ通信に使用する集約ポートを用いてイベント通知を行う。
以下、集約ポートを用いたイベント通知について説明する。
図11は、本実施の形態のイベント通知手順を示した図である。
通信先サーバ3では、イベント監視機能を開始し、イベントの発生を監視している。そして、イベント通知703を受けると、その内容を装置内に一時格納しておく。
イベント通知を受ける通信元クライアント4は、イベント取得処理を開始し、イベント取得通知701を、中継機サーバ2を経由して通信先サーバ3に対して発行する。中継機サーバ2は、中継処理を行ってイベント取得通知701を通信先サーバ3に転送する。図の例では、イベント取得通知701が発行された時点では、通信先サーバ3はイベント通知を受けていないので、イベント取得通知701に対する応答として、「イベント無」の結果通知702が発行される。「イベント無」の結果通知702は、中継機サーバ2により中継処理され通信元クライアント4に受信される。
通信元クライアント4は、イベント結果が得られなかったので、適当なタイミングで再びポーリングをかけ、イベント取得通知704を発行する。中継機サーバ2は、中継処理を行ってイベント取得通知704を通信先サーバ3に転送する。図の例では、イベント取得通知704が発行された時点では、通信先サーバ3はイベント通知703を取得し、その情報を一時保存しているので、イベント取得通知704に対する応答として、「イベント発生」の結果通知705が発行される。「イベント発生」の結果通知705は、中継機サーバ2により中継処理され通信元クライアント4に受信される。こうして、通信元クライアント4は、イベントの通知を取得する。
このように通信元クライアント側からのポーリング処理によってイベント通知を取得することで、集約ポートを介してイベント通知を行うことができる。
ファイアウォールに許可設定するポートが少ないほど、セキュリティを確保することができるので、このように、通信元クライアント4から所定のタイミングでイベント取得要求を行うことによって、集約ポートを介してイベント通知を行うことができる。この結果、ファイアウォールに許可設定するポートを集約することが可能となり、ファイアウォールのセキュリティホールの発生を防止することができる。
なお、上記の処理機能は、サーバコンピュータとクライアントコンピュータとによって実現することができる。その場合、中継機サーバが有すべき機能の処理内容を記述したサーバプログラム、及び通信元クライアントが有すべき機能の処理内容を記述したクライアントプログラムが提供される。サーバプログラムをサーバコンピュータで実行することにより、中継機サーバの処理機能がサーバコンピュータ上で実現される。また、通信処理プログラムをクライアントコンピュータで実行することにより、通信元クライアントの処理機能がクライアントコンピュータ上で実現される。
処理内容を記述したサーバプログラムやクライアントプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ハードディスク装置(HDD)、フレキシブルディスク(FD)、磁気テープなどがある。光ディスクには、DVD(Digital Versatile Disc)、DVD−RAM(Random Access Memory)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。光磁気記録媒体には、MO(Magneto-Optical disk)などがある。
サーバプログラムやクライアントプログラムを流通させる場合には、たとえば、各プログラムが記録されたDVD、CD−ROMなどの可搬型記録媒体が販売される。また、クライアントプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータからクライアントコンピュータにクライアントプログラムを転送することもできる。
サーバプログラムを実行するサーバコンピュータは、たとえば、可搬型記録媒体に記録されたサーバプログラムを、自己の記憶装置に格納する。そして、サーバコンピュータは、自己の記憶装置からサーバプログラムを読み取り、サーバプログラムに従った処理を実行する。なお、サーバコンピュータは、可搬型記録媒体から直接サーバプログラムを読み取り、そのサーバプログラムに従った処理を実行することもできる。
クライアントプログラムを実行するクライアントコンピュータは、たとえば、可搬型記録媒体に記録されたクライアントプログラムもしくはサーバコンピュータから転送されたクライアントプログラムを、自己の記憶装置に格納する。そして、クライアントコンピュータは、自己の記憶装置からクライアントプログラムを読み取り、クライアントプログラムに従った処理を実行する。なお、クライアントコンピュータは、可搬型記録媒体から直接クライアントプログラムを読み取り、そのクライアントプログラムに従った処理を実行することもできる。また、クライアントコンピュータは、サーバコンピュータからクライアントプログラムが転送される毎に、逐次、受け取ったクライアントプログラムに従った処理を実行することもできる。
上記については単に本発明の原理を示すものである。さらに、多数の変形、変更が当業者にとって可能であり、本発明は上記に示し、説明した正確な構成および応用例に限定されるものではなく、対応するすべての変形例および均等物は、添付の請求項およびその均等物による本発明の範囲とみなされる。
符号の説明
1 ファイアウォール
2 中継機サーバ
3a 通信先サーバA
3b 通信先サーバB
2c 通信先サーバC
4 通信元クライアント
21 接続要求情報(ヘッダ)取得手段
22 中継手段
23 トンネリング手段
41a アプリケーションA
41b アプリケーションB
41c アプリケーションC
42 通信処理手段

Claims (10)

  1. 外部ネットワークと内部ネットワークとの接続点に設置されて通信管理を行うファイアウォールを経由するデータ通信を中継する中継処理プログラムにおいて、
    コンピュータを、
    アクセスを許可する1または複数のポートを集約した集約ポートが許可設定される前記ファイアウォールが、前記外部ネットワークに接続する通信元クライアントが前記内部ネットワーク内の目的の接続要求先との接続要求時に前記集約ポートを宛先として発行する接続要求情報を通過させると、前記集約ポートを介して入力される前記目的の接続要求先を含む前記接続要求情報を取得する接続要求情報取得手段、
    前記接続要求情報から前記目的の接続要求先を抽出し、前記目的の接続要求先を宛先として前記接続要求情報を送信して接続要求を行うとともに、前記目的の接続要求先から接続結果情報を受信して前記通信元クライアントに送信する中継手段、
    として機能させることを特徴とする中継処理プログラム。
  2. 前記コンピュータを、
    前記通信元クライアントから取得した前記接続要求情報に基づき、一旦前記通信元クライアントとの間の接続を確保してから、前記通信元クライアントの前記接続要求情報を前記目的の接続要求先に送信して前記目的の接続要求先との間の接続を行い、前記通信元クライアントとの間及び前記目的の接続要求先との間の接続を確立した後、それぞれの接続を確保した状態で、前記通信元クライアントから受信したパケットを前記中継手段によって前記目的の接続要求先に送信するとともに、前記目的の接続要求先から受信した応答パケットを前記通信元クライアントに送信させるトンネリング手段、
    として機能させることを特徴とする請求の範囲第1項記載の中継処理プログラム。
  3. 前記トンネリング手段に、
    前記通信元クライアントとの間の接続及び前記目的の接続要求先との間の接続が確保された後の通信では、中継するパケットの転送先のみを変換させ、パケット内容は変更させない、
    ことを特徴とする請求の範囲第2項記載の中継処理プログラム。
  4. 前記接続要求情報取得手段に、
    前記通信元クライアントから取得した前記接続要求情報を解析し、SSL(Secure Sockets Layer)通信による接続要求である場合に、前記トンネリング手段を起動させる、
    ことを特徴とする請求の範囲第2項記載の中継処理プログラム。
  5. 前記中継手段に、
    前記目的の接続要求先に前記接続要求情報を送信する場合及び前記通信元クライアントに前記接続結果情報を送信する場合に、宛先の前記目的の接続要求先または前記通信元クライアントが必要な情報を付加、もしくは不必要な情報を削除して前記接続要求情報の内容を更新してから送信させる、
    ことを特徴とする請求の範囲第1項記載の中継処理プログラム。
  6. 前記中継手段に、
    前記接続要求情報取得手段が取得した前記接続要求情報にHTTP(Hypertext Transfer Protocol)に従って前記集約ポートを備える中継装置に関する経由情報が含まれている場合には、前記接続要求情報から前記経由情報を削除した後、前記中継手段によって前記目的の接続要求先に送信させるとともに、前記目的の接続要求先からの前記接続結果情報に前記経由情報を付加した後、前記通信元クライアントに送信させる、
    ことを特徴とする請求の範囲第5項記載の中継処理プログラム。
  7. 外部ネットワークと内部ネットワークとの接続点に設置されて通信管理を行うファイアウォールを越えて前記内部ネットワークに接続するサーバとの通信処理を行う通信処理プログラムにおいて、
    コンピュータを、
    アクセスを許可する1または複数のポートを集約した中継機サーバの集約ポートが許可設定される前記ファイアウォールを超えて前記内部ネットワークに接続する目的の接続要求先にアクセスする場合に、前記目的の接続要求先を含む接続要求情報を作成し、前記集約ポートを宛先として前記接続要求情報を発行して接続要求を行うとともに、前記集約ポートを具備する中継機サーバによって前記目的の接続要求先に中継された前記接続要求情報に対して前記目的の接続要求先が作成した接続結果情報を前記中継機サーバ経由で受信する通信処理手段、
    として機能させることを特徴とする通信処理プログラム。
  8. 前記通信処理手段に、
    所定のアプリケーションから前記目的の接続要求先に関する情報と前記目的の接続要求先で発生する所定のイベント情報の取得要求を含む接続要求情報を取得すると、前記イベント情報の取得要求を含む接続要求情報に前記目的の接続要求先を設定して前記集約ポートを宛先として送信して応答を取得する手順を、前記イベント情報が取得されるまで、所定のタイミングで繰り返し実行させる、
    ことを特徴とする請求の範囲第7項記載の通信処理プログラム。
  9. 前記通信処理手段に、
    所定のアプリケーションから前記目的の接続要求先に関する情報と前記目的の接続要求先に対する接続要求情報を取得すると、前記接続要求情報に前記中継機サーバに関する経由情報を付加して前記接続要求情報を変換した後、前記集約ポートを宛先として変換した前記接続要求情報を送信させる、
    ことを特徴とする請求の範囲第7項記載の通信処理プログラム。
  10. 外部ネットワークと内部ネットワークとの接続点に設置され、予め許可設定がされたポートのパケットのみを通過させるファイアウォールを有するファイアウォールシステムにおいて、
    アクセスを許可する1または複数のポートを集約した集約ポートが許可設定され、前記外部ネットワークに接続する通信元クライアントからのアクセスを捕捉し、前記集約ポートを宛先とするアクセスのみを通過させるファイアウォールと、
    前記ファイアウォールを越えて前記内部ネットワークに接続する目的の接続要求先にアクセスする場合に、前記目的の接続要求先を含む接続要求情報を作成し、前記集約ポートを宛先として前記接続要求情報を発行して接続要求を行うとともに、前記目的の接続要求先の作成した前記接続要求情報に対する接続結果情報を受信する通信元クライアントと、
    前記集約ポートが設定され、前記ファイアウォールが通過させた前記通信元クライアントからの前記接続要求情報を取得する接続要求情報取得手段と、取得した前記接続要求情報に基づき、宛先を前記目的の接続要求先に変更して前記接続要求情報を送信するとともに、前記目的の接続要求先から前記接続結果情報を受信して前記通信元クライアントに送信する中継手段と、を具備する中継機サーバと、
    を有し、
    前記通信元クライアントが発行した前記接続要求情報を前記中継機サーバが集約して取得して前記目的の接続要求先に振り分けるとともに、それぞれの前記目的の接続要求先の作成した前記接続結果情報が前記中継機サーバによって接続要求を行った前記通信元クライアントに中継されることを特徴とするファイアウォールシステム。
JP2006548631A 2004-12-20 2004-12-20 システム、中継処理プログラム、中継装置、中継処理方法、通信処理プログラム、通信装置及び通信処理方法 Expired - Fee Related JP4570628B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2004/019035 WO2006067831A1 (ja) 2004-12-20 2004-12-20 中継処理プログラム及び通信処理プログラム、並びにファイアウォールシステム

Publications (2)

Publication Number Publication Date
JPWO2006067831A1 true JPWO2006067831A1 (ja) 2008-06-12
JP4570628B2 JP4570628B2 (ja) 2010-10-27

Family

ID=36601444

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006548631A Expired - Fee Related JP4570628B2 (ja) 2004-12-20 2004-12-20 システム、中継処理プログラム、中継装置、中継処理方法、通信処理プログラム、通信装置及び通信処理方法

Country Status (4)

Country Link
US (1) US7644164B2 (ja)
EP (1) EP1840748A4 (ja)
JP (1) JP4570628B2 (ja)
WO (1) WO2006067831A1 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI376923B (en) * 2008-07-24 2012-11-11 Ind Tech Res Inst One-way media streaming system and method thereof
JP5561173B2 (ja) * 2009-02-03 2014-07-30 日本電気株式会社 アプリケーションスイッチシステム、及びアプリケーションスイッチ方法
JP5473474B2 (ja) * 2009-08-17 2014-04-16 キヤノン株式会社 通信装置、通信方法、プログラム
US20110289227A1 (en) * 2010-05-18 2011-11-24 Bruce Hsu Method of multi-terminal connection traversing nat without third party interfacing
CN104168173B (zh) * 2010-08-20 2018-01-16 华为技术有限公司 终端穿越私网与ims核心网中服务器通信的方法、装置及网络系统
CN102377629B (zh) * 2010-08-20 2014-08-20 华为技术有限公司 终端穿越私网与ims核心网中服务器通信的方法、装置及网络系统
US20130144935A1 (en) * 2010-12-13 2013-06-06 Vertical Computer Systems, Inc. System and Method for Running an Internet Server Behind a Closed Firewall
US9112832B1 (en) 2010-12-13 2015-08-18 Vertical Computer Systems, Inc. System and method for running a web server on a mobile internet device
US10305915B2 (en) 2010-12-13 2019-05-28 Vertical Computer Systems Inc. Peer-to-peer social network
US9710425B2 (en) 2010-12-13 2017-07-18 Vertical Computer Systems, Inc. Mobile proxy server for internet server having a dynamic IP address
JP5824257B2 (ja) * 2011-06-29 2015-11-25 キヤノン株式会社 画像処理装置、その制御方法、及びプログラム
JP6167579B2 (ja) * 2013-03-14 2017-07-26 株式会社リコー 情報システム、ファイルサーバ、情報システムの制御方法及びファイルサーバの制御方法、並びに、それら方法のプログラム及びそのプログラムを記録した記録媒体
JP6256442B2 (ja) * 2015-09-29 2018-01-10 コニカミノルタ株式会社 画像処理システム、接続仲介サーバー、中継サーバー及びプログラム
KR101830792B1 (ko) * 2016-01-27 2018-02-21 건국대학교 산학협력단 항균 펩타이드를 포함하는 불용성 융합단백질 및 이를 이용한 항균 펩타이드의 제조 방법
JP7203297B2 (ja) * 2017-09-27 2023-01-13 有限会社シモウサ・システムズ エンドツーエンド暗号化通信システム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000163346A (ja) * 1998-11-27 2000-06-16 Nippon Telegr & Teleph Corp <Ntt> セッション識別方法およびセッション管理方法、ならびにそれを実現するための情報提供システムとそのプログラムを記録した記録媒体
JP2000215137A (ja) * 1999-01-21 2000-08-04 Hitachi Ltd 遠隔端末制御方法
JP2003030064A (ja) * 2001-07-10 2003-01-31 Hirotomo Okazawa ネットワークシステム及び通信方法
JP2004048520A (ja) * 2002-07-15 2004-02-12 Hitachi Ltd ポートアクセス制御システム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3591753B2 (ja) 1997-01-30 2004-11-24 富士通株式会社 ファイアウォール方式およびその方法
US7136359B1 (en) * 1997-07-31 2006-11-14 Cisco Technology, Inc. Method and apparatus for transparently proxying a connection
US6473406B1 (en) * 1997-07-31 2002-10-29 Cisco Technology, Inc. Method and apparatus for transparently proxying a connection
US6006268A (en) * 1997-07-31 1999-12-21 Cisco Technology, Inc. Method and apparatus for reducing overhead on a proxied connection
US6421732B1 (en) * 1998-08-27 2002-07-16 Ip Dynamics, Inc. Ipnet gateway
GB2361153A (en) * 2000-04-04 2001-10-10 Global Knowledge Network Ltd User security, privacy and anonymity on the Internet
US20020078371A1 (en) 2000-08-17 2002-06-20 Sun Microsystems, Inc. User Access system using proxies for accessing a network
JP2002288098A (ja) * 2001-03-23 2002-10-04 Hitachi Kokusai Electric Inc プレゼンテーションシステム方法とその装置
US7016348B2 (en) * 2001-08-28 2006-03-21 Ip Unity Method and system for direct access to web content via a telephone
KR20040093656A (ko) * 2002-07-29 2004-11-06 아이피 토크 가부시키가이샤 인터넷 통신 시스템 및 인터넷 통신 방법 및 세션 관리서버 및 무선 통신 장치 및 통신 중계 서버 및 프로그램
JP3742390B2 (ja) * 2003-01-17 2006-02-01 株式会社東芝 Httpトンネリングサーバを用いた通信方法および通信装置、プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000163346A (ja) * 1998-11-27 2000-06-16 Nippon Telegr & Teleph Corp <Ntt> セッション識別方法およびセッション管理方法、ならびにそれを実現するための情報提供システムとそのプログラムを記録した記録媒体
JP2000215137A (ja) * 1999-01-21 2000-08-04 Hitachi Ltd 遠隔端末制御方法
JP2003030064A (ja) * 2001-07-10 2003-01-31 Hirotomo Okazawa ネットワークシステム及び通信方法
JP2004048520A (ja) * 2002-07-15 2004-02-12 Hitachi Ltd ポートアクセス制御システム

Also Published As

Publication number Publication date
EP1840748A4 (en) 2012-08-22
WO2006067831A1 (ja) 2006-06-29
US20080028078A1 (en) 2008-01-31
JP4570628B2 (ja) 2010-10-27
US7644164B2 (en) 2010-01-05
EP1840748A1 (en) 2007-10-03

Similar Documents

Publication Publication Date Title
US7644164B2 (en) Relay program, communication processing program, and firewall system
JP4307448B2 (ja) 分散オブジェクトを単一表現として管理するシステムおよび方法
US7437429B2 (en) System and method for providing transparent access to distributed authoring and versioning files including encrypted files
US9479535B2 (en) Transmitting aggregated information arising from appnet information
US8606935B2 (en) Application distribution control system, application distribution control method, information processing apparatus, and client terminal
US6195677B1 (en) Distributed network computing system for data exchange/conversion between terminals
US7024497B1 (en) Methods for accessing remotely located devices
US20020046262A1 (en) Data access system and method with proxy and remote processing
JP5068071B2 (ja) サーバ上のデータを、クライアントのキャッシュを利用してバックアップする装置および方法。
US20110047369A1 (en) Configuring Software Agent Security Remotely
JP2010244515A (ja) ウェブサービスシステム、ウェブサービス方法及びプログラム
US8055732B2 (en) Signaling partial service configuration changes in appnets
JP4486927B2 (ja) ユーザ認証システム
US8259324B2 (en) Printer/storage integrate system, controller, control method, and control program for automatic installation of control software
US8281036B2 (en) Using network access port linkages for data structure update decisions
US8055797B2 (en) Transmitting aggregated information arising from appnet information
US11729334B2 (en) Communication system, device, and recording medium for remote access to electronic device through relaying device and converter
US8601104B2 (en) Using network access port linkages for data structure update decisions
JP2007011942A (ja) ユーザー認証情報連携システム
JP2003345709A (ja) キャッシュ装置およびこれを用いたネットワーク・システム
US20080071793A1 (en) Using network access port linkages for data structure update decisions
JP4541994B2 (ja) 制御装置、制御方法及びプログラム
JPH11212850A (ja) 暗号化共有ファイル送受信システム
JP2019092106A (ja) ネットワーク監視装置、ネットワーク監視方法及びネットワーク監視プログラム
JP4787524B2 (ja) コンテンツ更新システム、コンテンツ更新方法、更新サーバ及びコンテンツ更新プログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100420

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100621

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100810

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100810

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130820

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees