(57)【特許請求の範囲】
【請求項１】
複数のネットワーク装置とそれぞれ１以上のＴＣＰ／ＩＰコネクションを用いて通信可能な通信手段と、該通信手段を用いてネットワーク装置間の通信を中継する制御手段を有し、該制御手段は、前記通信手段により前記ネットワーク装置との間で確立し保持しているＴＣＰ／ＩＰコネクションを用いて前記ネットワーク装置と他のネットワーク装置との間の通信を中継し、前記ネットワーク装置から暗号通信が指示されているとき該ネットワーク装置に対して接続を要求した他のネットワーク装置に対してＴＣＰ／ＩＰコネクションを用いた暗号通信を指示することを特徴とする中継サーバ。
【請求項２】
複数のネットワーク装置とそれぞれ１以上のＴＣＰ／ＩＰコネクションを用いて通信可能な通信手段と、該通信手段を用いてネットワーク装置間の通信を中継する制御手段を有し、該制御手段は、前記通信手段により前記ネットワーク装置との間で確立し保持しているＴＣＰ／ＩＰコネクションを用いて前記ネットワーク装置と他のネットワーク装置との間の通信を中継し、前記ネットワーク装置から暗号通信が指示されているとき、該ネットワーク装置から他のネットワーク装置に対する接続要求時に前記他のネットワーク装置に対してＴＣＰ／ＩＰコネクションを用いた暗号通信を指示することを特徴とする中継サーバ。
【請求項３】
前記暗号通信は、中継プロトコルレベルで行うことを特徴とする請求項１または請求項２に記載の中継サーバ。
【請求項４】
前記暗号通信は、前記ネットワーク装置においてアプリケーションレベルで行うことを特徴とする請求項１ないし請求項３のいずれか１項に記載の中継サーバ。
【請求項５】
前記制御手段は、前記ネットワーク装置とＴＣＰ／ＩＰコネクションを確立するログイン時に暗号通信を行うか否かの指示を受け取ることを特徴とする請求項１または請求項２または請求項４に記載の中継サーバ。
【請求項６】
前記制御手段は、前記ネットワーク装置とＴＣＰ／ＩＰコネクションを確立するログイン時に受け取った暗号通信を行うか否かの指示を他のネットワーク装置へ通知することを特徴とする請求項５に記載の中継サーバ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のネットワーク装置と通信を行い、あるネットワーク装置と他のネットワーク装置との間の通信を中継してネットワーク装置間の通信を実現する中継サーバに関するものである。
【０００２】
【従来の技術】
図６は、一般的なインターネットを用いたシステムの一例を示す説明図である。図中、１，２はローカルシステム、３はインターネット、１１，１２，２１，２２は端末、１３，２３はゲートウェイ、１４，２４はＬＡＮである。ローカルシステム１は、端末１１、端末１２、ゲートウェイ１３などがＬＡＮ１４により接続されて構成されている。ゲートウェイ１３は、ＬＡＮ１４とともにインターネット３に接続されており、ＬＡＮ１４上の端末１１，１２など、各種のネットワーク機器からインターネットを利用することができる。またローカルシステム２も同様であり、端末２１、端末２２、ゲートウェイ２３などがＬＡＮ２４により接続されて構成されている。ゲートウェイ２３は、ＬＡＮ２４とともにインターネット３に接続されており、ＬＡＮ２４上の端末２１，２２など、各種のネットワーク機器からインターネットを利用することができる。もちろん、それぞれのローカルシステム１，２において、他の様々な機器がＬＡＮ１４，２４により接続されていてよい。
【０００３】
このようなシステムにおいて、通常はローカルシステム１，２に対してはグローバルＩＰアドレスは１ないし複数個が割り当てられるが、ローカルシステム１，２内のそれぞれのネットワーク機器にグローバルＩＰアドレスが割り当てられるわけではない。それぞれのローカルシステム１，２内の各ネットワーク機器にはプライベートなＩＰアドレスが割り振られており、ゲートウェイ１３，２３によってＮＡＴやＩＰマスカレードなどの機能を用いてプライベートなＩＰアドレスをグローバルなＩＰアドレスに変換している。このようなＩＰアドレスの変換機能を有するゲートウェイ１３，２３を用い、例えばローカルシステム１では端末１１，１２はゲートウェイ１３を介してインターネット３を利用することになる。またローカルシステム２においても、端末２１，２２はゲートウェイ２３を介してインターネット３を利用することになる。
【０００４】
またゲートウェイ１３，２３あるいは別のネットワーク機器等においてはファイアウォールやプロキシサーバなどの機能を有し、これらの装置を介して各端末がインターネット３を利用するような構成も利用されており、システムの安全性を向上させている。
【０００５】
ここで、例えばインターネット３からローカルシステム１内の端末１１に対してアクセスしようとすると、ゲートウェイ１３のグローバルＩＰアドレスを知ることはできるものの、端末１１のプライベートなＩＰアドレスを知ることはできない。従って、通常の接続方法ではローカルシステム１の外部から端末１１をアクセスすることはできない。またゲートウェイ１３のファイアウォールの機能などによって、アクセスを受け付けるサイトが制限されている場合もある。もちろん、端末１２についても同様であるし、ローカルシステム２内の端末２１，２２についても同様である。
【０００６】
さらに、ローカルシステム１内の端末１１や端末１２、ローカルシステム２内の端末２１や端末２２は、通常はクライアント機能しか有しておらず、他のネットワーク機器からの情報を受け付けるサーバの機能を有していない。そのため、端末１１，１２，２１，２２から他のネットワーク機器にアクセスしない限り、他のネットワーク機器からこれらの端末に情報を送信することができない。
【０００７】
【発明が解決しようとする課題】
本発明は、上述した事情に鑑みてなされたもので、インターネットからローカルシステム内の端末への接続、あるいは異なるローカルシステム内の端末間の接続を実現するとともに、異なるローカルシステム内の端末間において暗号通信が可能な中継システムを実現する中継サーバを提供することを目的とするものである。
【０００８】
【課題を解決するための手段】
本発明は、中継サーバにおいて、複数のネットワーク装置とそれぞれ１以上のＴＣＰ／ＩＰコネクションを用いて通信可能な通信手段と、該通信手段を用いてネットワーク装置間の通信を中継する制御手段を有し、該制御手段は、前記通信手段により前記ネットワーク装置との間で確立し保持しているＴＣＰ／ＩＰコネクションを用いて前記ネットワーク装置と他のネットワーク装置との間の通信を中継し、前記ネットワーク装置から暗号通信が指示されているとき該ネットワーク装置に対して接続を要求した他のネットワーク装置に対してＴＣＰ／ＩＰコネクションを用いた暗号通信を指示することを特徴とするものである。また本発明は、中継サーバにおいて、複数のネットワーク装置とそれぞれ１以上のＴＣＰ／ＩＰコネクションを用いて通信可能な通信手段と、該通信手段を用いてネットワーク装置間の通信を中継する制御手段を有し、該制御手段は、前記通信手段により前記ネットワーク装置との間で確立し保持しているＴＣＰ／ＩＰコネクションを用いて前記ネットワーク装置と他のネットワーク装置との間の通信を中継し、前記ネットワーク装置から暗号通信が指示されているとき、該ネットワーク装置から他のネットワーク装置に対する接続要求時に前記他のネットワーク装置に対してＴＣＰ／ＩＰコネクションを用いた暗号通信を指示することを特徴とするものである。
【０００９】
このような構成によって、ネットワーク装置から中継サーバにログインしておき、ログインしているネットワーク装置の通信を中継することによって、例えばネットワーク装置がローカルシステム内の装置であっても、インターネットからネットワーク装置への通信を実現することができる。それとともに、暗号通信を要求したネットワーク装置と中継サーバとの間だけでなく、中継サーバと相手先のネットワーク装置との間についても暗号通信を行うことによって、ネットワーク装置間の暗号通信を実現することができる。
【００１０】
なお、暗号通信は、中継プロトコルレベルあるいはアプリケーションのレベルで行うことができる。なお、暗号通信の指示は、予め設定しておくほか、ネットワーク装置の中継サーバへのログイン時に行うことができる。この場合、暗号通信を行うか否かの指示を他のネットワーク装置へ通知するように構成することができる。
【００１１】
【発明の実施の形態】
図１は、本発明の中継サーバの実施の一形態を含む通信システムの一例を示す構成図である。図中、図６と同様の部分には同じ符号を付して重複する説明を省略する。４，５は中継サーバ、４１は通信部、４２は制御部である。中継サーバ４は、インターネット３に接続されており、グローバルＩＰアドレスを有している。このグローバルＩＰアドレスを用いてインターネット３を介して各種のネットワーク機器と通信を行うことができる。
【００１２】
中継サーバ４は、例えば通信部４１および制御部４２を含んで構成することができる。通信部４１は、インターネット３を介して複数のネットワーク機器と通信可能である。
【００１３】
制御部４２は、通信部４１を介してネットワーク機器から送られてくるログイン要求を受け付け、そのネットワーク機器との接続を維持して通信路を確保しておく。また、ログイン要求時には、ネットワーク機器から送られてくる各種の属性情報の指定を受け取り、その属性情報に従ったログイン時の処理を行う。この属性情報として、暗号通信を行うか否かを示す情報を含めておくことができる。また、暗号通信を行うことが指示されているとき、使用可能な暗号化方式を属性に含めておくことができる。なお、ログイン時に受け取った、暗号通信を行うか否かの情報を含む属性情報は、例えば同じく属性情報に従って他のネットワーク機器の一部または全部に対して通知してもよい。このときの通知の指定として、
・全ユーザに通知する
・全ユーザに通知しない
・特定のユーザに通知する
・特定のユーザに通知しない
等を指定することができる。
【００１４】
また、このようにしてログイン要求を受け、通信路が確保されると、その通信路をログアウトされるまで維持しておく。そして、通信可能に接続されているネットワーク機器から接続要求情報を受け取ると、その接続要求情報に従って、通信可能に接続されているネットワーク機器と接続を要求したネットワーク装置との間でのデータ転送を中継する。このとき、ネットワーク機器のログイン時に暗号通信を行う旨の属性情報を受け取っている場合には、そのネットワーク機器に対して接続要求を行った他のネットワーク機器に対して暗号通信を行うように指示する。これによって、それぞれのネットワーク機器では、データを暗号化して送出し、中継サーバにおいてこれを中継して転送することによって、ネットワーク機器の間での暗号通信を実現することができる。
【００１５】
例えば端末１１と端末２１がそれぞれ通信可能に接続されて通信路が確保されている状態において、端末１１から端末２１との接続要求情報を受け取ると、中継サーバ４は端末１１との間でデータ転送を行うとともに、端末２１との間でもデータ転送を行い、実質的に端末１１と端末２１との間での通信を実現する。このとき、端末１１や端末２１はそれぞれローカルシステム１，ローカルシステム２内のネットワーク装置である。中継サーバ４からゲートウェイ１３，２３に対しては接続可能であるが、端末１１や端末２１については接続することができない。また、上述のように端末１１と端末２１との間でも直接的な通信を行うことはできない。しかし、中継サーバ４のグローバルＩＰアドレスを使用すれば、端末１１や端末２１からゲートウェイ１３，２３を介して中継サーバ４に接続することは可能である。従って、端末１１や端末２１から中継サーバ４に対してログイン要求を行って通信路を確保することによって、中継サーバ４とログイン要求を行った端末１１あるいは端末２１との間の双方向の通信が可能になる。
【００１６】
このように中継サーバ４と端末１１の間、及び中継サーバ４と端末２１との間の双方向の通信が可能であると、中間サーバ４は、端末１１から端末２１への通信要求を受けた場合、端末１１から送られてきたデータを受信し、受信したデータを端末２１へ送信する。これによって、端末１１から端末２１へのデータ転送を行う。また逆に、端末２１から送られてきたデータを受信し、受信したデータを端末１１へ送信することもできる。このようにして、端末１１と端末２１との間の通信を実現することができる。もちろん、１台のネットワーク装置と複数の接続を確保することも可能であり、複数の接続を用いて複数台のネットワーク装置との通信を行うことが可能である。また中継サーバが複数のネットワーク装置との接続を用いて同報通信を行うこともできる。
【００１７】
さらに、このような端末間の通信を行う場合、ゲートウェイ１３，２３と中継サーバ４との間の通信はローカルシステム外のネットワークを用いることになるため、セキュリティが保証されない。従って暗号通信を行うことが要求されることがある。中継プロトコルレベルで暗号通信を行う場合、中継サーバ４とネットワーク機器との間での暗号通信を実現することができるが、上述のように端末間で通信を行う場合、一方が暗号通信を行っても、他方が暗号通信を行わない状態で通信を行ってもセキュリティを保つことができない。そのため、暗号通信を行う旨を指定しているネットワーク機器へ、あるいは暗号通信を行う旨を指定しているネットワーク機器からの接続要求については、中継サーバ４において相手方に対して暗号通信を指示する。
【００１８】
例えば端末２１が他のネットワーク機器との間で暗号通信を行おうとする場合、端末２１から中継サーバ４へログインする際に、属性情報の一部として暗号通信を指定しておく。そして例えば端末１１から端末２１へ接続して通信を行おうとする場合には、中継サーバ４は端末１１から端末２１との接続要求情報を受け取ると端末１１に対して暗号通信を指定する。これに従って端末１１は、中継サーバ４との間で暗号通信を行う。また中継サーバ４は端末２１との間でも暗号通信を行い、実質的に端末１１と端末２１との間での暗号通信を実現する。このとき、端末１１及び端末２１では、上述のように中継プロトコルレベルで暗号化を行うことによって、転送するデータによらず、一律に所定の暗号方式により暗号通信を行うことができる。なお、暗号方式によっては中継サーバ４において復号及び再暗号化の処理を行ってもよい。
【００１９】
例えば端末２１から端末１１へ接続して通信を行う場合には、すでにログイン時に暗号通信が指定されているので、中継サーバ４は接続先である端末１１に対して接続要求情報を送るとともに暗号通信を指定する。これに従って端末１１は、中継サーバ４との間で暗号通信を行えばよい。
【００２０】
あるいは、アプリケーションレベルで暗号化を行うこともできる。この場合には、通信を行うネットワーク機器（例えば端末１１及び端末２１）のアプリケーションにおいて暗号化及び復号の処理を行い、中継プロトコルレベルでは暗号データであるか否かに関わらず、一律に転送の処理を行う。中継サーバ４は暗号通信を指定する以外には、転送データに対する復号や再暗号化の処理は行わず、転送の処理を行うだけでよい。このようにアプリケーションレベルで暗号通信を行う場合には、アプリケーションごとに暗号化方式を選択して暗号化し、データを転送することができる。もちろん、暗号化しない場合も選択肢に含めておくことができる。暗号方式としては、例えばユーザＩＤを利用したＩＤ−ＮＩＫＳ４などのＩＤ暗号方式などを使用することができる。もちろん、他の各種の暗号方式を用いることもできる。
【００２１】
また、上述の例では中継サーバ４へのログイン時に暗号通信を行うか否かを示す属性情報を転送するものとしたが、これに限らず、例えば予め中継サーバ４に暗号通信を行う旨を登録しておき、ログイン時に指定を行わなくてよいように構成することも可能である。このように予め中継サーバ４に暗号通信を行うこと登録しておく場合、中継サーバ４との間の通信プロトコル自体についても暗号化してやりとりを行うことが可能である。これによって、中継サーバ４への各種の情報伝達についても暗号通信によって行うことができる。
【００２２】
さらに、暗号通信を指示しないで中継サーバにログインしておき、ネットワーク機器が接続要求を行ったときに暗号通信を指示することも可能である。この場合にも、中継サーバ４は、接続要求があった旨を通知する際に暗号通信が指示された旨を通知し、その後、中継サーバとの間で暗号通信を行えばよい。
【００２３】
なお、例えば接続先が暗号通信を指示しているが、接続要求元が暗号通信に対応できない場合には、接続を拒否したり、あるいは接続先に対して暗号通信ができない相手先からの接続要求があった旨を通知し、接続するか否かを返信してもらうように構成してもよい。また接続要求時に暗号通信を指示したが接続先が暗号通信に対応できない場合も同様である。
【００２４】
図１における中継サーバ５も中継サーバ４と同様の構成を有するものである。中継サーバ４と中継サーバ５との通信路を確保しておくことによって、中継サーバ４にログインしたネットワーク装置と、中継サーバ５にログインしたネットワーク装置の間での通信を実現することができる。この場合も接続先あるいは接続元が暗号通信を要求している場合には、いずれかの中継サーバにおいてその旨を相手先へ通知することによって暗号通信を実現することができる。また、さらに多くの中継サーバがインターネット３上に存在し、中継サーバ間の通信を中継する中継サーバが存在していてもよい。もちろん、インターネット上に存在する中継サーバの個数は任意であり、１以上存在していればよい。
【００２５】
図２、図３は、本発明の中継サーバを含む通信システムの実施の一形態における通信手順の一例を示すシーケンス図である。図２、図３に示す通信手順は、ＴＣＰ／ＩＰを利用して実行され、中継サーバとの接続、接続の維持、端末への接続要求、端末へのデータ転送、端末との接続終了、中継サーバとの接続終了等を行うものである。このうち、中継サーバ４との接続、接続の維持、中継サーバ４との接続終了の部分を図２に示し、端末からの接続要求、端末へのデータ転送、端末との接続終了等の部分を図３に示している。
【００２６】
ここでは一例として、図１におけるローカルシステム１内の端末１１とローカルシステム２内の端末２１との間で通信を行うものとし、端末２１がログイン時に暗号通信を要求する場合について示している。予め、中継サーバ４に対して端末１１と端末２１をユーザとして登録しておく。登録の情報としては、例えばログイン時のユーザＩＤや認証のためにパスワードなどを登録しておくとよい。
【００２７】
端末１１は、例えば起動後あるいはオペレータによって指示されると、（１）において、ゲートウェイ１３を介して中継サーバ４に接続し、ログインして中継サーバ４とのＴＣＰ／ＩＰコネクション（接続１）を確立する。端末１１はローカルシステム１内のネットワーク機器であるため、中継サーバ４から直接通信を行うことはできないが、クライアントである端末１１からのログインにより中継サーバ４への接続は可能である。ＴＣＰ／ＩＰコネクションは双方向型のデータ通信が可能であるので、端末１１から中継サーバ４へ、また中継サーバ４から端末１１への通信を行うことができる。
【００２８】
接続１が確立した後、（２）において端末１１はユーザＩＤ、パスワードを中継サーバ４に送る。中継サーバ４は、受け取ったユーザＩＤおよびパスワードが制御部４２に接続情報として保持されているかを調べ、端末１１の認証を行う。この認証によって、不特定の第３者との接続を回避し、安全性を確保することができる。もし接続情報が登録されていなかったり、パスワードが違っているなど、認証に失敗した場合には、中継サーバ４は端末１１に対して否定応答を行うか、あるいはそのまま接続１を切断する。認証が成功したら、（３）において、肯定応答を行う。
【００２９】
またここまでのログイン処理の時に各種の属性情報を必要に応じて指定することができる。この属性情報として、暗号通信を行うか否かを指定することができる。このほか、例えばログインしたことを含む各種情報を他のユーザに通知するか否かに関する情報や、データ受信に関する情報、接続可能な相手先に関する情報など、各種の属性情報を必要に応じて指定することができる。属性情報は、例えばユーザＩＤやパスワードとともに中継サーバ４に転送してもよいし、中継サーバ４からの肯定応答の後に、別途、属性情報の転送を行ってもよい。
【００３０】
このようにしてログイン時の処理が終了したら、以後、接続１が切断されるまで、接続１を維持するように制御する。そのために、（４）において定期的に中継サーバ４に対し接続保持のコマンドを送出し、（５）において中継サーバ４からの確認の応答を得る。これによって接続を保持しておくとともに、中継サーバが正常に稼働していることの確認を行う。
【００３１】
同様に端末２１は、（１’）において、ゲートウェイ２３を介して中継サーバ４に接続し、ログインして中継サーバ４とのＴＣＰ／ＩＰコネクション（接続２）を確立する。端末２１もローカルシステム２内のネットワーク装置であるため、中継サーバ４から直接通信を行うことはできないが、クライアントである端末２１からのログインにより中継サーバ４への接続は可能である。接続２によって、端末２１から中継サーバ４へ、また中継サーバ４から端末２１への通信を行うことができる。
【００３２】
接続２が確立した後、（２’）において端末２１はユーザＩＤ、パスワードを中継サーバ４に送る。中継サーバ４は、受け取ったユーザＩＤおよびパスワードが制御部４２に接続情報として保持されているか否かを調べ、端末２１の認証を行う。もし接続情報が登録されていなかったり、パスワードが違っているなど、認証に失敗した場合には、中継サーバ４は端末２１に対して否定応答を行うか、あるいはそのまま接続２を切断する。認証が成功したら、（３’）において、肯定応答を行う。またここまでのログイン処理の時に、各種の属性情報を指定することができる。この例では、端末２１は暗号通信を行うものとし、属性情報として暗号通信を行う旨を通知する。なお属性情報は、例えばユーザＩＤやパスワードとともに中継サーバ４に転送してもよいし、中継サーバ４からの肯定応答の後に、別途、属性情報の転送を行ってもよい。
【００３３】
このようにしてログイン時の処理が終了したら、以後、接続２が切断されるまで、接続２を維持するように制御する。そのために、（４’）において定期的に中継サーバ４に対し接続保持のコマンドを送出し、（５’）において中継サーバ４からの確認の応答を得る。これによって接続を保持しておくとともに、中継サーバが正常に稼働していることの確認を行う。
【００３４】
なお、図２に示す例では端末１１による中継サーバ４へのログインが先に、端末２１によるログインが後に行われているが、順序は任意であり、両者の通信前であればいつ行ってもよい。また、両者の通信時まで中継サーバ４との接続が維持されいている必要がある。
【００３５】
端末間で通信を行う場合のシーケンスの一例を図３に示している。端末１１から端末２１に接続したいという要求が発生すると、（１１）において、端末１１は中継サーバ４に対して接続したい端末２１のユーザＩＤを指定して接続要求を行う。なお、接続先となる端末２１のユーザＩＤは、予め取得しておくか、あるいは中継サーバ４からログイン中のユーザの一覧などによって確認して指定するなど、任意の方法で指定することができる。中継サーバ４は、指定されたユーザＩＤに対応する端末２１がログイン状態でないならエラーを端末１１に返す。
【００３６】
また、端末２１がログイン状態にあるならば、端末２１との接続及び通信が可能である。この例では端末２１から暗号通信を行う旨が指定されているので、中継サーバ４は（１２）において端末１１に対して暗号通信を指定する。端末１１が暗号通信を行うことができる場合には（１３）において暗号通信受け入れ応答が返されるので、これを確認した後に、中継サーバ４は（１４）において端末２１に対して端末１１から接続要求がある旨の情報と接続を要求している端末１１のユーザＩＤを含む接続要求通知を送信する。
【００３７】
なお、端末１１が暗号通信を行うことができない場合には、端末１１からの接続要求を端末２１との接続を行わない。あるいは、端末２１に対して暗号通信を行うことができない相手先から接続要求があった旨を通知し、端末２１からの応答に従って接続の可否を決定してもよい。また、この例では端末１１からの暗号通信受け入れ応答を待ってから端末２１に対して端末１１からの接続要求を通知しているが、これに限らず、端末１１への暗号通信指示とともに端末２１に対して接続要求通知を行ってもよい。
【００３８】
端末２１は、接続要求通知の送信に用いられた接続が端末１１との接続に使用されていることを記憶して、（１５）において受け入れ可能の応答を返す。このとき端末２１は、接続２を通じて端末１１と暗号通信を行うものとして設定しておく。なお、接続を拒否する場合は例えばエラーを返せばよい。
【００３９】
中継サーバ４は、（１６）において、端末１１に対して端末２１からの応答を返す。端末２１からの応答が受け入れ可能の応答の場合には、中継サーバ４は、接続１と接続２を、それぞれ端末１１と端末１２の通信に使用するものとして記憶する。このとき、接続１と接続２については暗号通信を行うものとして記憶しておく。
【００４０】
また端末２１からの応答を受け取った端末１１では、受け入れ可能の応答を受け取った場合には、使用している接続（接続１）を端末２１との通信に使用するものとして記憶する。このとき端末１１では、接続１によって端末２１と暗号通信を行うものとして設定する。
【００４１】
このようにして端末１１及び端末２１と中継サーバ４との間で暗号通信を行うことを設定した後、（２２）以降において実際にデータを暗号通信により送信することになる。なお、図３に示す例では、端末１１と端末２１との間の通信を行うことが決定された後に、その他のネットワーク機器からの接続要求を受けたり、他のネットワーク機器への接続要求を行うために、それぞれ、新しいＴＣＰ／ＩＰコネクションを中継サーバ４に確立する。すなわち、端末１１は（１７）において中継サーバ４にログインして中継サーバ４とのＴＣＰ／ＩＰコネクション（接続３）を確立し、（１８）において端末１１はユーザＩＤ、パスワード、必要に応じて属性情報を中継サーバ４に送る。中継サーバ４は、受け取ったユーザＩＤおよびパスワードにより端末１１の認証を行い、（１９）において応答を返す。そしてこの接続３を維持するため、定期的に（２０）において端末１１から中継サーバ４へ接続保持コマンドを送信し、中継サーバ４は（２１）において応答を端末１１に返す。
【００４２】
同様に端末２１は（１７’）において中継サーバ４にログインして中継サーバ４とのＴＣＰ／ＩＰコネクション（接続４）を確立し、（１８’）において端末２１はユーザＩＤ、パスワード、必要に応じて属性情報を中継サーバ４に送る。この例では属性情報として暗号通信を行う旨の情報を送信している。中継サーバ４は、受け取ったユーザＩＤおよびパスワードにより端末２１の認証を行い、（１９’）において応答を返す。また端末２１との通信が暗号通信により行われることを設定しておく。そしてこの接続４を維持するため、定期的に（２０’）において端末２１から中継サーバ４へ接続保持コマンドを送信し、中継サーバ４は（２１’）において応答を端末２１に返す。
【００４３】
なお、このように新たなＴＣＰ／ＩＰコネクションを確立した場合に指定する属性情報は、先の接続に対する属性情報と異なっていてもかまわない。また、属性情報を指定せずに先の接続に対する属性情報をそのまま受け継ぐように構成したり、属性情報によって先の接続に対する属性情報を受け継ぐ旨の指定が可能なように構成してもよい。また、上述のような空きの接続を確保しておく必要がなければ、（１７）〜（２１）あるいは（１７’）〜（２１’）の手順は必要ない。さらに、既に複数の接続を確保している場合も、これらの手順を行わなくてもよい。
【００４４】
上述の（１１）〜（１６）により端末１１及び端末２１と中継サーバ４との間で暗号通信を行うことを設定することによって、端末１１と端末２１間で暗号通信が可能である。例えば端末１１から端末２１へデータを送信する場合には、端末１１は送信するデータを暗号化し、（２２）において中継サーバ４に対して接続１を用いて暗号化したデータを送信する。なお、ここでは中継プロトコルレベルで暗号化の処理を行うものとする。
【００４５】
中継サーバ４は、端末１１からの暗号化されたデータを受け取り、受け取ったデータを復号した後に、さらに端末２１で復号可能なように再暗号化し、（２３）において接続２を用いて端末２１へ送信する。もちろん、暗号方式などによっては復号及び再暗号化の処理が必要ない場合もあり、その場合にはそのまま中継すればよい。
【００４６】
端末２１は、中継サーバ４から接続２を用いて送られてきた端末１１からの暗号化されたデータを受け取り、復号して元のデータを取得する。そして（２４）において、端末１１に対する応答を中継サーバ４に対して送信する。中継サーバ４は、端末２１から端末１１に対する応答を受け取り、受け取った応答を、（２５）において接続１を用いて端末１１へ送信する。
【００４７】
このようにして、端末１１と中継サーバ４との間の接続１と、端末２１と中継サーバ４との間の接続２とを用い、中継サーバ４によってデータを中継することによって、端末１１と端末２１との間の暗号通信を行うことができる。なお、（２２）〜（２５）による端末１１から端末２１へのデータ転送は、複数回繰り返されてもよい。また、端末２１から端末１１へのデータ転送についても同様に行うことができ、端末２１で暗号化したデータを中継サーバ４で受け取り、必要に応じて復号及び再暗号化の処理を施し、端末１１へ転送すればよい。
【００４８】
端末１１と端末２１との間のデータ転送が終了したら、端末１１あるいは端末２１から終了通知を行う。ここでは端末１１から行うものとし、（２６）において端末１１は端末２１に対する終了通知を、接続１を使用して中継サーバ４に対して送信する。中継サーバ４は、端末１１から受け取った端末２１への終了通知を、（２７）において接続２を使用して端末２１へ送信する。終了通知を送信した端末１１は、（２８）において、接続１が空きになったことを示す開放通知を中継サーバ４へ送信する。また終了通知を受け取った端末２１も、（２８’）において、接続２が空きになったことを示す開放通知を中継サーバ４へ送信する。これによって中継サーバ４は、接続１と接続２が端末１１と端末２１との間の通信用ではなくなり、空きになったことを記憶する。なお、この例では終了通知に対する応答を行っていないが、応答を返信するようにしてもよい。
【００４９】
このようにして開放された接続１および接続２は、図２に（４）、（５）または（４’）、（５’）で示したように接続保持コマンドとその応答を定期的に行って、端末１１と中継サーバ４との間、および、端末２１と中継サーバ４との間の接続を保つ。なお、この時点では端末１１と中継サーバ４との間では接続１と接続３が確保されている。同様に、端末２１と中継サーバ４との間では接続２と接続４が確保されている。そのままでもよいし、接続１および接続２の開放時にこれらの接続については切断してもよい。もちろん、接続１および接続２を存続させ、接続３および接続４を切断してもよい。
【００５０】
図２に戻り、例えば端末１１が電源を切断する場合や、中継サーバ４への接続をやめる場合には、（６）において、端末１１は中継サーバ４に対してログアウトを通知する。このとき、複数の接続が確保されている場合には、いずれの接続を用いて行ってもよい。そして、端末１１はすべての接続を切断して終了する。この例では（７）において接続１を切断して終了する。図３の（１７）〜（１９）で接続３を確保している場合には、この接続３についても切断することになる。中継サーバ４は、端末１１からのログアウトの通知を受け、端末１１のログアウトを認識して端末１１とのすべての接続を切断する。なお、端末２１においても同様である。
【００５１】
上述のような手順を実行することによって、それぞれあるいは一方がローカルシステム内のネットワーク機器である場合でも通信を行うことが可能であ。さらに予め暗号通信を指示しておくことによって、中継サーバ４が相手先に暗号通信を指示して各端末と中継サーバ４間で暗号通信を行い、端末間の暗号通信を実現することができる。
【００５２】
なお、上述のような中継サーバ４との接続、接続の維持、端末への接続要求、端末へのデータ送信、端末との接続終了、中継サーバとの接続終了を行うための手順は、上位で動作するアプリケーションプロトコルがやりとりするコマンドやデータに対しては透過性を保ち何の影響も与えないように構成することが可能であり、既存のアプリケーションプロトコルをそのまま用いて通信を行うことが可能である。また、暗号化及び復号の処理についても上述のように中継プロトコルレベルで行うことによって、アプリケーションによらず、暗号通信を行うことができる。
【００５３】
図４は、本発明の中継サーバを含む通信システムの実施の一形態における通信手順の別の例を示すシーケンス図である。図３においては端末１１から端末２１に対して接続要求を行った場合について、通信手順の一例を示した。図４では、暗号通信を指示している端末２１から、端末１１に対して接続要求を行う場合の通信手順の一例を示している。
【００５４】
端末２１から接続要求を行う場合、（３１）において、端末２１は中継サーバ４に対して端末１１のユーザＩＤを指定して接続要求を行う。このとき、既にログイン時に暗号通信を指定しているので、改めて暗号通信を要求しなくても、相手先と暗号通信を行うことを前提とする。もちろん改めて暗号通信を指定してもよい。中継サーバ４は（３２）において端末１１に対して端末２１から接続要求がある旨の情報と接続を要求している端末１１のユーザＩＤを含む接続要求通知を送信する。このとき中継サーバ４は、端末１１に対して暗号通信を指示する。
【００５５】
接続要求通知を受けた端末１１は、接続要求通知の送信に用いられた接続１が端末１１との通信に使用されていることを記憶し、また、暗号通信を行うように設定を行う。そして、（３３）において、接続受け入れ可能の応答を返す。なお、接続を拒否する場合や暗号通信ができない場合は例えばエラーを返せばよい。
【００５６】
中継サーバ４は、端末１１から接続受け入れ応答を受け取ると、（３４）において、端末２１に対して端末１１からの応答を返す。端末１１からの応答が受け入れ可能の応答の場合には、中継サーバ４は、接続１と接続２を、それぞれ端末１１と端末１２の通信に使用するものとして記憶する。このとき、接続１と接続２については暗号通信を行うものとして記憶しておく。
【００５７】
また端末１１からの応答を受け取った端末２１では、受け入れ可能の応答を受け取った場合には、使用している接続（接続２）を端末１１との通信に使用するものとして記憶する。この場合、端末２１は接続２を用いて端末１１と暗号通信を行うことになる。
【００５８】
このようにして端末１１及び端末２１と中継サーバ４との間で暗号通信を行うことを設定した後、（４０）以降において実際にデータを暗号通信により送信することになる。なお、図４に示す例においても、（３５）〜（３９）により端末１１と中継サーバ４との間に接続３を設け、また（３５’）〜（３９’）により端末２１と中継サーバ４との間に接続４を設けている。
【００５９】
データ転送時の手順は図３に示した例と同様であるが、ここでは端末２１から端末１１へデータを転送する例を示している。端末２１は送信するデータを暗号化し、（４０）において中継サーバ４に対して接続２を用いて暗号化したデータを送信する。中継サーバ４は、端末２１からの暗号化されたデータを受け取り、必要に応じて受け取ったデータを復号及び再暗号化した後、（４１）において接続１を用いて端末１１へ送信する。端末１１は、中継サーバ４から接続１を用いて送られてきた端末２１からの暗号化されたデータを受け取り、復号して元のデータを取得する。そして（４２）において、端末２１に対する応答を中継サーバ４に対して送信する。中継サーバ４は、端末１１から端末２１に対する応答を受け取り、受け取った応答を、（４３）において接続２を用いて端末２１へ送信する。
【００６０】
このようにして、暗号通信を予め設定した端末２１から接続要求を行う場合についても、端末１１との間で暗号通信を行うことができる。なおこの場合も、端末１１から端末２１へのデータ転送も可能であり、この場合を含め、複数回のデータ転送を行ってもよい。
【００６１】
また端末１１と端末２１との間のデータ転送が終了した場合についても図３に示した例と同様であり、この例では端末２１から（４４）において接続２を使用して終了通知を中継サーバ４へ送信し、中継サーバ４は端末２１から受け取った終了通知を、（４５）において接続１を使用して端末１１へ送信する。そして端末１１は（４６）において接続１の開放を中継サーバ４へ通知し、また端末２１は（４６’）において接続２の開放を中継サーバ４へ通知すればよい。
【００６２】
なお、上述の通信手順の２つの例における説明では、転送するデータに対してのみ暗号通信を行うものとして説明した。しかしこれに限らず、暗号通信を指定したり、暗号通信の受け入れ応答を行った後は、プロトコル自体も暗号化して通信を行うこともできる。さらに、予め登録しておけば、ログインの時点から暗号通信を行うことが可能である。
【００６３】
図５は、本発明の中継サーバを含む通信システムの実施の一形態においてアプリケーションレベルで暗号化を行う場合の説明図である。上述の通信手順の説明では、暗号化及び復号の処理を中継プロトコルレベルで行う例を示した。本発明はこれに限らず、例えばアプリケーションレベルで行うこともできる。例えば図５には、端末１１から中継サーバ４を介して端末２１へ暗号通信によりデータを転送する場合を示している。
【００６４】
この場合も、例えば端末１１に対して中継サーバ４から暗号通信を指定する。これによって、端末１１の中継プロトコルレベルで暗号通信の指定を受け取り、アプリケーションあるいはさらに端末１１のユーザに対して伝達しておく。
【００６５】
端末１１では、転送するデータを、そのデータを作成したアプリケーションあるいは別のアプリケーションによって暗号化し、送信を待つ。暗号化されたデータは、中継プロトコルレベルでは暗号化していない場合と同様に中継サーバ４へと転送される。中継サーバ４においても、端末１１から送られてきた暗号化されたデータをそのまま端末２１へ転送して中継すればよい。端末２１では、中継プロトコルレベルでは暗号化されたデータをそのまま受け取り、アプリケーションレベルで復号して平文（元のデータ）を取得すればよい。
【００６６】
このようにして、アプリケーションレベルで暗号化及び復号の処理をを行うことによって、中継サーバ４を介した端末間の暗号通信を実現することができる。このようにアプリケーションレベルでの暗号通信を行う場合、使用するアプリケーションによって暗号方式を切り換えたり、暗号通信を行うか否かについても切り換えることが可能である。また、上述のように中継サーバ４は送られてきたデータをそのまま転送すればよく、暗号化や復号の処理を実装する必要がないというメリットもある。
【００６７】
もちろん、アプリケーションレベルの暗号化と中継プロトコルレベルの暗号化を併用することも可能である。この場合、中継サーバ４において中継プロトコルレベルでの復号処理を行っても、データがアプリケーションレベルでの暗号化が施されているため、中継サーバ４へのハッキングなどに対するセキュリティを向上させることができる。
【００６８】
上述の各例では、暗号通信を行う旨の指定をログイン時や接続要求時、あるいは予め行っておくものとして説明したが、これに限らず、ログイン後に通信前あるいは通信中であっても、いつでも指定あるいは変更することができるように構成することも可能である。
【００６９】
また、上述の各例においては、同じ中継サーバにログインしたネットワーク機器間で通信を行う場合について説明したが、これに限らず、例えば図１において中継サーバ４にログインしたネットワーク機器と中継サーバ５にログインしたネットワーク機器の間で通信を行うこともできる。この場合も、中継プロトコルレベルで暗号通信を行う場合には、中継サーバ４と中継サーバ５の間も暗号通信を行うことによって、ネットワーク機器間で暗号通信を実現することができる。もちろん、アプリケーションレベルでの暗号通信も可能である。
【００７０】
【発明の効果】
以上の説明から明らかなように、本発明によれば、ローカルシステム内のネットワーク機器から中継サーバへ予め接続して通信路を確保しておいて、この通信路を用いてデータの中継を行うので、インターネットからローカルシステム内のネットワーク機器へのデータ転送、あるいは異なるローカルシステム内のネットワーク機器間のデータ転送を実現することができる。それとともに、暗号通信を要求したネットワーク装置と中継サーバとの間だけでなく、暗号通信を相手先のネットワーク装置にも指示し、中継サーバと相手先のネットワーク装置との間についても暗号通信を行う。これによって、中継サーバで中継するシステムにおいても、ネットワーク装置間の暗号通信を実現することができるという効果がある。
【図面の簡単な説明】
【図１】本発明の中継サーバの実施の一形態を含む通信システムの一例を示す構成図である。
【図２】本発明の中継サーバを含む通信システムの実施の一形態における通信手順の一例を示すシーケンス図（一部）である。
【図３】本発明の中継サーバを含む通信システムの実施の一形態における通信手順の一例を示すシーケンス図（一部）である。
【図４】本発明の中継サーバを含む通信システムの実施の一形態における通信手順の別の例を示すシーケンス図（一部）である。
【図５】本発明の中継サーバを含む通信システムの実施の一形態においてアプリケーションレベルで暗号化を行う場合の説明図である。
【図６】一般的なインターネットを用いたシステムの一例を示す説明図である。
【符号の説明】
１，２…ローカルシステム、３…インターネット、４，５…中継サーバ、１１，１２，２１，２２…端末、１３，２３…ゲートウェイ、１４，２４…ＬＡＮ、４１…通信部、４２…制御部。
【図１】
0004380945.tif 000002
【図２】
0004380945.tif 000003
【図３】
0004380945.tif 000004
【図４】
0004380945.tif 000005
【図５】
0004380945.tif 000006
【図６】
0004380945.tif 000007