本発明の実施形態について、図面を参照して詳細に説明する。
(第1実施形態)
図1は、端末を登録するフェーズ(登録フェーズ)の通信システム1aの構成の例を示す図である。通信システム1aは、固定閉域網に直接接続されていない通信網から固定閉域網のVPNに、固定閉域網のVPNへの接続が許可されている端末が接続するシステムである。
通信システム1aは、固定閉域網2と、ネットワーク認証装置3と、拠点4−1〜4−2と、回線5−1〜5−2と、回線6と、クラウドサービス部7とを備える。通信システム1aは、クラウドサービス部7を介して、インターネット8に接続されている。通信システム1aは、インターネット8を介して、公衆無線網9に接続されている。したがって、公衆無線網9は、固定閉域網2には直接接続されていない。攻撃者端末10は、公衆無線網9に接続している。公衆無線網9は移動網でもよい。
固定閉域網2は、各拠点4を有する企業等によって敷設された光ファイバ等の固定回線を含む閉域網である。この閉域網は、固定回線以外の回線を含んでいてもよい。固定閉域網2と、各拠点4の拠点内通信網と、回線5−1〜5−2と、回線6とは、VPNを構成している。
ネットワーク認証装置3は、固定閉域網2のVPNに接続された回線を認証する装置である。ネットワーク認証装置3は、VPNに接続された回線の回線IDを予め記憶する。ネットワーク認証装置3は、拠点4の拠点内通信網の回線がVPNに新たに接続される場合、ネットワーク認証装置3に予め記憶されている回線IDと、新たな拠点4の拠点内通信網の回線に割り当てられた回線IDとを比較する。
ネットワーク認証装置3は、予め記憶されている回線IDと拠点内通信網の回線に割り当てられた回線IDとが一致する場合、その拠点内通信網を介して端末等がVPNに接続することを許可する。例えば、ネットワーク認証装置3は、記憶されている回線IDと回線5−1に割り当てられた回線IDとが一致する場合、回線5−1に接続された拠点内通信網を介して端末等がVPNに接続することを許可する。
拠点4は、企業等の拠点であって、例えば建物である。拠点4−1と拠点4−2とは、異なる都市に位置していてもよい。拠点4−1は、拠点内通信網40−1と、拠点装置41−1と、端末42−1とを備える。拠点4−1は、端末を更に備えてもよい。拠点4−2は、拠点内通信網40−2と、拠点装置41−2とを備える。拠点4−2は、1台以上の端末を備えてもよい。
拠点内通信網40−1は、拠点4−1における光ファイバ等の通信網である。拠点装置41−1は、例えばアプリケーションサーバ等である。拠点装置41−1は、拠点4−1において拠点装置41−1に割り当てられたIPアドレスを用いて、拠点内通信網40−1を介して固定閉域網2のVPNに接続する。拠点装置41−1は、例えば、拠点装置41−1に割り当てられたIPアドレス「10.1.0.10」を用いて、固定閉域網2のVPNに接続する。
端末42−1は、ノートパソコン、タブレット端末、スマートフォン端末等の通信端末である。端末42−1は、拠点4−1で使用されるだけでなく、企業の社員に持ち出されて拠点4−1以外の場所で使用されてもよい。
拠点4−1において、端末42−1は、端末42−1に割り当てられたIPアドレスを用いて、拠点内通信網40−1を介して固定閉域網2のVPNに接続する。拠点4−1において、端末42−1は、例えば、IPアドレス「10.1.0.1」を用いて、固定閉域網2のVPNに接続する。固定閉域網2のVPNに接続している状態で、端末42−1は、自端末によって生成された情報を、クラウドサービス部7に予め登録する。自端末によって生成された情報は、例えば、自端末の公開鍵である。
拠点内通信網40−2は、拠点4−2における光ファイバ等の通信網である。拠点装置41−2は、例えばファイルサーバ等である。拠点装置41−2は、拠点装置41−2に割り当てられたIPアドレスを用いて、拠点内通信網40−2を介して固定閉域網2のVPNに接続する。拠点装置41−2は、例えば、IPアドレス「10.2.0.10」を用いて、固定閉域網2のVPNに接続する。
回線5−1は、ネットワーク認証装置3に記憶されている回線IDが割り当てられた回線であり、固定閉域網2と拠点内通信網40−1とを接続する回線である。回線5−1を伝送されるパケットの送信元のIPアドレスは、例えば、「10.1.0.1」から「10.1.0.254」までである。
回線5−2は、ネットワーク認証装置3に記憶されている回線IDが割り当てられた回線であり、固定閉域網2と拠点内通信網40−2とを接続する回線である。回線5−2を伝送されるパケットの送信元のIPアドレスは、例えば、「10.2.0.1」から「10.2.0.254」までである。
回線6は、ネットワーク認証装置3に記憶されている回線IDが割り当てられた回線であり、固定閉域網2と通信装置70aとを接続する回線である。回線6を伝送されるパケットの送信元のIPアドレスは、例えば「10.3.0.1」から「10.3.0.254」までである。
クラウドサービス部7は、拠点4を有する企業等によってクラウド環境に備えられた1台以上の通信装置を含む装置群である。クラウドサービス部7は、公衆無線網9に端末42−1が接続された場合、固定閉域網2のVPNに端末42−1を安全に接続するというクラウドサービスを、端末42−1を拠点4から持ち出した社員に提供する。
図2は、通信装置70aの構成の例を示す図である。通信装置70aは、信号を中継する装置であり、例えば中継サーバである。通信装置70aは、中継通信部701aと、中継制御部702と、中継記憶部703とを備える。中継通信部701aと中継制御部702とは、CPU(Central Processing Unit)等のプロセッサが、記憶部に記憶されたプログラムを実行することにより実現される。各機能部のうち一部又は全部は、LSI(Large Scale Integration)やASIC(Application Specific Integrated Circuit)等のハードウェアを用いて実現されてもよい。
中継通信部701aは、回線6を介して固定閉域網2に接続されている。中継通信部701aは、登録フェーズよりも後で端末を認証するフェーズにおいて公衆無線網9に接続された端末42−1からのリモートアクセスを受け付けるために、インターネット8に接続されている。中継通信部701aには、インターネット8におけるIPアドレス(グローバルアドレス)「AAA.BBB.CCC.DDD」が割り当てられる。また、中継通信部701aが固定閉域網2のVPNに接続するために、中継通信部701aには、固定閉域網2におけるIPアドレス「10.3.0.99」が割り当てられる。
中継通信部701aがインターネット8及び公衆無線網9を介して端末と接続する場合、端末と中継通信部701aとの間で、L2TP(Layer2 Tunneling Protocol)に基づいてトンネリングを確立し、L2TPトンネルを生成する。L2TPトンネルによって中継通信部に接続された端末に割り当てられるIPアドレス(以下「L2TP割り当てアドレス」という。)は、L2TP割り当てアドレスであるか否かを区別できるように割り当てられる。例えば、L2TP割り当てアドレスは、クラウドサービス部7に割り当てられたIPアドレス「10.3.0.0/24」のうちで、中継通信部701aに割り当てられたIPアドレス「10.3.0.99」よりも大きい値のIPアドレスであり、例えば「10.3.0.101」から「10.3.0.254」までのIPアドレスである。
中継通信部701aがインターネット8及び公衆無線網9を介して攻撃者端末10と接続する場合、攻撃者端末10と中継通信部701aとの間で、L2TPに基づいてトンネリングを確立し、L2TPトンネルを生成する。中継通信部701aは、例えばL2TP割り当てアドレス「10.3.0.111」を、攻撃者端末10に割り当てる。
中継通信部701aは、公衆無線網9及びインターネット8を介して、攻撃者端末10から登録要求信号を受信する。攻撃者端末10から送信された登録要求信号は、例えば攻撃者端末10の公開鍵を含む。中継通信部701aは、拠点内通信網40−1と回線5−1と固定閉域網2と回線6とを介して、端末42−1から登録要求信号を受信する。端末42−1から送信された登録要求信号は、例えば端末42−1の公開鍵を含む。
中継制御部702は、登録要求信号の送信元である攻撃者端末10のIPアドレス「10.3.0.111」がVPNで利用されているIPアドレス帯に含まれているIPアドレスであるか又はL2TP割り当てアドレスであるかを判定する。送信元である攻撃者端末10のIPアドレスは、L2TP割り当てアドレス帯に含まれている。このため、中継制御部702は、攻撃者端末10の公開鍵を端末認証装置71に登録しないように動作する。
中継制御部702は、登録要求信号の送信元である端末42−1のIPアドレス「10.1.0.1」がVPNで利用されているIPアドレス帯に含まれているIPアドレスであるか又はL2TP割り当てアドレスであるかを判定する。送信元である端末42−1のIPアドレスは、VPNで利用されているIPアドレス帯に含まれている。このため、中継制御部702は、端末42−1の公開鍵を端末認証装置71に登録する。
中継記憶部703は、例えば、フラッシュメモリ、HDD(Hard Disk Drive)などの不揮発性の記録媒体(非一時的な記録媒体)である。中継記憶部703は、例えば、RAM(Random Access Memory)やレジスタなどの揮発性の記録媒体を有してもよい。中継記憶部703は、フィルタリングテーブル(エントリテーブル)等のデータテーブルと、プログラムとを記憶する。
図3は、端末認証装置71の構成の例を示す図である。端末認証装置71は、端末を認証する装置であり、例えば、FIDO(FastIDentity Online)サーバである。端末認証装置71は、パスワードへの依存度が低い認証であって、端末の秘密鍵の複製が困難である認証として、例えばFIDO認証を実行する。
端末認証装置71は、認証通信部710と、認証制御部711と、認証記憶部712とを備える。認証通信部710と認証制御部711とは、CPU等のプロセッサが、認証記憶部712に記憶されたプログラムを実行することにより実現される。各機能部のうち一部又は全部は、LSIやASIC等のハードウェアを用いて実現されてもよい。
認証通信部710は、中継通信部701aと通信する。認証通信部710は、例えば公開鍵を中継通信部701aから受信する。認証制御部711は、認証通信部710によって受信された公開鍵を、認証記憶部712に記録する。認証記憶部712は、端末42−1の公開鍵を記憶する。認証記憶部712は、複数の公開鍵を記憶してもよい。
図4は、端末42−1を認証するフェーズ(認証フェーズ)の通信システム1aの構成の例を示す図である。認証フェーズは、登録フェーズよりも後のフェーズである。認証フェーズでは登録フェーズとは異なり、端末42−1は、L2TPトンネルによって、公衆無線網9及びインターネット8を介して通信装置70aと通信する。なお、認証フェーズにおける攻撃者端末10は、登録フェーズにおける攻撃者端末10と同様に、L2TPトンネルによって、公衆無線網9及びインターネット8を介して通信装置70aと通信する。
認証フェーズにおける通信装置70aについて説明する。
中継通信部701aがインターネット8及び公衆無線網9を介して端末42−1と接続する場合、端末と中継通信部701aとの間で、L2TPに基づいてトンネリングを確立し、L2TPトンネルを生成する。中継通信部701aは、例えばL2TP割り当てアドレス「10.3.0.110」を、端末42−1に割り当てる。中継通信部701aは、例えばL2TP割り当てアドレス「10.3.0.111」を、攻撃者端末10に割り当てる。
中継通信部701aは、認証要求信号を端末42−1から受信する。中継通信部701aは、端末認証装置71によって生成されたチャレンジデータを、認証通信部710から受信する。チャレンジデータは、例えば乱数に基づいて生成される。チャレンジデータのデータ長は、予め定められてもよい。中継通信部701aは、生成されたチャレンジデータを受信した場合、認証要求信号を送信した端末42−1にチャレンジデータを送信する。中継通信部701aは、端末42−1の秘密鍵を用いて暗号化されたチャレンジデータを、端末42−1から受信する。すなわち、中継通信部701aは、電子署名が付与されたチャレンジデータを、端末42−1から受信する。中継通信部701aは、端末42−1によって電子署名が付与されたチャレンジデータを、認証通信部710に送信する。端末42−1の公開鍵が認証記憶部712に記憶されているので、中継通信部701aは、端末42−1の認証が成功したことを表す信号を、認証通信部710から受信する。
中継通信部701aは、認証要求信号を攻撃者端末10から受信する。中継通信部701aは、端末認証装置71によって生成されたチャレンジデータを認証通信部710から受信する。中継通信部701aは、生成されたチャレンジデータを受信した場合、認証要求信号を送信した攻撃者端末10にチャレンジデータを送信する。中継通信部701aは、電子署名が付与されたチャレンジデータを、攻撃者端末10から受信する。中継通信部701aは、攻撃者端末10の秘密鍵を用いて暗号化されたチャレンジデータを、攻撃者端末10から受信する。すなわち、中継通信部701aは、攻撃者端末10によって電子署名が付与されたチャレンジデータを、認証通信部710に送信する。攻撃者端末10の公開鍵が認証記憶部712に記憶されていないので、中継通信部701aは、攻撃者端末10の認証が失敗したことを表す信号を、認証通信部710から受信する。
中継制御部702は、中継通信部701aが認証要求信号を受信した場合、端末認証装置71に認証処理の開始を要求する。中継制御部702は、認証が成功したことを表す信号を中継制御部702が認証通信部710から受信した場合、認証要求信号を送信した端末42−1に割り当てられたIPアドレス「10.3.0.110」を、フィルタリングテーブルに登録する。IPアドレス「10.3.0.110」がフィルタリングテーブルに登録されているので、中継制御部702は、送信元のIPアドレスが「10.3.0.110」であるパケットを固定閉域網2のVPNに転送するように、中継通信部701aを制御する。これによって、端末42−1から送信されたパケット(信号)は、中継通信部701aによって固定閉域網2のVPNに転送される。
なお、中継制御部702は、端末42−1がVPNへの接続を終了した場合、端末42−1に割り当てられたIPアドレス「10.3.0.110」を、フィルタリングテーブルから削除してもよい。
中継制御部702は、認証が失敗したことを表す信号を中継制御部702が認証通信部710から受信した場合、認証要求信号を送信した攻撃者端末10に割り当てられたIPアドレス「10.3.0.111」を、フィルタリングテーブルに登録しないように動作する。IPアドレス「10.3.0.111」がフィルタリングテーブルに登録されていないので、中継制御部702は、送信元のIPアドレスが「10.3.0.111」であるパケットを固定閉域網2のVPNに転送しないように、中継通信部701aを制御する。これによって、攻撃者端末10から送信されたパケットは、中継通信部701aによって固定閉域網2のVPNに転送されない。
認証フェーズにおける端末認証装置71について説明する。
認証通信部710は、通信装置70aを介して、端末42−1及び攻撃者端末10と通信する。認証制御部711は、認証処理の開始を中継制御部702から要求された場合、認証要求信号の送信元である端末42−1に対して認証処理を開始する。同様に、認証制御部711は、認証要求信号の送信元である攻撃者端末10に対して認証処理を開始する。
認証制御部711は、端末認証装置71に公開鍵を登録している端末42−1によってチャレンジデータが暗号化されているか否かを、端末認証装置71に記憶されている端末42−1の公開鍵を用いて判定する。すなわち、認証制御部711は、チャレンジデータに付与された電子署名が端末認証装置71に公開鍵を登録している端末42−1によって生成された電子署名であるか否かを、端末認証装置71に記憶されている端末42−1の公開鍵を用いて判定する。
認証制御部711は、暗号化されたチャレンジデータが端末42−1の公開鍵によって正常に復号された場合、端末認証装置71に公開鍵を登録している端末42−1によってチャレンジデータが暗号化されていると判定する。すなわち、認証制御部711は、暗号化されたチャレンジデータが端末42−1の公開鍵によって正常に復号された場合、チャレンジデータに付与された電子署名が端末認証装置71に公開鍵を登録している端末42−1によって生成された電子署名であると判定する。
認証制御部711は、認証記憶部712に公開鍵が登録されている端末42−1の認証を成功と判定する。認証制御部711は、認証記憶部712に公開鍵が登録されていない攻撃者端末10の認証を失敗と判定する。
次に、通信システムの動作の例を説明する。
図5は、端末42−1を登録するフェーズの通信システム1aの動作の例を示すシーケンス図である。
図5において端末42−1の登録が成功する場合について説明する。
端末42−1は、拠点内通信網40−1に接続している。端末42−1は、拠点内通信網40−1と回線5−1と固定閉域網2と回線6とを介して、通信装置70aと通信する。端末42−1は、端末42−1に割り当てられたIPアドレス「10.1.0.1」と、端末42−1の公開鍵を含む登録要求信号とを、通信装置70aに送信する(ステップS101)。
通信装置70aは、拠点内通信網40−1と回線5−1と固定閉域網2と回線6とを介して、登録要求信号を端末42−1から受信する。通信装置70aは、登録要求信号の送信元のIPアドレス「10.1.0.1」がVPNで利用されているIPアドレス帯に含まれているIPアドレスであるか否かを判定する。送信元のIPアドレスがVPNで利用されているIPアドレス帯に含まれているので、通信装置70aは、端末42−1の公開鍵を端末認証装置71に送信する。端末認証装置71は、端末42−1の公開鍵を記憶する(ステップS102)。
図5において攻撃者端末10の登録が失敗する場合について説明する。
攻撃者端末10は、いずれの拠点内通信網40にも接続しておらず、公衆無線網9に接続している。攻撃者端末10は、L2TPトンネルによって、公衆無線網9とインターネット8とを介して、通信装置70aと通信する。攻撃者端末10は、攻撃者端末10に割り当てられたIPアドレスと、攻撃者端末10の公開鍵を含む登録要求信号とを、通信装置70aに送信する(ステップS201)。
通信装置70aは、L2TPトンネルによって、公衆無線網9とインターネット8とを介して、登録要求信号を攻撃者端末10から受信する。通信装置70aは、登録要求信号の送信元のIPアドレスがVPNで利用されているIPアドレス帯に含まれているIPアドレスであるか否かを判定する。攻撃者端末10に割り当てられたIPアドレスは、L2TPで利用されているIPアドレスであり、VPNで利用されているIPアドレス帯に含まれているIPアドレスではないので、通信装置70aは、登録要求信号の応答として、エラー信号を攻撃者端末10に送信する(ステップS202)。
図6は、端末42−1を認証するフェーズの通信システム1aの動作の例を示すシーケンス図である。
図6において端末42−1の認証が成功する場合について説明する。
端末42−1は、公衆無線網9に接続している。端末42−1は、公衆無線網9とインターネット8とを介して、通信装置70aとのL2TPによる通信を確立する(ステップS301)。
端末42−1は、端末42−1に割り当てられたIPアドレス「10.3.0.110」と認証要求信号とを、通信装置70aに送信する。端末42−1に割り当てられたIPアドレスは、L2TPで利用されているIPアドレスである(ステップS302)。
通信装置70aは、L2TPトンネルによって、公衆無線網9とインターネット8とを介して、認証要求信号を端末42−1から受信する。通信装置70aは、端末認証装置71に認証処理の開始を要求する。端末認証装置71は、チャレンジデータを生成する。端末認証装置71は、チャレンジデータを通信装置70aに送信する。通信装置70aは、チャレンジデータを端末42−1に送信する。端末42−1は、端末42−1の秘密鍵を用いてチャレンジデータを暗号化する。すなわち、端末42−1は、チャレンジデータに電子署名を付与する。端末42−1は、電子署名が付与されたチャレンジデータを通信装置70aに送信する。通信装置70aは、電子署名が付与されたチャレンジデータを端末認証装置71に送信する。端末認証装置71は、チャレンジデータに付与された電子署名が端末42−1による電子署名である否かを、端末42−1の公開鍵を用いて判定する。端末認証装置71は、チャレンジデータに付与された電子署名が端末42−1による電子署名であると判定された場合、端末42−1の認証が成功したことを表す信号を、通信装置70aに送信する。通信装置70aは、端末42−1の認証が成功したことを表す信号を受信した場合、認証が成功したことを表す信号を端末42−1に送信する(ステップS303)。
通信装置70aは、端末42−1の認証が成功したことを表す信号を受信した場合、認証要求信号を送信した端末42−1に割り当てられたIPアドレス「10.3.0.110」を、フィルタテーブルに登録する(ステップS304)。
端末42−1は、端末42−1の認証が成功したことを表す信号を受信した場合、所定のデータ信号と送信元のIPアドレス「10.3.0.110」とを、通信装置70aに送信する(ステップS305)。通信装置70aは、端末42−1に割り当てられたIPアドレスがフィルタテーブルに登録されているので、端末42−1から送信されたデータ信号を、回線6及び固定閉域網2を介して送信先のIPアドレスの装置に送信する(ステップS306)。例えば、送信先のIPアドレスが割り当てられた拠点装置41−1は、通信装置70aによって固定閉域網2に送信されたデータ信号を受信する。
図6において攻撃者端末10の認証が失敗する場合について説明する。
攻撃者端末10は、公衆無線網9に接続している。攻撃者端末10は、公衆無線網9とインターネット8とを介して、通信装置70aとのL2TPによる通信を確立する。攻撃者端末10は、攻撃者端末10に割り当てられたIPアドレス「10.3.0.111」と認証要求信号とを、通信装置70aに送信する。攻撃者端末10に割り当てられたIPアドレスは、L2TPで利用されているIPアドレスである(ステップS401)。
通信装置70aは、L2TPトンネルによって、公衆無線網9とインターネット8とを介して、認証要求信号を受信する。通信装置70aは、ステップS303と同様に、端末認証装置71に認証処理の開始を要求する。攻撃者端末10の公開鍵が端末認証装置71に記憶されていないので、攻撃者端末10によってチャレンジデータに付与された電子署名は端末42−1による電子署名ではないと判定される。すなわち、攻撃者端末10の認証は失敗する。通信装置70aは、攻撃者端末10の認証が失敗したことを表す信号を受信した場合、攻撃者端末10の認証が失敗したことを表す信号を攻撃者端末10に送信する(ステップS402)。このように、通信装置70bは、攻撃者端末10から送信されたデータ信号を、回線6及び固定閉域網2に送信しないように動作する。
以上のように、第1実施形態の通信装置70a及び端末認証装置71は、インターネット8に接続されたクラウド環境に備えられる。通信装置70aは、インターネット8に接続された中継通信部701aと、中継制御部702とを備える。端末認証装置71は、認証通信部710と、認証制御部711と、認証記憶部712とを備える。認証通信部710は、固定閉域網2以外の公衆無線網9に端末42−1が接続する前に固定閉域網2に接続した端末42−1に関する情報(公開鍵等)を取得する。認証制御部711は、端末42−1に関する情報を、認証記憶部712に記録する。中継通信部701aは、端末認証装置71に情報が記憶されているか否かを表す認証結果を、公衆無線網9に端末42−1が接続している場合に端末認証装置71から取得する。中継制御部702は、端末認証装置71に情報が記憶されていることを認証結果が表している場合、公衆無線網9に接続している端末42−1の信号を固定閉域網2に中継するよう中継通信部701aを制御する。
これによって、第1実施形態の通信装置70aは、固定閉域網2に直接接続されていない公衆無線網9から、固定閉域網2のVPNに安全に端末42を接続することが可能である。
このように、通信システム1aでは、端末42−1の認証の前に端末認証装置71に、端末42−1に関する情報を登録することが必要である。端末42−1に関する情報を端末認証装置71に登録することは、ネットワーク認証装置3によって認証済である回線5が接続された拠点4からのみ可能である。
拠点4の回線を固定閉域網2のVPNに新たな接続するためには、ネットワーク認証装置3による回線認証が成功することが必要である。攻撃者端末10が固定閉域網2以外の通信網から固定閉域網2のVPNに接続しようとしても、ネットワーク認証装置3による回線認証が失敗するので、攻撃者端末10は固定閉域網2のVPNに接続することができない。ネットワーク認証装置3によって認証済である回線5が接続された拠点4から、攻撃者端末10が固定閉域網2のVPNに接続しようとしても、攻撃者端末10を使用する攻撃者が拠点4に物理的に侵入することは困難であるため、攻撃者端末10が固定閉域網2のVPNに接続することは困難である。
通信装置70aは、VPNで利用されているIPアドレスを送信元のIPアドレスとする端末42−1に関する情報を、端末認証装置71に記録する。また、通信装置70aは、通信装置70aに記憶されているフィルタリングテーブルを用いて、端末42−1の信号を固定閉域網2のVPNに転送する。これにより、通信システム1aは、固定閉域網2のVPNに攻撃者端末10が接続できないようにすることができる。
(第2実施形態)
第2実施形態では、予め定められた拠点に通信装置及び端末認証装置が備えられている点が、第1実施形態と相違する。第2実施形態では、第1実施形態との相違点を説明する。
図7は、端末42−2を登録するフェーズ(登録フェーズ)の通信システム1bの構成の例を示す図である。通信システム1bは、固定閉域網に直接接続されていない通信網から固定閉域網のVPNに、固定閉域網のVPNへの接続が許可されている端末が接続するシステムである。
通信システム1bは、固定閉域網2と、ネットワーク認証装置3と、拠点4−1〜4−3と、回線5−1〜5−2と、回線6とを備える。通信システム1bは、拠点4−3を介して、インターネット8に接続されている。通信システム1bは、インターネット8を介して、公衆無線網9に接続されている。したがって、公衆無線網9は、固定閉域網2には直接接続されていない。攻撃者端末10は、公衆無線網9に接続している。公衆無線網9は移動網でもよい。
拠点4−1は、拠点内通信網40−1と、拠点装置41−1とを備える。拠点4−1は、1台以上の端末を備えてもよい。拠点4−2は、拠点内通信網40−2と、拠点装置41−2と、端末42−2とを備える。第2実施形態では、登録要求信号を送信する端末は、第1実施形態と同様に端末42−1でもよいが、一例として端末42−2である。
端末42−2は、ノートパソコン、タブレット端末、スマートフォン端末等の通信端末である。端末42−2は、拠点4−2で使用されるだけでなく、企業の社員に持ち出されて拠点4−2以外の場所で使用されてもよい。
拠点4−2において、端末42−2は、端末42−2に割り当てられたIPアドレスを用いて、拠点内通信網40−2を介して固定閉域網2のVPNに接続する。拠点4−2において、端末42−2は、例えば、IPアドレス「10.2.0.1」を用いて、固定閉域網2のVPNに接続する。固定閉域網2のVPNに接続している状態で、端末42−2は、自端末によって生成された情報を、端末認証装置71に予め登録する。
拠点11は、拠点4と同様に企業等の拠点であって、例えば建物である。拠点11は、認証フェーズにおいて公衆無線網9に接続された端末42−2からのリモートアクセスを受け付けるために、インターネット8に接続されている。拠点11は、拠点内通信網12と、通信装置70bと、端末認証装置71とを備える。
回線6は、ネットワーク認証装置3に記憶されている回線IDが割り当てられた回線であり、固定閉域網2と拠点内通信網12とを接続する回線である。回線6を伝送されるパケットの送信元のIPアドレスは、例えば「10.3.0.1」から「10.3.0.254」までである。
図8は、通信装置70bの構成の例を示す図である。通信装置70bは、中継通信部701bと、中継制御部702と、中継記憶部703とを備える。中継通信部701bと中継制御部702とは、CPU等のプロセッサが、中継記憶部703に記憶されたプログラムを実行することにより実現される。各機能部のうち一部又は全部は、LSIやASIC等のハードウェアを用いて実現されてもよい。
中継通信部701bは、回線6を介して固定閉域網2に接続されている。中継通信部701bは、登録フェーズ後の認証フェーズにおいて公衆無線網9に接続された端末42−2からのリモートアクセスを受け付けるために、インターネット8に接続されている。中継通信部701bには、インターネット8におけるIPアドレス(グローバルアドレス)「AAA.BBB.CCC.DDD」が割り当てられる。また、中継通信部701bが固定閉域網2のVPNに接続するために、中継通信部701bには、固定閉域網2におけるIPアドレス「10.3.0.99」が割り当てられる。
中継通信部701bがインターネット8及び公衆無線網9を介して端末と接続する場合、端末と中継通信部701bとの間で、L2TPに基づいてトンネリングを確立し、L2TPトンネルを生成する。L2TP割り当てアドレスは、L2TP割り当てアドレスであるか否かを区別できるように割り当てられる。例えば、L2TP割り当てアドレスは、拠点11に割り当てられたIPアドレス「10.3.0.0/24」のうちで、中継通信部701bに割り当てられたIPアドレス「10.3.0.99」よりも大きい値のIPアドレスであり、例えば「10.3.0.101」から「10.3.0.254」までのIPアドレスである。
中継通信部701bがインターネット8及び公衆無線網9を介して攻撃者端末10と接続する場合、攻撃者端末10と中継通信部701bとの間で、L2TPに基づいてトンネリングを確立し、L2TPトンネルを生成する。中継通信部701bは、例えばL2TP割り当てアドレス「10.3.0.111」を、攻撃者端末10に割り当てる。
中継通信部701bは、公衆無線網9及びインターネット8を介して、攻撃者端末10から登録要求信号を受信する。攻撃者端末10から送信された登録要求信号は、例えば攻撃者端末10の公開鍵を含む。中継通信部701bは、拠点内通信網40−2と回線5−2と固定閉域網2と回線6と拠点内通信網12とを介して、端末42−2から登録要求信号を受信する。端末42−2から送信された登録要求信号は、例えば端末42−2の公開鍵を含む。
図9は、端末42−2を認証するフェーズ(認証フェーズ)の通信システム1bの構成の例を示す図である。認証フェーズでは登録フェーズとは異なり、端末42−2は、L2TPトンネルによって、公衆無線網9及びインターネット8を介して通信装置70bと通信する。なお、認証フェーズにおける攻撃者端末10は、登録フェーズにおける攻撃者端末10と同様に、L2TPトンネルによって、公衆無線網9及びインターネット8を介して通信装置70bと通信する。
認証フェーズにおける中継通信部701bについて説明する。
中継通信部701bがインターネット8及び公衆無線網9を介して端末42−2と接続する場合、端末と中継通信部701bとの間で、L2TPに基づいてトンネリングを確立し、L2TPトンネルを生成する。中継通信部701bは、例えばL2TP割り当てアドレス「10.3.0.110」を、端末42−2に割り当てる。中継通信部701bは、例えばL2TP割り当てアドレス「10.3.0.111」を、攻撃者端末10に割り当てる。
中継通信部701bは、認証要求信号を端末42−2から受信する。中継通信部701bは、端末認証装置71によって生成されたチャレンジデータを、認証通信部710から受信する。中継通信部701bは、生成されたチャレンジデータを受信した場合、認証要求信号を送信した端末42−2にチャレンジデータを送信する。中継通信部701bは、端末42−2の秘密鍵を用いて暗号化されたチャレンジデータを、端末42−2から受信する。すなわち、中継通信部701bは、電子署名が付与されたチャレンジデータを、端末42−2から受信する。中継通信部701bは、端末42−2によって電子署名が付与されたチャレンジデータを、認証通信部710に送信する。端末42−2の公開鍵が認証記憶部712に記憶されているので、中継通信部701bは、端末42−2の認証が成功したことを表す信号を、認証通信部710から受信する。
中継通信部701bは、認証要求信号を攻撃者端末10から受信する。中継通信部701bは、端末認証装置71によって生成されたチャレンジデータを認証通信部710から受信する。中継通信部701bは、生成されたチャレンジデータを受信した場合、認証要求信号を送信した攻撃者端末10にチャレンジデータを送信する。中継通信部701bは、電子署名が付与されたチャレンジデータを、攻撃者端末10から受信する。中継通信部701bは、攻撃者端末10の秘密鍵を用いて暗号化されたチャレンジデータを、攻撃者端末10から受信する。すなわち、中継通信部701bは、攻撃者端末10によって電子署名が付与されたチャレンジデータを、認証通信部710に送信する。攻撃者端末10の公開鍵が認証記憶部712に記憶されていないので、中継通信部701bは、攻撃者端末10の認証が失敗したことを表す信号を、認証通信部710から受信する。
次に、通信システム1bの動作の例を説明する。
図10は、端末42−2を登録するフェーズの通信システム1bの動作の例を示すシーケンス図である。
図10において端末42−2の登録が成功する場合について説明する。
端末42−2は、拠点内通信網40−2に接続している。端末42−2は、拠点内通信網40−2と回線5−2と固定閉域網2と回線6とを介して、通信装置70bと通信する。端末42−2は、端末42−2に割り当てられたIPアドレス「10.2.0.1」と、端末42−2の公開鍵を含む登録要求信号とを、通信装置70bに送信する(ステップS501)。
通信装置70bは、拠点内通信網40−2と回線5−2と固定閉域網2と回線6とを介して、登録要求信号を端末42−2から受信する。通信装置70bは、登録要求信号の送信元のIPアドレス「10.2.0.1」がVPNで利用されているIPアドレス帯に含まれているIPアドレスであるか否かを判定する。送信元のIPアドレスがVPNで利用されているIPアドレス帯に含まれているので、通信装置70bは、端末42−2の公開鍵を端末認証装置71に送信する。端末認証装置71は、端末42−2の公開鍵を記憶する(ステップS502)。
図10において攻撃者端末10の登録が失敗する場合について説明する。
攻撃者端末10は、いずれの拠点内通信網40にも接続しておらず、公衆無線網9に接続している。攻撃者端末10は、L2TPトンネルによって公衆無線網9とインターネット8とを介して、通信装置70bと通信する。攻撃者端末10は、攻撃者端末10に割り当てられたIPアドレスと、攻撃者端末10の公開鍵を含む登録要求信号とを、通信装置70bに送信する(ステップS601)。
通信装置70bは、L2TPトンネルによって、公衆無線網9とインターネット8とを介して、登録要求信号を受信する。通信装置70bは、登録要求信号の送信元のIPアドレスがVPNで利用されているIPアドレス帯に含まれているIPアドレスであるか否かを判定する。攻撃者端末10に割り当てられたIPアドレスは、L2TPで利用されているIPアドレスであり、VPNで利用されているIPアドレス帯に含まれているIPアドレスではないので、通信装置70bは、エラー信号を応答として攻撃者端末10に送信する(ステップS602)。
図11は、端末42−2を認証するフェーズの通信システム1bの動作の例を示すシーケンス図である。
図11において端末42−2の認証が成功する場合について説明する。
端末42−2は、公衆無線網9に接続している。端末42−2は、公衆無線網9とインターネット8とを介して、通信装置70bとのL2TPによる通信を確立する(ステップS701)。
端末42−2は、端末42−2に割り当てられたIPアドレス「10.3.0.110」と認証要求信号とを、通信装置70bに送信する。端末42−2に割り当てられたIPアドレスは、L2TPで利用されているIPアドレスである(ステップS702)。
通信装置70bは、L2TPトンネルによって、公衆無線網9とインターネット8とを介して、認証要求信号を受信する。通信装置70bは、端末認証装置71に認証処理の開始を要求する。端末認証装置71は、チャレンジデータを生成する。端末認証装置71は、チャレンジデータを通信装置70bに送信する。通信装置70bは、チャレンジデータを端末42−2に送信する。端末42−2は、端末42−2の秘密鍵を用いてチャレンジデータを暗号化する。すなわち、端末42−2は、チャレンジデータに電子署名を付与する。端末42−2は、電子署名が付与されたチャレンジデータを通信装置70bに送信する。通信装置70bは、電子署名が付与されたチャレンジデータを端末認証装置71に送信する。端末認証装置71は、チャレンジデータに付与された電子署名が端末42−2による電子署名であるか否かを、端末42−2の公開鍵を用いて判定する。端末認証装置71は、チャレンジデータに付与された電子署名が端末42−2による電子署名であると判定された場合、端末42−2の認証が成功したことを表す信号を、通信装置70bに送信する。通信装置70bは、端末42−2の認証が成功したことを表す信号を受信した場合、端末42−2の認証が成功したことを表す信号を端末42−2に送信する(ステップS703)。
通信装置70bは、認証が成功したことを表す信号を受信した場合、認証要求信号を送信した端末42−2に割り当てられたIPアドレス「10.3.0.110」を、フィルタテーブルに登録する(ステップS704)。
端末42−2は、端末42−2の認証が成功したことを表す信号を受信した場合、所定のデータ信号と送信先のIPアドレスとを通信装置70bに送信する(ステップS705)。通信装置70bは、端末42−2に割り当てられたIPアドレスがフィルタテーブルに登録されているので、端末42−2から送信されたデータ信号を、回線6及び固定閉域網2を介して送信先のIPアドレスの装置に送信する(ステップS706)。例えば、送信先のIPアドレスが割り当てられた拠点装置41−2は、通信装置70bによって固定閉域網2に送信されたデータ信号を受信する。
図11において攻撃者端末10の認証が失敗する場合について説明する。
攻撃者端末10は、公衆無線網9に接続している。攻撃者端末10は、公衆無線網9とインターネット8とを介して、通信装置70bとのL2TPによる通信を確立する。攻撃者端末10は、攻撃者端末10に割り当てられたIPアドレス「10.3.0.111」と認証要求信号とを、通信装置70bに送信する。攻撃者端末10に割り当てられたIPアドレスは、L2TPで利用されているIPアドレスである(ステップS801)。
通信装置70bは、L2TPトンネルによって公衆無線網9とインターネット8とを介して、認証要求信号を受信する。通信装置70bは、ステップS703と同様に、端末認証装置71に認証処理の開始を要求する。攻撃者端末10の公開鍵が端末認証装置71に記憶されていないので、攻撃者端末10によってチャレンジデータに付与された電子署名は端末42−2による電子署名ではないと判定される。すなわち、攻撃者端末10の認証は失敗する。通信装置70bは、攻撃者端末10の認証が失敗したことを表す信号を受信した場合、攻撃者端末10の認証が失敗したことを表す信号を攻撃者端末10に送信する(ステップS802)。このように、通信装置70bは、攻撃者端末10から送信されたデータ信号を、回線6及び固定閉域網2に送信しないように動作する。
以上のように、第2実施形態の通信装置70b及び端末認証装置71は、拠点11に備えられる。通信装置70bは、インターネット8に接続された中継通信部701bと、中継制御部702とを備える。端末認証装置71は、固定閉域網2以外の公衆無線網9に端末42−2が接続する前に固定閉域網2に接続した端末42−2に関する情報(公開鍵等)を記憶する。中継通信部701bは、端末認証装置71に情報が記憶されているか否かを表す認証結果を、公衆無線網9に端末42−2が接続している場合に端末認証装置71から取得する。中継制御部702は、端末認証装置71に情報が記憶されていることを認証結果が表している場合、公衆無線網9に接続している端末42−2の信号を固定閉域網2に中継するよう中継通信部701bを制御する。
これによって、第2実施形態の通信装置70bは、固定閉域網2に直接接続されていない公衆無線網9から、固定閉域網2のVPNに安全に端末42を接続することが可能である。
上述した実施形態における通信装置の少なくとも一部をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、FPGA(Field Programmable Gate Array)等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。