説明

リモートアクセス装置、リモートアクセスプログラム、リモートアクセス方法及びリモートアクセスシステム

【課題】URLが動的に生成される場合であっても、URLの書き換えをせずにアクセスを可能とし、且つ簡易な方法で、隔離ネットワーク内のサーバにアクセスを行なう。
【解決手段】
所定の通信プロトコルに基づいてデータ通信を行うユーザエージェントからのデータを受信可能な状態にする受信設定部50と、ユーザエージェントのプロキシ設定とは異なる他のプロキシ設定を作成し、ユーザエージェントに他のプロキシ設定を参照させるためのユーザエージェント管理部54と、接続サーバから、利用者ごとにアクセスが許可されているURLを含むアクセス許可リストをダウンロードし、保持するアクセス管理部52と、
利用者の操作に基づいて生成された通信要求に含まれた接続先がアクセス許可リストに含まれているか否かを判断し、接続先がアクセス許可リストに含まれる場合は、要求を内部サーバに送信するアクセス制御部53とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、インターネットに接続したクライアント装置から、隔離ネットワークで稼働するサーバに対するアクセスを提供するリモートアクセス装置、リモートアクセスプログラム、リモートアクセス方法及びリモートアクセスシステムに関する。
【背景技術】
【0002】
従来より、企業内イントラネットなどの隔離ネットワークからインターネットを経由してWebサーバ群に対して選択的にアクセスするリモートアクセス技術が知られている。
【0003】
このようなリモートアクセス技術として、例えば特許文献1に示すようなリバースプロキシサーバ方式がある。この方式では、隔離ネットワークとインターネットの境界にリバースプロキシサーバを設置し、クライアントPCはインターネットを経由してリバースプロキシサーバのURLにアクセスする。隔離ネットワークの管理者は、インターネットを介してアクセスを許すWEBサーバをリバースプロキシサーバに登録する。リバースプロキシサーバへの登録は、インターネットを介してアクセスを許可するWEBサーバのURLと、それをリバースプロキシサーバ経由でアクセスするためのリバースプロキシサーバのURLの対によって行う。リバースプロキシサーバは、クライアントPCからのHTTP要求を、隔離ネットワークで稼働するWEBサーバに転送し、そのWEBサーバによるHTTP応答を、クライアントPCに転送する。リバースプロキシサーバとクライアントPCの間はHTTPSを用いて暗号化通信を使用することにより、インターネットを使用して安全に通信する。
【0004】
また、他の従来のリモートアクセス技術として、特許文献2に記載されているようなVPN接続方式がある。このVPN接続方式では、隔離ネットワークとインターネットの境界にVPNルータを設置し、クライアントPCにはVPNクライアントをインストールして、VPNルータとVPNクライアントの間で(インターネットを介して)仮想的なネットワークを構成することにより、隔離ネットワークの一部にクライアントPCを接続したのと同じ状態を実現する。
【0005】
VPNクライアントは、クライアントPCからWEBサーバ宛てのHTTP要求となるIPデータグラムを暗号化して別のIPデータグラムまたはTCPストリームとしてインターネット経由でVPNルータに送信する。VPNルータは受け取ったIPデータグラムまたはTCPストリームからWEBサーバ宛てのIPデータグラムを取り出し、それをWEBサーバに送信する。WEBサーバからのHTTP応答は、これとは逆の経路によってクライアントPCに送信される。
【0006】
また、他の従来のリモートアクセス技術として、TCPトンネル方式がある。このTCPトンネル方式では、隔離ネットワークとインターネットの境界にトンネリングサーバを設置し、クライアントPCでトンネリングクライアントを稼働させることで、トンネリングクライアントとトンネリングサーバ間のTCPストリームを使用して、クライアントPCからのHTTP要求および隔離ネットワークで稼働するWEBサーバからのHTTP応答を相互に転送する。
【0007】
クライアントPCが、自ノード内で稼働するトンネリングソフトウェアが提供するサービスポートに対してHTTP要求を送信すると、トンネリングクライアントは、そのHTTP要求のTCPストリームの内容を暗号化し、別のTCPストリームによってトンネリングサーバ宛てに送信する。トンネリングサーバは、トンネリングクライアントからの通信を受けて、その内容を復号し、別のTCPストリームによってWEBサーバに転送する。
【特許文献1】特開2004−295166号公報
【特許文献2】特開2002−232460号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、特許文献1に記載されたリバースプロキシサーバ方式では、以下のような問題があった。
リバースプロキシサーバ方式では、WEBサーバのURLを公開せず、クライアントPCはリバースプロキシサーバが提供するURLにアクセスする。リバースプロキシサーバは、そのクライアントPCからのHTTP要求を、WEBサーバに転送する。例えば、リバースプロキシサーバのURLが、「http://reverse.proxy.server/path1」であり、WebサーバのURLが「http://a.server/path2」である場合、クライアントPCは、http://reverse.proxy.server/path1に対するHTTP要求を送信する。リバースプロキシサーバは、このHTTP要求をhttp://a.server/path2宛てに送信する。逆に、WEBサーバからのHTTP応答にWEBサーバのホスト名を含んだURLがあるとき、リバースプロキシサーバはそれをリバースプロキシサーバのURLに書き換える。クライアントPCは、隔離ネットワーク上のホスト名を含むhttp://a.server/path2のようなURLを受け取とっても、そのURLにはアクセスできないからである。
【0009】
しかし現在のWebサーバでは、動的にURLを変える場合などに、HTTP応答にJavaScript(登録商標)プログラムを含め、このJavaScript(登録商標)プログラムの実行によりURLを生成する方法が一般的に行なわれている。この場合、JavaScript(登録商標)プログラムはHTTP応答を受け取ったクライアントPC上のWebブラウザで実行されるので、当該HTTP応答を転送するリバースプロキシサーバではURLを書換えることができず、利用者はWebサーバにアクセスすることができないという問題があった。仮に、利用者がインターネット経由でリバースプロキシサーバを介してアクセスすることを可能とするには、Webサーバ上のJavaScript(登録商標)プログラムを変更しなければならず、運用時の負荷が増える。また、このWebサーバが第3者から提供されている製品であった場合は、そもそもそのような変更ができない場合がある。
【0010】
また、特許文献2に記載されたVPN接続方式では、以下のような問題があった。
クライアントPCにVPNクライアントをインストールし、VPNルータとの接続設定を予め行っておく必要があり、設定が面倒であるという問題があった。また、ネットワーク環境によっては、クライアントPC自身が別の隔離ネットワークに接続していて、プロキシサーバを介してインターネットに接続する場合もあるが、そのようにクライアントPCがプロキシサーバを介してインターネットに接続している場合、プロキシサーバはアプリケーションゲートウェイ(HTTPゲートウェイ)として動作するため、VPNプロトコルを処理できず、したがってVPNクライアントはVPNルータと通信できないという問題があった。
【0011】
さらに、VPNクライアントおよびVPNルータはネットワーク層の転送機構であるため、URL単位で選択的にアクセスを許可したり、利用者ごとにアクセスを許可するURLを設定したりする等の、ネットワーク層より上位の階層でのみ制御可能な処理を行うには、VPNルータとWEBサーバの間に別途ファイアーウォールなどのセキュリティ装置を設置しなければならず、ハードウェアの設置の手間がかかるという問題があった。
【0012】
さらに、VPNクライアントの稼働中は、クライアントPCから送信されるIPデータグラムのデフォルト経路がこのVPNクライアントによって実装される仮想インタフェースとなっており、すべてのIPデータグラムは隔離ネットワークに転送される。このため、VPNクライアント稼働中は、クライアントPCからインターネットで稼働するWEBサーバに直接アクセスすることができないという問題があった。
【0013】
また、TCPトンネル方式では、以下の問題があった。
TCPトンネル方式では、クライアントPCがプロキシサーバを介してトンネリングサーバに接続する場合、プロキシサーバの一般的な設定では、HTTPS以外の暗号化されたTCPストリームの中継は許可せず、したがってクライアントPCはトンネリングサーバにアクセスができないという問題があった。
【0014】
また、クライアントPCがプロキシサーバを介さず直接インターネットに接続する場合でも、クライアントPC上で稼働するWEBブラウザは、http://127.0.0.1/pathまたはhttp://localhost/pathという形式のURLを使用してトンネリングクライアントに対してHTTP要求を送信するため、リバースプロキシサーバ方式と同様に、WebサーバへのアクセスにはURL書換えが必要となってしまい、運用時の負荷の増加またはアクセスができないという問題があった。
【0015】
そこで、本発明は、URLが動的に生成される場合であっても、URLの書き換えをせずにアクセスを可能とし、且つクライアントソフトのインストール等をすることなしに簡易な方法で、隔離ネットワーク内のサーバにアクセスを行なわせるリモートアクセス装置を提供することを目的とする。
【課題を解決するための手段】
【0016】
本発明のリモートアクセス装置は、ネットワーク及び非武装地帯に設置された接続サーバを通じて内部サーバへのアクセスを行うものであって、所定の通信プロトコルに基づいてデータ通信を行うユーザエージェントからのデータを受信可能な状態にする受信設定手段と、
前記ユーザエージェントのプロキシ設定とは異なる他のプロキシ設定を作成し、 前記ユーザエージェントに前記他のプロキシ設定を参照させるためのユーザエージェント管理手段と、前記接続サーバから、利用者ごとにアクセスが許可されているURLを含むアクセス許可リストをダウンロードし、保持するアクセス管理手段と、前記利用者の操作に基づいて生成された通信要求に含まれた接続先が前記アクセス許可リストに含まれているか否かを判断し、前記接続先が前記アクセス許可リストに含まれる場合は、前記要求を前記内部サーバに送信するアクセス制御手段とを備えることを特徴とする。
【0017】
また、本発明のリモートアクセス装置は、さらに、前記受信設定手段が、使用されていないポートを検索し、検索の結果見つかった、使用されていないポートを使用してユーザエージェントからのデータを受信可能な状態にすることを特徴とする。
【0018】
また、本発明のリモートアクセス装置は、前記アクセス管理手段が、利用者の認証情報を前記接続サーバに送信し、前記接続サーバによる認証がされた場合、前記アクセス許可リストをダウンロードすることを特徴とする。
【0019】
また、本発明のリモートアクセス装置は、前記アクセス制御手段が、前記接続サーバとの通信をHTTPSで行うことを特徴とする。
【0020】
また、本発明のリモートアクセス装置は、前記他のプロキシ設定において、前記ユーザエージェントが使用するIPアドレスがループバックアドレスにされていることを特徴とする。
【発明の効果】
【0021】
本発明によれば、アクセス許可リストを使用して通信要求の接続先を、接続サーバを経由して接続される内部サーバと、それ以外のインターネット等のネットワーク上のサーバ、のいずれかへ切り替えることが可能であるため、リモートアクセス装置は、どちらのサーバにもアクセスすることができるという効果がある。
【0022】
また、本発明によれば、クライアントPCと接続サーバ間の通信はHTTPSを用いるので、リモートアクセス装置がプロキシサーバ(一般的な設定ではHTTPS以外の暗号化通信を中継しない)を介してインターネットに接続している場合にも利用できるという効果がある。
【0023】
また、本発明によれば、VPNのようなネットワーク層でのデータ送受信ではなく、アプリケーション層でHTTP通信の転送を行なうため、VPNクライアントをインストールしなくてよい。また、本発明によれば、設定管理部は動作のための設定を自動で行なうので、手動による設定の手間も不要となるという効果がある。
【図面の簡単な説明】
【0024】
【図1】本発明の実施形態であるリモートアクセスシステムの構成を示す図である。
【図2】本発明の実施形態の通信処理部の構成を示す図である。
【図3】本発明の実施形態のアクセス許可リストを示す図である。
【図4】本発明の実施形態の処理の流れを示すフローチャートである。
【図5】本発明の実施形態におけるプロキシ設定の変更前の例と変更後の例を示す図である。
【発明を実施するための形態】
【0025】
以下、本発明の実施形態について、図面を参照して詳細に説明する。
図1は、本発明の実施形態であるリモートアクセスシステムの全体構成を示す。リモートアクセスシステム100は、クライアントPC1と、プロキシサーバ2と、ネットワーク3と、ファイアーウォール11と、接続サーバ12と、ファイアーウォール21と、Webサーバ22、23とから構成されている。
【0026】
クライアントPC1は、プロキシサーバ2を経由して、ネットワーク3、例えばインターネットに接続されており、利用者の操作に応じてWebサーバ22、23にアクセスを行う汎用コンピュータである。クライアントPC1は、通信処理部31とWebブラウザ32を含む。利用者は、クライアントPC1を操作して、Webブラウザ32を通じてWebサーバ22、23に接続を行う。クライアントPC1は、例えば利用者が自宅や外出先で利用するパーソナルコンピュータであってもよいし、携帯電話や携帯情報端末であってもよい。
【0027】
Webブラウザ32は、所定のプロトコルを用いてネットワークを通じてデータの送受信するユーザエージェントの一例であり、後述するプロキシ設定にしたがってHTTP(HyperText
Transfer Protocol)通信又はSSL(Secure Sockets Layer)で暗号化されたいわゆるHTTPS通信を行う。なお、本実施形態ではWebブラウザ32を用いて説明するが、他の通信プロトコルを用いたユーザエージェントであってもよい。
【0028】
通信処理部31は、クライアントPC1の未使用のTCPポートを使用して、接続サーバ12を介して、Webブラウザ32との間でHTTP通信を行なう。HTTP通信に際して、通信処理部31は、後述するように、Webブラウザ32がHTTP要求を通信処理部31に送信するようにするためのプロキシ設定(プロキシ設定2)を作成し、Webブラウザ32の起動時に、Webブラウザ32がプロキシ設定2を参照するようにするとともに、自身はもとのプロキシ設定(プロキシ設定1)を参照して、HTTP通信を行う。通信処理部31は、利用者が必要なファイルをダウンロードして導入されてもよいし、USBメモリ等の記録媒体をクライアントPC1に接続することによって導入されてもよい。なお、通信処理部31は、接続サーバのURLをあらかじめ記憶しているか、もしくは利用者が適宜設定する。
【0029】
ネットワーク3は、例えば、インターネットおよびそれにダイアルアップ又は光ファイバー等で接続するための公衆網である。
【0030】
接続サーバ12は、ファイアーウォール11を経由してネットワーク3に接続されており、アクセス許可リスト13に基づいて、クライアントPC1からのアクセスを許可する。アクセス許可リスト13は、接続サーバ12の図示しない記憶装置に記録され、必要に応じて参照される。接続サーバ12及びファイアーウォール11は、隔離ネットワーク42とネットワーク3との境界に位置する非武装地帯41(DMZ:DeMilitarized Zone)に設置されている。
【0031】
接続サーバ12は、クライアントPC1からWebサーバ22、23へのHTTP要求を受け付けると、その要求の先であるWebサーバがその利用者によるアクセスが許可されたものであるかどうかを判断する。そのアクセスが許可されている場合にのみ、接続サーバ12はWebサーバ22、23へHTTP要求を送信する。また、接続サーバ12は、送信したHTTP要求に対するWebサーバ22,23からの処理結果を受けて、これをクライアントPC1へ応答を行う。
【0032】
非武装地帯41は、ネットワーク3と隔離ネットワーク42とを中継するネットワークセグメントである。非武装地帯41は、ファイアーウォール11及び21によって、ネットワーク3からも隔離ネットワーク42からも独立している。この非武装地帯41は、外部のネットワーク3から不正なアクセスを遮断する目的で設けられているものである。
【0033】
Webサーバ22、23は、ファイアーウォール21を介して接続サーバ12及びファイアーウォール11に接続されており、クライアントPC1からのHTTPまたはHTTPSでの要求に基づき、必要な処理を実行し、その結果をクライアントPC1に返す。Webサーバ22、23及びファイアーウォール21は、共に隔離ネットワーク42の内部に設置されている。隔離ネットワーク42は、例えば、企業内に構築されるネットワークであって、LANやWAN等で構成されている。
【0034】
図2に、クライアントPC1の通信処理部31のモジュール構成を示す。通信処理部31は、設定管理部51と、アクセス管理部52と、アクセス制御部53の各モジュールから構成されている。
【0035】
設定管理部51は、Webブラウザ32がHTTP要求を通信処理部31に送信するようにするためのプロキシ設定を作成し、Webブラウザ32の起動時にWebブラウザ32がそのプロキシ設定を参照するようにするユーザエージェント管理部54と、通信処理部31がそのHTTP要求を受信可能な状態にする受信設定部50からなる。アクセス管理部52は、接続サーバ12から、利用者ごとにアクセスが許可されているURLを含むアクセス許可リスト13をダウンロードし、これを保持・管理している。アクセス制御部53は、利用者の操作に基づいて生成されたHTTP要求に含まれた接続先のURLがアクセス許可リスト13に含まれているか否かを判断し、接続先URLがアクセス許可リスト13に含まれる場合は、HTTP要求を前記内部サーバに送信する。
【0036】
図3に、接続サーバ12が保持しているアクセス許可リスト13の一例を示す。図2のアクセス許可リスト13において、例えば、利用者IDが「aaaaa1」である利用者に対して、「http://web1.service1.net:8080/path1.html」及び「http://web1.service2.net:8080/dir1/」へのアクセスが許可される。同様に、利用者IDが「bbbbb1」である利用者に対しては、「http://web1.service1.net:8080/path1.html」へのアクセスが許可される。同様に、利用者IDが「bbbbb2」である利用者に対して、「http://web1.service1.net:8080/path1.html」及び「http://web1.service3.net:8080/dir1」へのアクセスが許可される。
【0037】
図4は、本実施形態のリモートアクセスシステム100の動作を説明するフローチャートである。まず、利用者が、クライアントPC1において通信処理部31を起動する。通信処理部31は、利用者がクライアントPC1に接続されたディスプレイ上のアイコンをクリックして起動しても良いし、利用者がUSBメモリ等の記録媒体をクライアントPC1に接続することよって起動しても良い。
【0038】
ステップ401において通信処理部31が起動すると、ステップ402において、通信処理部31は、利用者に認証情報、例えばID及びパスワードの入力を要求する。利用者は、IDおよびパスワードを入力する。通信処理部31は入力された認証情報を、接続サーバ12に送信する。
【0039】
ステップ420において、接続サーバ12は、認証情報を受信すると認証を行い、認証結果を通信処理部31に送信する。
【0040】
ステップ403において、通信処理部31は、認証結果が適正であったか否かの判断を行い、認証結果が適正ではなかった場合は、エラーを通知して処理を終了する。一方、認証結果が適正であった場合には、処理はステップ404に進む。
【0041】
ステップ404において、通信処理部31の受信設定部50は未使用のTCPポートを検索し、そのポートとIPアドレスを用いて、通信処理部31がWebブラウザ32からの通信要求を受信可能な状態にする。IPアドレスは、通信処理部31が稼動するクライアントPC1に割り当てられたIPアドレスか、自分自身を表す仮想的なIPアドレス(ループバックアドレス)を用いることができる。
セキュリティ上、他のコンピュータからの通信要求を受信できないループバックアドレスを用いるのが望ましい。したがって以降はループバックアドレスを使用するものとして説明する。
【0042】
ステップ406において、通信処理部31のユーザエージェント管理部54は、Webブラウザ32がHTTP要求を通信処理部31に送信するようにするためのプロキシ設定を作成する。具体的には、ユーザエージェント管理部54は、ステップ404でWebブラウザ32からの通信要求を受信可能な状態にするのに用いた値(未使用のTCPポート番号とループバックアドレス)を使って、図5(b)に示すプロキシ設定2を作成する。ここでは、使用するプロキシのIPアドレスを「127.0.0.1」に設定し、ポート番号をnnnnに設定する。「127.0.0.1」は、IPv4におけるループバックアドレスであり、nnnnはステップ404で見つかった未使用のTCPポートの番号である。
【0043】
後述するように、通信処理部31はWebブラウザ32を起動する際に、起動時パラメタにより、Webブラウザ32が上記作成したプロキシ設定2を参照するようにする。これにより、従来、Webブラウザ32はプロキシサーバ「proxy.tokyobbb.co.jp」の8080番ポートを使用してHTTP通信を行なっていたが、代わって、nnnn番ポートを使用して、通信処理部31を通じてすべてのHTTP通信を行うようになる。すなわち、Webブラウザ32に対しては、通信処理部31がプロキシサーバとして動作することになる。
【0044】
なお、本実施形態では、プロキシ設定2のIPアドレスを「127.0.0.1」に設定したが、「localhost」であってもよいし、IPv6においては「::1」(0:0:0:0:0:0:0:1)としてもよい。また、OSによって他のループバックアドレスが定められているのであれば、その値であってもよい。
【0045】
ステップ407において、通信処理部31のアクセス管理部52は、さらに、接続サーバ12からアクセス許可リスト13をダウンロードする。このとき、接続サーバ12によって認証された利用者のみに関するアクセス許可リストがダウンロードされる。例えば、図3に示すように、利用者IDが「aaaaa1」である利用者に対して、「http://web1.service1.net:8080/path1.html」及び「http://web1.service2.net:8080/dir1/」というURLがダウンロードされる。
【0046】
ステップ408において、通信処理部31のユーザエージェント管理部54はWebブラウザ32を起動する。このとき起動時パラメタを与えることにより、Webブラウザ32がプロキシ設定1に代わりプロキシ設定2を参照するようにする。Webブラウザ32は、利用者の処理に応じて、HTTP要求を通信処理部31に送信する。このHTTP要求は、その利用者の利用者IDを含む。
【0047】
ステップ409において、通信処理部31のアクセス制御部53は、Webブラウザ32からHTTP要求を受け取ると、ステップ410において、ダウンロードしたアクセス許可リスト13を参照し、そのHTTP要求に含まれる接続先URLがダウンロードしたアクセス許可リスト13に含まれているか否かを判断する。
【0048】
図3を参照しながら具体例を挙げると、利用者IDが「aaaaa1」であるとき、HTTP要求に含まれた接続先URLが「http://web1.service1.net:8080/path1.html」であるときは、アクセス許可リスト13に含まれていると判断する。
【0049】
このとき、アクセス許可リストのURLとHTTP要求に含まれるURLを頭から比較し、前者が後者に含まれる関係にあれば(完全一致を含む)、アクセス許可リストに含まれると判断する。
【0050】
具体的には、利用者IDが「aaaaa1」であるとき、HTTP要求に含まれた接続先URLが「http://web1.service1.net:8080/dir1/path2.html」であるときは、図3によれば、アクセス許可リスト13に含まれていると判断する。これは、「http://web1.service1.net:8080/dir1」の部分が一致しているため、それ以降の値が何であってもそのURLはアクセス許可リスト13にあるものと判断する。
【0051】
他の具体例として、利用者IDが「bbbbb2」であるとき、HTTP要求に含まれた接続先URLが「http://web1.service1.net:8080/path1.html」であるときは、図3によれば、アクセス許可リスト13に含まれていると判断する。一方、HTTP要求に含まれた接続先URLが「http://web1.service1.net:8080/path2.html」や「http://web1.service1.net:8080/dir1/path1.html」は、アクセス許可リスト13にないものと判断する。なお、アクセス許可リストのURLがファイル名まで指定してある場合は、完全一致の場合のみアクセス許可リストに含まれると判断することとなる。
【0052】
なお、Webブラウザ32は、隔離ネットワーク42内で稼働するWebサーバ22,23のURLに対してそのままアクセスすることができる。すなわち、Webサーバ22、23がJavaScript(登録商標)などのスクリプトエンジンによりURLがクライアントPC1上で生成されるようなサービスを提供する場合であっても、Webサーバ側を修正することなく利用者がアクセスすることができる。
【0053】
ステップ410において、通信処理部31のアクセス制御部53は、HTTP要求に含まれる接続先URLがアクセス許可リスト13に含まれる場合は、ステップ412において当該HTTP要求をHTTPSプロトコルにより暗号化し、接続サーバ12にアクセスし、HTTP要求および利用者IDを接続サーバに送信する。
【0054】
一方、ステップ410において、HTTP要求の接続先URLがアクセス許可リスト13に含まれない場合、ステップ411において、通信処理部はHTTP要求をそのまま、HTTP要求に含まれる接続先URLへ送信する。このとき、送信されるHTTP要求には、利用者IDは含まれない。
【0055】
ステップ421において、接続サーバ12は、通信処理部から暗号化されたHTTP要求を受信すると、これを復号し、ステップ422において、そこに含まれる利用者IDによってアクセス許可リストを検索・参照し、ステップ410と同様の方法でHTTP要求に含まれる接続先URLがアクセス許可リストにあるか否かを判断する。
【0056】
ステップ422において、HTTP要求に利用者IDが含まれない場合、または利用者IDがアクセス許可リスト13にない場合、不正なHTTP要求としてアクセスできない旨を通信処理部31に返す。
【0057】
ステップ422において、利用者IDがアクセス許可リスト13にある場合、ステップ424において、接続サーバ12は、当該HTTP要求を、当該HTTP要求に含まれる接続先URL、すなわちWebサーバ22又は23に送信する。従って、クライアントPC1から送信されたHTTP要求は、通信処理部31、ネットワーク3、非武装地帯41、ファイアーウォール21、Webサーバ22又は23に送信される。受信されたHTTP要求に対して、Webサーバ22又は23から処理結果が、ファイアーウォール21、非武装地帯41、ネットワーク3を通じて通信処理部31に返される。
【0058】
以上述べたように、本発明によれば、Webブラウザは、隔離ネットワーク内で稼働するWebサーバのURLに対してそのままアクセスすることができる。すなわち、WebサーバがJavaScript(登録商標)などのスクリプトエンジンによりURLがクライアントPC上で生成されるようなサービスを提供する場合であっても、Webサーバ側を修正することなく利用者がアクセスすることができる。
【0059】
また、本発明によれば、アクセス許可リストを使用してHTTP要求の送信先を、接続サーバを経由して接続されるWebサーバと、それ以外のインターネット等のネットワーク上のWebサーバ、のいずれかへ切り替えることが可能であるため、クライアントPCは、どちらのWebサーバにもアクセスすることができる。
【0060】
また、本発明によれば、通信処理部と接続サーバ間の通信はHTTPSを用いるので、クライアントPCがプロキシサーバを介してインターネットに接続している場合にも利用できる。
【0061】
また、本発明によれば、VPNのようなネットワーク層でのデータ送受信ではなく、アプリケーション層でHTTP通信の転送を行なうため、VPNクライアントのようなプログラムをクライアントPCにインストールしなくてよい。すなわち、本発明は通信制御部に該当する実行ファイル及び必要なライブラリ類をクライアントPCに配置して実行するだけでよい。従って、利用者が管理者権限を持たない場合であっても、本発明を利用することができる。また、本発明では、通信処理部は動作のための設定を自動で行なうので、手動による設定の手間も不要となる。
【0062】
上述の実施形態は一例であり、本発明の実施形態はこれに限定されない。例えばプロキシ設定1のプロキシサーバがJavaScript(登録商標)プログラムとして設定されていてもよい。また、プロキシサーバ2がない環境でも本発明は実施可能である。その場合、プロキシ設定1にはプロキシサーバに関する値は設定されておらず、プロキシ設定1を参照する通信処理部31は直接ネットワーク3に接続する。
【0063】
また、通信処理部31とWebブラウザ32が別のコンピュータにあってもよい。この場合、Webブラウザ32を実行するコンピュータに通信管理部31のユーザエージェント管理部54の機能を導入する。
【0064】
図4のステップ404で受信設定部50は、それが稼働するクライアントPCに割り当てられたIPアドレス(192.68.0.1等)と空きTCPポートを用いて通信要求の受信設定を行い、その値をWebブラウザのコンピュータ上のユーザエージェント管理部54に送信する。ユーザエージェント管理部54はそれを用いてプロキシ設定2を作成するとともに、Webブラウザ32の起動時、起動時パラメタにより、Webブラウザ32がプロキシ設定2を参照するようにする。
【符号の説明】
【0065】
1 クライアントPC(リモートアクセス装置)
12 接続サーバ
13 アクセス許可リスト
31 通信処理部
32 Webブラウザ
50 受信設定部
51 設定管理部
52 アクセス管理部
53 アクセス制御部
54 ユーザエージェント管理部

【特許請求の範囲】
【請求項1】
ネットワーク及び非武装地帯に設置された接続サーバを通じて内部サーバへのアクセスを行うリモートアクセス装置であって、
所定の通信プロトコルに基づいてデータ通信を行うユーザエージェントからのデータを受信可能な状態にする受信設定手段と、
前記ユーザエージェントのプロキシ設定とは異なる他のプロキシ設定を作成し、前記ユーザエージェントに前記他のプロキシ設定を参照させるためのユーザエージェント管理手段と、
前記接続サーバから、利用者ごとにアクセスが許可されているURLを含むアクセス許可リストをダウンロードし、保持するアクセス管理手段と、
前記利用者の操作に基づいて生成された通信要求に含まれた接続先が前記アクセス許可リストに含まれているか否かを判断し、前記接続先が前記アクセス許可リストに含まれる場合は、前記要求を前記内部サーバに送信するアクセス制御手段と
を備えることを特徴とするリモートアクセス装置。
【請求項2】
前記受信設定手段は、使用されていないポートを検索し、検索の結果見つかった使用されていないポートを使用してユーザエージェントからのデータを受信可能な状態にすることを特徴とする請求項1記載のリモートアクセス装置。
【請求項3】
前記アクセス管理手段は、利用者の認証情報を前記接続サーバに送信し、前記接続サーバによる認証がされた場合、前記アクセス許可リストをダウンロードすることを特徴とする請求項1又は2記載のリモートアクセス装置。
【請求項4】
前記アクセス制御手段は、前記接続サーバとの通信をHTTPSで行うことを特徴とする請求項1から3記載のリモートアクセス装置。
【請求項5】
前記他のプロキシ設定において、前記ユーザエージェントがプロキシサーバとして使用するIPアドレスがループバックアドレスにされていることを特徴とする請求項1〜4のいずれかに記載のリモートアクセス装置。
【請求項6】
ネットワーク及び非武装地帯に設置された接続サーバを通じて内部サーバへのアクセスを行うリモートアクセスプログラムであって、
所定の通信プロトコルに基づいてデータ通信を行うユーザエージェントからのデータを受信可能な状態にする受信設定手段と、
前記ユーザエージェントのプロキシ設定とは異なる他のプロキシ設定を作成し、前記ユーザエージェントに前記他のプロキシ設定を参照させるためのユーザエージェント管理手段と、
前記接続サーバから、利用者ごとにアクセスが許可されているURLを含むアクセス許可リストをダウンロードし、保持するアクセス管理手段と、
前記利用者の操作に基づいて生成された通信要求に含まれた接続先が前記アクセス許可リストに含まれているか否かを判断し、前記接続先が前記アクセス許可リストに含まれる場合は、前記要求を前記内部サーバに送信するアクセス制御手段と
を備えることを特徴とするリモートアクセスプログラム。
【請求項7】
ネットワーク及び非武装地帯に設置された接続サーバを通じて内部サーバへのアクセスを行うリモートアクセス方法であって、
所定の通信プロトコルに基づいてデータ通信を行うユーザエージェントからのデータを受信可能な状態にする受信設定工程と、
前記ユーザエージェントのプロキシ設定とは異なる他のプロキシ設定を作成し、前記ユーザエージェントに前記他のプロキシ設定を参照させるためのユーザエージェント管理工程と、
前記接続サーバから、利用者ごとにアクセスが許可されているURLを含むアクセス許可リストをダウンロードし、保持するアクセス管理工程と、
前記利用者の操作に基づいて生成された通信要求に含まれた接続先が前記アクセス許可リストに含まれているか否かを判断し、前記接続先が前記アクセス許可リストに含まれる場合は、前記要求を前記内部サーバに送信するアクセス制御工程と
を備えることを特徴とするリモートアクセス方法。
【請求項8】
クライアントからネットワーク及び非武装地帯に設置された接続サーバを通じて、隔離ネットワークに設置された内部サーバへのアクセスを行うリモートアクセスシステムであって、
前記クライアントは、
所定の通信プロトコルに基づいてデータ通信を行うユーザエージェントからのデータを受信可能な状態にする受信設定手段と、
前記ユーザエージェントのプロキシ設定とは異なる他のプロキシ設定を作成し、前記ユーザエージェントに前記他のプロキシ設定を参照させるためのユーザエージェント管理手段と、
前記接続サーバから、利用者ごとにアクセスが許可されているURLを含むアクセス許可リストをダウンロードし、保持するアクセス管理手段と、
前記利用者の操作に基づいて生成された通信要求に含まれた接続先が前記アクセス許可リストに含まれているか否かを判断し、前記接続先が前記アクセス許可リストに含まれる場合は、前記要求を前記内部サーバに送信するアクセス制御手段を備え、
前記接続サーバは、
前記アクセス許可リストを保持し、前記クライアントの要求に応じて利用者ごとに前記アクセス許可リストを前記クライアントに送信する手段を備え、
前記接続先が前記アクセス許可リストに含まれる場合に送信された前記クライアントからの通信要求を、前記接続サーバに保持された前記アクセス許可リストに基づいて、前記内部サーバに送信することを特徴とするリモートアクセスシステム。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2011−100207(P2011−100207A)
【公開日】平成23年5月19日(2011.5.19)
【国際特許分類】
【出願番号】特願2009−253214(P2009−253214)
【出願日】平成21年11月4日(2009.11.4)
【出願人】(591030237)日本ユニシス株式会社 (38)
【Fターム(参考)】