JP2008109404A - 情報処理装置、通信方法およびプログラム - Google Patents
情報処理装置、通信方法およびプログラム Download PDFInfo
- Publication number
- JP2008109404A JP2008109404A JP2006290321A JP2006290321A JP2008109404A JP 2008109404 A JP2008109404 A JP 2008109404A JP 2006290321 A JP2006290321 A JP 2006290321A JP 2006290321 A JP2006290321 A JP 2006290321A JP 2008109404 A JP2008109404 A JP 2008109404A
- Authority
- JP
- Japan
- Prior art keywords
- rekey
- event
- communication
- information processing
- processing apparatus
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【課題】ネットワークを介してセキュリティを保護しながらデータ伝送を実行すること。
【解決手段】ネットワークに接続され、外部装置とセキュア通信を行う情報処理装置であって、情報処理装置は、イベントを検知する手段と、トリガ条件を保持する記憶手段と、イベントを検知し、イベントについて割当てたトリガ条件を判断して、イベントがトリガ条件の指定イベントである場合にセキュア通信のセキュリティ共有情報の更新処理を開始させるトリガ手段とを含む。
【選択図】 図5
【解決手段】ネットワークに接続され、外部装置とセキュア通信を行う情報処理装置であって、情報処理装置は、イベントを検知する手段と、トリガ条件を保持する記憶手段と、イベントを検知し、イベントについて割当てたトリガ条件を判断して、イベントがトリガ条件の指定イベントである場合にセキュア通信のセキュリティ共有情報の更新処理を開始させるトリガ手段とを含む。
【選択図】 図5
Description
本発明は、セキュリティ技術に関し、より詳細には、ネットワークを介してセキュリティを保護しながらデータ伝送を実行する情報処理装置、通信方法およびプログラムに関する。
VPN(Virtual Private Network)やIPv6(Internet Protocol Version 6)で使用されるセキュア通信規格であるIPsec(Security
Architecture for Internet Protocol)通信は、IP層レベルのアクセス制御や伝送データの完全性および機密性の確保やデータ送信元の認証などの機能を提供し、伝送経路におけるデータの改竄や盗聴やなりすましなどを、好適に防止することを可能とするセキュリティ基盤技術である。
Architecture for Internet Protocol)通信は、IP層レベルのアクセス制御や伝送データの完全性および機密性の確保やデータ送信元の認証などの機能を提供し、伝送経路におけるデータの改竄や盗聴やなりすましなどを、好適に防止することを可能とするセキュリティ基盤技術である。
IPsec通信に代表されるセキュア通信においては、データ伝送に先立ち、通信を開始しようとする情報処理装置(ノード)間で通信データの完全性や機密性を確保するための情報(暗号化や認証のプロトコルや秘密鍵)を共有し、その後、両方の情報処理装置はペア秘密鍵を使用して、セキュア通信を実行する。
しかしながら、暗号化や認証に用いるペア秘密鍵は、解読される蓋然性を有するため、秘密鍵には有効期限が設定され、期限を過ぎた秘密鍵を使用しないことが好ましく、例えばRFC4306(非特許文献1)では、IPsec通信プロトコルにおいて、一定の安全性を確保するために、情報処理装置間の論理的コネクションであるセキュリティ・アソシエーション(以降、SAとして参照する)に対してパケット量または時間の所定の閾値を決め、有効期限を設定するべき旨が定められている。しかしながら、SAに対してパケット量または時間による有効期限を設けるのみでは、ネットワーク環境や通信相手に応じて対応するというリキー処理の柔軟性や利便性の観点から、充分なものではなかった。
特開2005−210645号公報(特許文献1)は、IPアドレス変更による通信の断絶を回避する目的から、DHCP(Dynamic Host Configuration Protocol)によるIPアドレスの変更時に、IPsec暗号通信路の更新を通信相手に要求し、両通信者間で新アドレスによるIPsec暗号通信路を作成するとともに旧通信路を削除する通信方法を開示している。
また特開2005−347978号公報(特許文献2)は、ノードにおけるIPsec処理負荷を軽減する目的から、ノードにおけるIPsecSA上のトラヒックを監視し、規定時間トラヒックがなければIPsecSAを削除するサーバを開示している。しかしながら、上述した従来技術は、ネットワーク環境や通信相手に応じて対応するというリキー処理の柔軟性や利便性の観点から、充分なものではなかった。
特開2003−338850号公報(特許文献3)は、SA管理プロトコルに従い、SA管理因子として参照される所定の規則を適用し、SAが不必要であると判断した場合は、ノードに対し削除指令またはSAの再設定の実行指令を通知するサーバを開示している。しかしながら、この従来技術では、新たにSAを管理するためのサーバを導入する必要があり、設備コストが増大するという問題があった。また、リキー処理の即時性という観点からも充分なものではなかった。
特開2005−210645号公報
特開2005−347978号公報
特開2003−338850号公報
IETF RFC4306 InternetKey Exchange(IKEv2) Protocol December 2005
本発明は上記従来技術に鑑みてなされたものであり、セキュア通信の際に情報処理装置間で共有され、通信データの完全性や機密性を確保するための情報(セキュリティ共有情報)の更新処理を、柔軟に実行することを可能とし、通信におけるセキュリティを効果的に向上させることを可能とする情報処理装置、通信方法およびプログラムを提供することを目的とする。
本発明は、情報処理装置の内外で発生するイベントをトリガとして、通信データの完全性や機密性を確保するためのセキュリティ共有情報の更新処理を開始することにより、好適にセキュア通信におけるセキュリティの低下を防止することができるという着想に基づいてなされたものである。本発明では、イベントとしては、情報処理装置が検出する通信プロトコル(外部通信からの要求)やアプリケーション(アプリケーションからの要求)上のイベント、情報処理装置の内部発生イベント(デバイス管理やシステムからの要求)の検出、外部装置からの通信パケットの受信(外部通信からの要求)、または外部指令の受信(アプリケーションからの要求)などを挙げることができる。
すなわち、各種イベントを検知し、検知したイベントがトリガ条件の指定イベントである場合に、セキュア通信のセキュリティ共有情報の更新処理を開始させるという構成により、静的に設定されたセキュリティ共有情報の有効期限以前であっても、上述の通信プロトコル、アプリケーション、デバイス管理やシステム上のセキュリティに関係する重要なイベントの発生に対応させて、動的にセキュリティ共有情報の更新処理を行うことが可能となり、セキュリティの向上およびセキュリティ設定の柔軟性を向上させることが可能となる。
すなわち本発明によれば、ネットワークに接続され、外部装置とセキュア通信を行う情報処理装置であって、前記情報処理装置は、
イベントを検知する手段と、
トリガ条件を保持する記憶手段と、
前記イベントを検知し、前記イベントについて割当てた前記トリガ条件を判断し、前記イベントが前記トリガ条件の指定イベントである場合に前記セキュア通信のセキュリティ共有情報の更新処理を開始させるトリガ手段と
を含む情報処理装置が提供される。
イベントを検知する手段と、
トリガ条件を保持する記憶手段と、
前記イベントを検知し、前記イベントについて割当てた前記トリガ条件を判断し、前記イベントが前記トリガ条件の指定イベントである場合に前記セキュア通信のセキュリティ共有情報の更新処理を開始させるトリガ手段と
を含む情報処理装置が提供される。
前記イベントは、外部通信、アプリケーション、デバイス管理またはシステムからの要求により与えられるものとすることができる。前記情報処理装置は、さらに、前記外部装置を特定するための識別値に応じて、前記セキュリティ共有情報の前記更新処理の実行の可否を判断する手段を含むことができる。
また、前記情報処理装置は、外部通知相手機器へメッセージを通知するための通知情報を保持する通知先記憶手段と、前記更新処理が開始した後に、前記外部通知相手機器へ、前記メッセージを通知する手段を含むことができる。前記情報処理装置は、前記トリガ条件または前記通知情報、または前記トリガ条件および前記通知情報の両方を設定変更するためのインタフェース手段を備えることができる。前記セキュア通信は、IPsec通信であり、前記セキュリティ共有情報は、IPsecセキュリティ・アソシエーション情報とすることができる。
また本発明によれば、ネットワークに接続され、情報処理装置に対して外部装置とセキュア通信を実行させる通信方法であって、前記情報処理装置に対し、
イベントを検知するステップと、
前記イベントについて割当てた前記トリガ条件を判断し、前記イベントが前記トリガ条件の指定イベントである場合に前記セキュア通信のセキュリティ共有情報の更新処理を開始するステップと
を実行させる、通信方法が提供される。
イベントを検知するステップと、
前記イベントについて割当てた前記トリガ条件を判断し、前記イベントが前記トリガ条件の指定イベントである場合に前記セキュア通信のセキュリティ共有情報の更新処理を開始するステップと
を実行させる、通信方法が提供される。
前記イベントは、外部通信、アプリケーション、デバイス管理またはシステムからの要求により与えられるものとすることができる。前記通信方法は、前記情報処理装置に対し、前記外部装置を特定するための識別値に応じて、前記セキュリティ共有情報の前記更新処理の実行の可否を判断するステップをさらに実行させることができる。さらに、前記通信方法は、前記情報処理装置に対し、外部通知相手機器へメッセージを通知するステップを、前記更新処理を開始するステップの後に実行させることができる。
さらに本発明によれば、ネットワークに接続され、外部装置とセキュア通信を行うプログラムであって、前記プログラムは、情報処理装置に対し、
イベントを検知する機能手段と、前記イベントについて割当てた前記トリガ条件を判断し、前記イベントが前記トリガ条件の指定イベントである場合に前記セキュア通信のセキュリティ共有情報の更新処理を開始させる機能手段とを実現する、装置実行可能なプログラムが提供される。
イベントを検知する機能手段と、前記イベントについて割当てた前記トリガ条件を判断し、前記イベントが前記トリガ条件の指定イベントである場合に前記セキュア通信のセキュリティ共有情報の更新処理を開始させる機能手段とを実現する、装置実行可能なプログラムが提供される。
前記イベントは、外部通信、アプリケーション、デバイス管理またはシステムからの要求により与えられるものとすることができる。前記プログラムは、前記情報処理装置に対し、前記外部装置を特定するための識別値に応じて、前記セキュリティ共有情報の前記更新処理の実行の可否を判断する機能手段をさらに実現することができる。前記プログラムは、前記情報処理装置に対し、前記更新処理を開始させた後に、外部通知相手機器へメッセージを通知する機能手段をさらに実現することができる。
以下、本発明を図面に示した実施形態をもって説明するが、本発明は後述する実施形態に限定されるものではない。
図1は、情報処理装置が接続されるネットワーク環境の実施形態を示した概略図である。本実施形態において、情報処理装置10は、サーバ10aや複合機(複合機能を備えた画像形成装置)10bやパーソナル・コンピュータ(以下、PCとして参照)10cとして使用されている。サーバ10aや複合機10bやPC10cなどとして使用される情報処理装置10は、スイッチ14を介してルータ16に接続され、IPv4レベルプロトコルでは、いわゆるローカルエリアネットワークとして参照されるリンク18を構成している。リンク18には、例えばプリンタ12や、その他通信機器をさらに含むことができる。また、情報処理装置10は、他の実施形態ではセキュリティゲートウェイなどのネットワーク機器として使用することもできる。
ルータ16は、OSI参照モデルなどにおいて参照されるネットワーク層/トランスポート層レベルでのネットワーク制御を行っており、リンク18をワイドエリア・ネットワーク(WAN)またはインターネットといった別のネットワーク20に、TCP(Transmission Control Protocol)/IPまたはUDP(User Datagram Protocol)/IPなどの適切なネットワーク層/トランスポート層のプロトコルを使用して接続させている。
リンク18は、データリンク層のプロトコルを通じてアクセスリンクを形成することができるノード(近隣ノード:本実施形態では、情報処理装置10a〜10cとプリンタ12)から構成されている。より具体的には、IPv6では、リンク18は、リンクローカル全ノードマルチキャスト・アドレスに参加し、近隣検索の対象となる近隣ノードから構成されるドメインとすることができ、IPV4では、スイッチ14によりリンク層アドレス・レベルでのブロードキャストにアクセスできるドメインとすることができる。
ネットワーク20にはまた、PC22が接続され、PC22は、外部装置としてリンク18上の情報処理装置10とインターネット20を介して通信を行っている。なお、本実施形態では、サーバ10a、複合機10b、またはPC10cも、情報処理装置10に対する外部装置として機能し、相互に通信を行っている。なお、図1に示した実施形態では、ワイヤド・ネットワークとして参照したが、他の実施形態ではモバイルIP技術によるワイヤレス・ネットワークとしてもよい。
図2は、複数の機能を備えた画像形成装置としての、情報処理装置10のハードウェアおよびソフトウェア構成の実施形態を示した概略図である。画像形成装置10bは、タッチパネルといった操作パネルまたはディスプレイ装置および入力キーなどを備えたユーザ・インタフェース(I/F)30とを備えている。ユーザI/F30は、ユーザ指令に応答して、コピーやファクシミリやモノクロコピーやフルカラーコピーなど、画像形成装置としての機能をユーザに提供している。また、画像形成装置10bは、外部コンピュータからの入力に応答して、プリンタやファクシミリとしても機能する。
図2に示した画像形成装置10bは、複数の機能を提供するための各種アプリケーション32〜40からなるアプリケーション部42と、プラットフォーム部60とを含んで構成される。アプリケーション部42は、プリンタ、コピー、ファックスやスキャナなどの画像形成装置に関連するユーザ・サービスに固有の処理を行い、図2に示した実施形態では、コピー機能を提供するコピー・アプリケーション32と、ファクシミリ機能を提供するファックス・アプリケーション34と、スキャナ機能を提供するスキャナ・アプリケーション36と、ネットワークファイル機能を提供するネットファイル・アプリケーション38と、プリンタ機能を提供するプリンタ・アプリケーション40とを含み構成される。なお、アプリケーション部42に含まれる各種アプリケーションは、種々の組み合わせにより構成することができ、特に限定されるものではない。
プラットフォーム部60は、カーネル/OS64とともにアプリケーション部42からの処理要求を解釈して、ハードウェア等の各種リソースの獲得要求を発生する各種制御部44〜58を含み構成される。IPおよびIPsec通信の基本構成は、図2に示した実施形態では、カーネル/OS64により提供される。OSとしては例えば、UNIX(登録商標)を採用することができるが、その他いかなるOSを採用することができる。各種制御部としては、図2に示した実施形態では、ドキュメント制御部44と、オペレーション制御部(OCS:Operation panel Control Service)46と、メモリ制御部48と、システム制御部(SCS:System
Control Service)50と、セキュリティ制御部52と、ネットワーク制御部(NCS:Network Control Service)54と、ファックス制御部56と、エンジン制御部58とを含んで構成される。
Control Service)50と、セキュリティ制御部52と、ネットワーク制御部(NCS:Network Control Service)54と、ファックス制御部56と、エンジン制御部58とを含んで構成される。
システム制御部50は、各種アプリケーションの管理、システム画面表示やLED表示などのユーザ・インタフェースの制御、ハードウェア・リソースの管理、割込みアプリケーションの制御などを実行する。メモリ制御部48は、画像メモリの取得および解放、画像データの圧縮・伸張等のメモリ制御などを実行する。エンジン制御部58は、図示しないプロッタやHDD68などのハードウェア・リソースを制御し、画像読み込みや印刷動作などを実行する。ファックス制御部56は、GSTNインタフェース(I/F)76と接続し、GSTN網を使用したファクシミリ送受信、バックアップメモリで管理されている各種ファクシミリ・データの登録/引用、ファクシミリ読み取りなどを実行する。
オペレーション制御部46は、オペレータと本体制御との間のインタフェースとなるユーザ・インタフェース30の制御を実行する。ドキュメント制御部44は、他の機器との通信のためのデータの管理や加工などを実行する。セキュリティ制御部52は、セキュア・デバイス66など外部メディア等に格納されているセキュリティ・モジュールやカーネル/OS64内のセキュリティ情報にアクセスし、アプリケーション部42や各制御部に対してセキュリティ・サービスを提供する。なお、上述したプラットフォーム部60に含まれる各種制御部の構成も任意であり、アプリケーション部42に応じた構成とすることができる。
ネットワーク制御部(NCS)54は、イーサネット(登録商標)などのネットワーク・インタフェース(I/F)72と接続され、ネットワークI/Oを必要とするアプリケーションに対して共通に利用可能なサービスを提供し、ネットワーク78側から各プロトコルによって受信したデータを各アプリケーションに振り分け、各アプリケーションからのデータをネットワーク78側に送信する際の仲介を行う。具体的には、ftpd、httpd、lpd、snmpd、telnetd、smtpdなどのサーバ・デーモンや、同プロトコルのクライアント機能などを含むことができる。
ネットワークI/F72を構成するネットワーク・デバイス(図示せず)には、固有のリンク層アドレス(例えば、MACアドレス:Media Access Control)が付されていて、データリンク層のプロトコルを通じて、リンク18内の近隣ノードとアクセスリンク通信を行うことができる。この他、図2に示した画像形成装置10bは、DHCPサーバ(Dynamic
Host Configuration Protocol Server)などによりIPアドレスが割当てられ、TCP/IPまたはUDP/IPなどのトランスポート層プロトコルを使用したトランザクション制御が可能とされている。なお、割当てられるIPアドレスは、IPv6の場合には、DHCPv6プロトコルによるステートフル・アドレスとしても、IPv6のプラグ・アンド・プレイ機能によるステートレス・アドレスとしても、管理ユーザによって設定された固定アドレスとしてもよく、特に限定されるものではない。
Host Configuration Protocol Server)などによりIPアドレスが割当てられ、TCP/IPまたはUDP/IPなどのトランスポート層プロトコルを使用したトランザクション制御が可能とされている。なお、割当てられるIPアドレスは、IPv6の場合には、DHCPv6プロトコルによるステートフル・アドレスとしても、IPv6のプラグ・アンド・プレイ機能によるステートレス・アドレスとしても、管理ユーザによって設定された固定アドレスとしてもよく、特に限定されるものではない。
また、プラットフォーム部60とアプリケーション部42との間には、アプリケーション・プログラム・インタフェース(API)62が設けられていて、プラットフォーム部60は、APIに含まれる予め定義された関数によりアプリケーション部42の各アプリケーションからの処理要求を受信している。
また、図2に示した画像形成装置10bは、NVRAM70と、その他外部デバイスと接続するための外部デバイス・インタフェース(I/F)74とを備え、画像処理装置の入出力を可能としている。NVRAM70には、各種IPsec設定情報や各種リキー処理制御設定情報を格納することができる。なお、本願では、IPsec通信における、通信ノード間で共有されるセキュリティ共有情報(セキュリティ・アソシエーション情報)の更新処理をリキー処理として参照する。
画像形成装置10bは、各種演算を行う図示しないCPUと、各種制御プログラムを記憶する図示しないROMと、CPUの作業メモリ領域を提供する図示しないRAMとを含み構成され、上記機能手段は、ROMやHDD68や外部デバイス(SDメモリカード)などの外部記憶装置に格納されたプログラム(図示せず)をRAMのメモリ領域にロードすることにより実現される。また、図2に示した実施形態では、各アプリケーションやコントロール・サービスにおける共通部分を抽出して、画像形成装置をプラットフォーム化した構成として参照したが、情報処理装置10のハードウェアおよびソフトフェアの基本構成は、特に限定されるものではない。
図3は、IPsec通信に関する制御を実行するコントローラの機能構成の実施形態を示した概略図である。コントローラ80は、カーネル/OS64と、ネットワーク制御部54と、記憶部82とを含み構成される。図3に示した実施形態では、カーネル/OS64は、例えばネットワークI/F72を介してネットワーク78と接続し、IPsec通信のパケット処理などの基本処理を実行している。記憶部82は、図2に示した実施形態を参照すれば、HDD68とNVRAM70とから提供される記憶領域からなり、IPsec通信およびIPsec通信に先立つ各SA(セキュリティ・アソシエーション)確立の際の各種IPsec設定情報(図3に示した実施形態における「IPsec.conf」および「ikedパラメータ」)と、各SAのリキー処理を制御するための各種リキー処理制御設定情報とを格納している。なお、リキー処理制御設定情報の詳細については後述する。
ネットワーク制御部54は、iked90を含み構成され、iked90は、RFC2409やRFC4306に準拠するセキュリティ・アソシエーション管理プロトコルによって、ネットワーク接続された外部装置との鍵交換やSA確立の仲介を行う機能モジュールである。またiked90は、記憶部82に格納される各種IPsec設定情報を使用して、カーネル/OS64に対して、セキュリティ・ポリシーの設定と、IPsec通信におけるIKE_SAおよびCHILD_SAのセキュリティ共有情報の設定および削除依頼とを行っている。
ネットワーク制御部54は、図3に示した実施形態ではさらに、ユーザ・インタフェースを提供するデーモンであるtelnetd84と、httpd86と、snmpd88とを含み構成され、ネットワーク78を介して情報処理装置10にリモート・アクセスする外部装置は、これらのデーモンを介して記憶部82の各種IPsec設定情報やリキー処理制御設定情報にアクセスし、IPsec通信の設定および管理を実施することが可能とされている。
コントローラ80は、さらにシステム制御部50と、オペレーション制御部46とを含み構成され、操作パネルなどのユーザ・インタフェース30を用いたオペレータからの指示に応じて、記憶部82の各種IPsec設定情報やリキー処理制御設定情報にアクセスして、IPsec通信の設定および管理を実行することを可能としている。
図4は、情報処理装置10のカーネル/OS64におけるIPsec通信の基本処理フローの実施形態を示すフローチャート図である。図4に示した実施形態における基本処理フローは、ステップS100で、情報処理装置10の起動などによって処理が開始され、ステップS101で、iked90からの要求に応じてIPsecセキュリティ・ポリシーなどの設定を行い、IPsec通信の初期化を実行する。初期化が完了した後、ステップS102で、外部装置からのIPsec通信開始要求の受信を待受けし、ステップS103の判断で、外部装置からのIPsec通信開始要求を受信するまで(no)、ステップS102へループさせている。
外部装置からのIPsec通信開始要求を受信した場合(ステップS103の判断でyes)には、ステップS104へ分岐させ、IPsec通信開始要求の送信元に対応するSA(IKE_SAおよびCHILD_SA)の有無を確認し、対応したSAを有する場合(ステップS105の判断でyes)には、ステップS107へ分岐させ、IPsec通信を実行し、再びステップS102へループさせ、他のIPsec通信開始要求を待受けする。なお、送信元に対応するSAの確認には、IPv6では、IPsecパケットの拡張ヘッダ(AHヘッダやESPヘッダ)、IPv4では、IPヘッダの後ろで次レイヤヘッダの前に挿入される拡張ヘッダ部分(AHヘッダやESPヘッダ)に格納されている各種SPI(セキュリティ・パラメータ・インデックス)などを用いて識別することができ、セキュリティ・アソシエーション・データベース(SAD)から当該SPIに対応するSAが特定することが可能である。
一方、ステップS105の判断で、対応するSAが存在しないと判断された場合(no)には、ステップS106へ分岐させ、iked90にSA生成要求を送信してSAが確立させる。なお、ステップS106でSA生成要求を受信したiked90は、SA管理プロトコル(IKEv1やIKEv2)によるフェーズ1およびフェーズ2の処理を実行し、外部装置とのSA(セキュリティ・アソシエーション)の折衝および確立を行う。フェーズ2の処理によりCHILD_SAが正常に確立した後、カーネル/OS64は、ステップS107で、生成したCHILD_SAを使用してIPsec通信を実行する。
図5は、情報処理装置10のiked90による、リキー処理フローの実施形態を示すフローチャート図である。図4に示したカーネル/OS64における処理フローにおいて、ステップS107でIPsec通信が開始された後、iked90は、通信のセキュリティを確保するためにリキー処理を実行する。本施形態では、リキー処理は、SA管理プロトコルで規定される有効期限(ライフタイム)などに基づく静的なリキー処理のみならず、有効期限内であっても、情報処理装置10の内部イベント発生の検出、またはネットワーク78からの外部イベント発生の通知を受信し、これらのイベントをトリガとしてリキー処理を実行する。この構成により、ネットワーク通信状態に応じて柔軟にリキー処理を実行することが可能となり、好適に通信のセキュリティを向上させることを可能としている。
リキー処理の開始を制御するためのリキー条件としては、[1]情報処理装置10による通信プロトコル上(外部通信からの要求)のイベント発生の検出、[2]情報処理装置10によるアプリケーション上(アプリケーションからの要求)のイベント発生の検出、[3]情報処理装置10の内部(デバイス管理やシステムからの要求)イベント発生の検出、[4]ネットワーク78からの外部イベント発生の通知を受信、つまり、情報処理装置10による受信イベント発生(外部通信からの要求)の検出、[5]外部指令(ユーザ・インタフェース30やリモート・アクセスによるオペレータからの指示)によるリキー要求を受信(アプリケーションからの要求)、[6]SAのライフタイム(有効期限)による無効化(ハード有効期限)または失効間近にある状態(ソフト有効期限)を検知して、[7]通信相手からのリキー要求を受信(外部通信からの要求)を挙げることができる。なお、リキー処理の開始を制御するためのリキー条件リストについては後述する。
IPsec通信のSA(セキュリティ・アソシエーション)は、フェーズ1で確立されるIKE_SAと、IKE_SAを使用してフェーズ2で確立されるCHILD_SAとを含むが、本実施形態では、リキー処理の対象となるSAは、任意であり、リキー処理によってIKE_SAおよびCHILD_SAの少なくとも一方のSAのリキー処理を実行する。フェーズ1から(IKE_SA)リキー処理を実施するか、フェーズ2からリキー処理を実施するかについては、リキー処理の要因となったイベントに応じて設定することができる。
図5に示した実施形態では、ステップS201で、リキー条件に合致するイベントを検知し、リキー処理が開始される。リキー処理を開始したiked90は、ステップS202で、リキー処理の対象となる通信相手に対してリキー処理を適用して良いか否かの判断をネットワーク制御部54問い合わせ、ステップS203で返答を受けて、リキー処理の適用が不可と判断された場合は(no)、ステップS206へ分岐させ処理を終了させる。
一方、ステップS203の判断で、リキー処理の適用が可と判断された場合には(yes)、ステップS204へ分岐させ、リキー処理を開始し、カーネル/OS64に当該SAの削除要求を発行し、ステップS205で、ライフタイム以外の要因によりSAのリキー処理を実施した旨を、ネットワーク上に接続された他の外部機器へ通知する。SAを削除した後は、外部装置からの再接続要求を受信して、SAの再確立を実施し、IPsec通信を再開させる。
なお、ステップS204のSA更新処理において、SAを削除後、外部装置からの再接続要求を受信してSAを再確立させる処理フローとして参照したが、他の実施形態では、まず別途SAを確立させた後に、従前のSAを削除する処理フローとすることもでき、情報処理装置10側から再接続を開始する処理フローとすることもきる。上述した別の実施形態では、IPsec通信を継続させながら、更新処理を実行することが可能となる。また、カーネル/OS64においてSAの削除を実行する直前に、削除ペイロードを含むIKEプロトコルのINFORMATIONAL・タイプのメッセージなどを使用して、可能であれば外部装置側へSAを削除する旨を通知し、情報処理装置10と外部装置との間のSAの不整合の発生を好適に予防することもできる。
図5に示した実施形態では、ステップS202の処理およびステップS203の判断を含むものとして説明したが、ステップS202およびS203の処理・判断の実施は任意であり、他の実施形態では、該処理・判断を行わず、直接ステップS204の処理を実行する処理フローとしてもかまわない。ステップS202およびS203における、リキー処理適用の可否の判断は、記憶部82に格納されるリキー拒否条件リスト(リキー処理制御設定情報)をルックアップして実行され、リキー拒否条件リストは、例えば、認証エラーやアタックなどのエラー要因を発生した外部装置を特定するための情報を保持している。この構成により、悪質な外部装置からのリキー要求によるパフォーマンスの低下を好適に防止することを可能としている。ステップS203およびステップS203の処理・判断に使用するリキー拒否条件リストについては後述する。
また、図5に示した実施形態では、ステップS205の処理を含むものとして説明したが、ステップS205の処理の実施は任意であり、他の実施形態では、該処理を行わず、リキー処理を完了させる処理フローとしてもかまわない。ステップS205における、リキー処理を実施した旨を外部機器へ通知する処理は、記憶部82に格納されるリキー外部通知管理リスト(リキー処理制御設定情報)をルックアップして実行され、リキー外部通知管理リストは、例えば、リキー処理実施報告の連絡先を特定するための情報(eメールアドレスやSNMPマネージャのアドレスやFAX番号)を保持している。
この構成により、SAのライフタイム(有効期限)要因以外の要因でリキー処理が発生したことを外部機器へ周知することが可能となる。悪質な第三者は、同一ネットワーク上の他の機器に対して同様の攻撃を行う可能性が高く、ライフタイム(有効期限)要因以外のリキー処理を実施した旨を周知することにより、他の機器側で対応を実施することが可能となり、セキュリティを向上させることができる。また、ステップS205の処理を実行する外部装置からのリキー処理を実施の旨の通知を受けて、情報処理装置10側でリキー処理を開始する処理とすることもできる。
図6は、リキー処理を開始させるために使用される、リキー条件リストのデータ構造の実施形態を示す。リキー条件リストは、図5に示したリキー処理フローにおけるステップS201の処理の際にルックアップされる。図6(a)は、通信プロトコルやアプリケーション上のイベントを検出してリキー処理を開始させるためのリキー条件リストA100を示す。なお、図6に示した実施形態では、リキーを実行するイベントのみを登録するデータ構造として示されている。しかしながら、別の実施形態では、情報処理装置10で発生する可能性のあるイベントを予めエントリしたリキー条件リストを構成しておき、ユーザ指令に応じてフラグ設定するなどのユーザ指定によりリキー条件リストを柔軟に設定する構成を採用することもできる。上述した別の実施形態では、リキー条件がまったく異なるものとならない限り、リキー条件リストのデータ構成を大幅に変更することなく、柔軟にリキー設定を行うことが可能となる。
図6(a)に示された実施形態では、リキー条件リストA100は、項目フィールド100aと、フィールド100bと、フィールド100cと、フィールド100dとを含み構成される。フィールド100bは、リキー処理を開始するためのトリガ条件として適用されるプロトコルが登録される。フィールド100cは、フィールド100bに登録されたプロトコルにおける認証エラーを、リキー処理開始のイベントとするかの可否が登録される。フィールド100dは、任意項目が登録され、任意項目には、フィールド100bにエントリされたプロトコル上の、リキー処理開始条件として設定されるイベント(エラーなど)が登録される。
例えば、図6(a)に示した実施形態では、項目フィールド100a[2]のエントリでは、プロトコル・フィールド100bに[snmp]、認証エラー・フィールド100cに[非対象]、任意項目に[TRAP受信]がエントリされており、SNMPマネージャとして機能している情報処理装置10が、他の外部機器のSNMPエージェントからのTRAPコマンド(例えば回線切断などの報告)を受信したことを検知して、リキー処理を実行することを表している。
また、項目フィールド100a[5]のエントリでは、プロトコル・フィールド100bに[ftp]、認証エラー・フィールド100cに[対象]がエントリされ、情報処理装置10がFTP(File Transfer Protocol)サーバとして機能している場合に、ftp接続におけるユーザ認証エラーの発生を検出して、リキー処理を実行することを表している。認証エラーなどを検出してリキー処理を実行することにより、悪意の第三者が情報処理装置10にアクセスを試みることによるセキュリティの低下を、好適に防止することが可能となる。
リキー条件リストA100に、リキー条件としてエントリすることができるプロトコルとしては、アプリケーション層やネットワーク層やデータリンク層など各レイヤの通信プロトコルを挙げることができるが、特に限定されるものではなく、例えば、アプリケーション部42における各種アプリケーションの独自プロトコルなどにも適用することができる。
リキー条件リストA100のエントリ項目とされるリキー条件としては、例えば、DHCPにおいて情報処理装置10のアドレス変更、ARP(Address Resolution Protocol)における外部装置からの重複アドレス検知パケットの受信(IPv4)、ICMP(Internet
Control Message Protocol)における外部装置からの重複アドレス検知パケットの受信(IPv6)、LPR(Line PRinter
daemon protocol)における認証エラーや通信エラー、SNMPv3でのユーザ認証エラーやパケット認証エラーなどを挙げることができる。
Control Message Protocol)における外部装置からの重複アドレス検知パケットの受信(IPv6)、LPR(Line PRinter
daemon protocol)における認証エラーや通信エラー、SNMPv3でのユーザ認証エラーやパケット認証エラーなどを挙げることができる。
その他、SNTP(Simple
Network Time Protocol)やNTPでの問い合わせにおいて時刻変更をする必要性が生じた場合や、SMTP(Simple Mail
Transfer Protocol)における認証エラーや送信エラー、国際標準ITU-T T.38勧告に準拠したIPFax通信における通信エラー、画像形成装置として使用する場合では、イメージ配信などの画像形成装置のサービスを提供するアプリケーションにおける通信エラー、操作パネルやリモート・アクセスによるオペレータからのリキー指示(外部指令)などを挙げることもでき、特に限定されるものではない。また、フィールド100dを任意項目とすることにより、種々のプロトコルやアプリケーションに対応させることを可能とし、リキー条件の設定の柔軟性を向上させている。
Network Time Protocol)やNTPでの問い合わせにおいて時刻変更をする必要性が生じた場合や、SMTP(Simple Mail
Transfer Protocol)における認証エラーや送信エラー、国際標準ITU-T T.38勧告に準拠したIPFax通信における通信エラー、画像形成装置として使用する場合では、イメージ配信などの画像形成装置のサービスを提供するアプリケーションにおける通信エラー、操作パネルやリモート・アクセスによるオペレータからのリキー指示(外部指令)などを挙げることもでき、特に限定されるものではない。また、フィールド100dを任意項目とすることにより、種々のプロトコルやアプリケーションに対応させることを可能とし、リキー条件の設定の柔軟性を向上させている。
なお上述までのリキー処理は、プロトコルおよびアプリケーション上のイベントを検知した各デーモンや各アプリケーションからのリキー処理要求やイベント通知などを受けて、iked90により開始される。トリガ手段としての、リキー処理のトリガ条件に合致するか否かの判断は、各デーモンや各アプリケーションが行っても、リキー処理要求やイベント通知を受けたiked90が行う制御としてもよい。他の実施形態では、通信データパケットを解析することにより、各通信やアプリケーション上のイベントを検知しトリガ条件に合致するか否かの判断を実行する制御とすることもできる。この場合は、既存のアプリケーションに特別な改変を伴わせずに実装することが可能となる。
図6(b)は、カーネル/OS64における内部イベント(デバイス管理およびシステムからの要求)を検出してリキー処理を開始させるための、リキー条件リストB102を示す。図6(b)に示された実施形態では、リキー条件リストB102は、項目フィールド102aと、フィールド102bと、フィールド102cとを含み構成される。フィールド102bおよびフィールド102cには、リキー処理のトリガ条件として適用されるカーネル64上のイベントが登録される。フィールド102bは、イベントの種類がエントリされ、フィールド102cには、イベントの内容がエントリされる。
例えば、図6(b)に示した実施形態では、項目フィールド102a[1]のエントリでは、種類フィールド102bに[Ethernet(登録商標)]、内容フィールド100cに[Link UP/DOWN]がエントリされており、NIC(ネットワーク・インタフェース・カード)における、リンクアップおよびインクダウンを検出して、リキー処理を実行することを表している。
リキー条件として適用されるカーネル/OS64上の内部イベントとしては、SDメモリカードの抜き差しの検出や、情報処理装置10の電源オンの検出などを挙げることができ、デバイス管理を実行するカーネル/OS64は、外部デバイスI/F74やGSTNI/F76、セキュア・デバイス66、ネットワークI/F72などの入出力インタフェースを監視し、デバイス上のイベントを検出しiked90に通知する。iked90は、カーネル/OS64からのイベント通知を受信して、リキー処理を開始させる。
なお、リキー条件リストB102にエントリされたイベント通知がカーネル/OS64に登録され、カーネル/OS64は、リキー条件リストB102に応じた内部イベントの発生を検出して、iked90にイベント通知し、イベント通知を受信したiked90は、リキー処理を開始させる制御とすることができる。上述した実施形態では、カーネル64がトリガ手段として、発生したイベントがリキー条件に合致するか否かの判断を行っている。他の実施形態では、iked90が、カーネル/OS64にポーリングしてイベントを検出し、イベント条件に合致するか否かの判断を行う制御としてもかまわない。
また、上述のリキー条件リストA100およびリキー条件リストB102の適用は、任意であり、システム設計上の要求に応じて柔軟に設定することができる。また、上述のリキー条件リストA100およびリキー条件リストB102の各エントリに対して、有効/無効のフラグを設定することにより、さらに柔軟な設定が可能となる。なお、リキー条件の設定方法については後述する。
図7は、オペレータがリキー処理実行を指示するためのユーザ・インタフェースの実施形態を示す。なお、図7は、情報処理装置10が、画像形成装置として使用される場合の実施形態を示している。ユーザ・インタフェース30の操作パネル(タッチパネルなど)には、UI画面200が示される。UI画面200には、「IPsec SAの更新を実行する。」といった、該UI画面の処理内容が提示されている。またUI画面200には、UI部品200a〜200cが配置され、オペレータからの指示を待受けている。
例えば、ユーザ・インタフェース30の操作パネルなどによって、UI部品200c「更新実行」を選択および押下すると、オペレーション制御部46を介してiked90に外部指令としてイベント通知がなされる。また、例えば、UI部品200a「選択」を選択・押下して実施タイミングを選択し、さらにUI部品200b「設定」を選択・押下し、設定された時間「xx分後」経過後に、iked90へリキー処理を開始させるイベントを通知させることもできる。
図8は、リキー条件リスト100およびリキー条件リスト102によるリキー処理を実行する通信方法の実施形態における基本処理のシーケンス図を示す。図8の制御は、ステップS300から開始され、情報処理装置10のカーネル64は、外部装置92から送信される各アプリケーションへのIPsec通信による接続要求を受信する。接続要求を受信したカーネル64は、SAD(セキュリティ・アソシエーション・データベース)に、対応するSAが存在するか否かの確認を行い、対応するSAが存在し無ければ、ステップS301で、iked90へSA生成要求を発行する。
SA生成要求を受信したiked90は、ステップS302で、外部装置92とのSA管理プロトコルによってIKE_SAを確立させ(フェーズ1)、ステップS303でIKE_SAの設定要求をカーネル64へ発行する。続いてiked90は、ステップS304で、CHILD_SAを確立させる処理(フェーズ2)を実行し、ステップS305で、カーネル64にCHILD_SA設定要求を発行し、カーネル64はSADに当該SAを登録する。SAが登録によりIPsec通信リンクが確立し、外部装置92は、ステップS306でアプリケーション部42の各アプリケーションとIPsec通信を実行する。
カーネル64またはアプリケーション部42において、上述したリキー条件に合致するイベントが発生した場合やiked90が管理しているライフタイムによるリキー要求が発生した場合には、ステップS307でリキー処理のトリガ・イベントの発生を検知したiked90は、ステップS308で、カーネル64にCHILD_SA削除要求を発行し、カーネル64は、ステップS309でCHILD_SAを削除する。
その後、ステップS310で、外部装置92からのアプリケーションへの接続を再び受信したカーネル64は、ステップS311でiked90へSA生成要求を発行する。iked90は、ステップS312で、削除されていないIKE_SAを使用してフェーズ2の処理(プロポーザル交換や相手認証を含む)を開始させ、CHILD_SAを再び確立し、ステップS313でカーネル/OS64にSA設定要求を発行する。ステップS314で外部装置92は、アプリケーション部42との通信を再開させる。
なお、他の実施形態では、ステップS308およびS309で、CHILD_SAだけでなく、IKE_SAをも削除する処理とし、ステップS312では、フェーズ1の処理から開始する制御としても良い。また、ステップS310で、外部装置92側からの接続要求を待たず、情報処理装置10側からIKEプロトコルによるSA交換を開始する処理としても良い。
図9は、プロトコルまたはアプリケーション上のイベントをトリガとした、リキー処理を実行する通信方法の実施形態のシーケンス図を示す。図9の制御では、ステップS401以前に、すでに外部装置92とのIPsec通信が確立されている場合を想定している。制御は、ステップS401から始まり、アプリケーション部42において、上述したリキー条件リスト100に合致するイベントが発生した場合、トリガ・イベントの発生を検知したアプリケーション部42(の各アプリケーション)は、ステップS402およびステップS403で、ネットワーク制御部54を介して、iked90にCHILD_SA削除要求を発行する。
CHILD_SA削除要求を受信したiked90は、ステップS404で、カーネル64にCHILD_SA削除要求を発行し、カーネル64は、ステップS405でCHILD_SAを削除する。
その後、ステップS406で、外部装置92からのアプリケーションへの接続を再び受信したカーネル64は、ステップS407でiked90へSA生成要求を発行する。SA生成要求を受信したiked90は、ステップS408でフェーズ2の処理を開始させ、CHILD_SAを再び確立する。さらにステップS409でカーネル64にSA設定要求を発行し、ステップS410で外部装置92は、アプリケーション部42との通信を再開させる。
図10は、カーネル64における内部イベントをトリガとした、リキー処理を実行する通信方法の実施形態のシーケンス図を示す。図10に示した制御についても、ステップS501以前に、すでに外部装置92とのIPsec通信が確立されている場合を想定している。図10に示した制御は、ステップS501から開始され、カーネル64においてイベントが発生した場合、イベントの発生を検知したカーネル64は、ステップS502でiked90へイベント発生の通知を行う。イベント通知を受けたiked90は、ステップS503で、リキー条件リストB102をルックアップし、リキー条件に合致するかの判断を行う。リキー条件に合致すると判断された場合には、iked90は、ステップS504で、カーネル64にCHILD_SA削除要求を発行し、カーネル64は、ステップS505でCHILD_SAの削除を実行する。
その後、ステップS506で、外部装置92からのアプリケーションへの接続を再び受信したカーネル64は、ステップS507でiked90へSA生成要求を発行し、iked90は、ステップS508でフェーズ2の処理を開始させ、CHILD_SAを再び確立し、ステップS509でカーネル64にSA設定要求を発行する。さらにステップS510で外部装置92は、アプリケーション部42との通信を再開させる。
以下、上述したプロトコル上のイベントである重複アドレス検知受信をトリガ・イベントとした際のリキー処理について説明する。図11は、重複アドレス検知受信をリキー処理のトリガ・イベントとする際に用いられる、IPsec通信管理リストのデータ構造の実施形態を示す。つまり、図6(a)に示した実施形態における、項目フィールド100aが[3]または[4]のエントリに対応する処理となる。なお、図6(a)に示したリキー条件リストA100では、項目フィールド100a[3]では、プロトコル・フィールド100bに[ARP]、任意項目・フィールド100dに[重複検知受信]が、項目フィールド100a[4]では、プロトコル・フィールド100bに[ICMP]、任意項目・フィールド100dに[重複検知受信]がエントリされている。
図11に示したIPsec通信管理リスト104のエントリは、情報処理装置10が外部装置92とIPsec通信を開始した際に登録され、通信相手である外部装置92の図示しないNIC(ネットワーク・インタフェース・カード)のMAC(媒体アクセス制御)アドレスなどのリンク層アドレスが登録され、通信相手を特定するために使用される。IPsec通信管理リスト104は、項目フィールド104aと、フィールド104bと、フィールド104cとを含み構成される。フィールド104bには、通信相手のリンク層アドレスが登録され、通信相手の識別を可能としている。フィールド104cには、IPsec通信におけるSPI(セキュリティ・パラメータ・インデックス)がエントリされ、通信相手とSAを対応付けている。
重複アドレス検知パケットを受信するiked90は、IPsec通信管理リスト104をルックアップし、重複アドレス検知パケットに含まれるリンク層アドレスを検索キーとして、対応するエントリを検索する。重複検知パケットに含まれるリンク層アドレスに対応するエントリがIPsec通信管理リスト104に有れば、そのエントリの該当するSAを削除して、SA再確立する処理とする。
IPsecバージョン3では、CHILD_SAはSPIまたは、SPIとIPsecプロトコルの種別(AHやESP)とによって識別され、図11に示した実施形態では、SPIとIPsecプロトコルの種別が組となって登録された実施形態を示している。なお、IKE_SAについても、イニシエータSPIやレスポンダSPIにより識別することができ、IPsec通信管理リスト104に登録され重複アドレス検知パケットに含まれているリンク層アドレスに対応するSAを、フィールド104cに格納されるSPI情報から検索し、該SAの削除処理を実行する。以下、重複アドレス検知パケットの受信をトリガとしたリキー処理の制御フローについて説明する。
図12は、ARP(IPv4)またはICMP(IPv6)プロトコルにおける重複アドレス検知パケットの受信をトリガ・イベントとして、リキー処理を実行する通信方法の実施形態のシーケンス図を示す。なお、図12の制御は、外部装置92とのIPsec通信が、ステップS601の直前に確立された場合を想定している。図12の制御は、ステップS601から始まり、IPsec通信が確立されると、通信相手のリンク層アドレスをIPsec通信管理リスト104にエントリ追加する。
ステップS602で、外部装置92において、電源が切断され再起動されるなどのイベントが発生した場合、外部装置92は、ステップS603で、近隣ノードへ重複アドレス検知パケットを送信する。重複アドレス検知パケットを検出したカーネル64は、ステップS604で、iked90へリンク層アドレスを含むメッセージを送信する。iked90は、ステップS605でIPsec通信管理リスト104をルックアップし、パケットに含まれたリンク層アドレスを検索し、発見された場合には、重複アドレス検知パケットの送信元が従前にIPsec通信を確立していたと判断し、ステップS606およびステップS608で、それぞれIKE_SAおよびCHILD_SAの削除要求をカーネル64に発行する。SA削除要求を受信したカーネル64は、ステップS607およびステップS609で、それぞれ、対応するIKE_SAおよびCHILD_SAを削除し、削除を完了したタイミングでiked90は、ステップS610で、IPsec通信管理リスト104の対応するエントリも削除する。
その後、ステップS611で、外部装置92からのアプリケーションへの接続を再び受信したカーネル64は、ステップS612でiked90へSA生成要求を発行し、SA生成要求を受信したiked90は、ステップS613で、外部装置92とのSA管理プロトコルによってIKE_SAを確立させ(フェーズ1)、ステップS614でIKE_SAの設定要求をカーネル64へ発行する。続いてiked90は、ステップS615でフェーズ2の処理を開始させ、CHILD_SAを再び確立し、ステップS616でカーネル64にSA設定要求を発行する。ステップS617で外部装置92は、アプリケーション部42との通信を再開させ、iked90は、再びIPsec通信管理リスト104にエントリする。
重複アドレス検知パケットは、図1(再び参照)に示した実施形態では、リンク18内の外部装置92が起動または再起動した場合や、IPv6のプラグ・アンド・プレイによるステートレス・アドレスが設定(再設定)された場合などに、外部装置92から近隣ノードに対してマルチキャスト(ARPではブロードキャスト)される。重複アドレス検知パケットの受信を検知し、リキー処理を開始させるという構成によって、通信相手のIPアドレスの変更や起動(再起動)されたことを検知して従前のSAを削除することにより、情報処理装置10と外部装置92との間のSAの不整合を防止し、通信路を保持することを可能としている。また、余分なSAが削除されるため、情報処理装置10の処理負荷を低減することも可能となる。また、他の実施形態では、エコー要求メッセージを定期的に通信相手に送信し、エコー応答メッセージ受信の可否で、応答がない場合に通信相手のネットワーク切断を検出し、SAを削除する処理としてもよい。
以下、外部装置92からのリキー要求やリキー条件リストに合致したイベントの発生によりリキー処理を開始する際に、通信相手に応じてリキー処理の実行の可否を判断する処理について説明する。図5に示したリキー処理制御フローにおける、ステップS202に対応する処理である。図13は、リキー処理の実行の可否を判断の際にルックアップされるリキー拒否条件リストのデータ構造の実施形態を示す。図13に示したリキー拒否条件リスト106は、項目フィールド106aと、フィールド106bと、フィールド106cと、フィールド106dとを含み構成される。リキー拒否条件リスト106は、各アプリケーションやプロトコル上の認証エラーや通信アドレス・ポートへのアタック(ポートスキャン攻撃など)などの不正アクセスを検出した際にエントリ追加され、エラー要因と通信相手を対応づける。また、他の実施形態では、悪質な外部装置に対応するために、管理者により手動で設定されることもできる。
フィールド106bは、リキー処理を拒否する相手を特定するための情報がエントリされ、図13に示した実施形態では、エラー要因となった通信相手のリンク層アドレスが登録される。フィールド106cは、フィールド106bに登録された送信元によるエラー要因が登録され、フィールド106dは、エラー要因の発生時刻がエントリされ、設定するタイムアウト値(リキー処理制御設定情報)に応じてエントリを削除するために使用される。他の実施形態では、フィールド106bにエントリされる、リキー処理拒否する通信相手を特定するための情報としては、IPアドレスやホスト名などを使用することができる。
またリキー拒否条件リスト106の他の実施形態では、アクセスエラーログから、通信相手ごとにエラー発生をカウントし、設定する閾値を越えた場合にリキー拒否する制御とすることもできる。
図14は、外部装置92からSA管理プロトコルによるSA確立要求を受けた場合に、リキー処理を実行の可否を判断する通信方法の実施形態のシーケンス図を示す。なお、図14の制御は、外部装置92とのIPsec通信がステップS701の以前に確立されている場合を想定する。図14の制御は、ステップS701から始まり、外部装置92側で何らかのイベントの発生を検出され、情報処理装置10のiked90は、例えば、ステップS702でIKEフェーズ2からのリキー要求を受信する。リキー要求を受信したiked90は、ステップS703で、IKEプロトコルによるリキー処理の可否判断を実施する。iked90は、自身の判断処理でリキー適用可能と判断した場合には、ステップS704で、ネットワーク制御部54へリキー可否の判断の問い合わせを実施する。
ステップS705でリキー可否の問い合わせを受けたネットワーク制御部54は、リキー拒否条件リスト106をルックアップし、パケット送信元のリンク層アドレス(他の実施形態ではIPアドレスやホスト名)をキーとして、該当する通信相手がエントリされているかを検索し、該当したエントリを発見した場合には、ステップS706で、iked90にリキー拒否応答を通知して、iked90は、リキーを行わない処理とする。該当するエントリを発見しなかった場合は、通常通りSAを確立させる処理を継続する。
図14に示した通信方法の実施形態によれば、エラー要因を発生した通信相手のリキー処理を行わない制御とすることで、悪質な外部装置92からのリキー処理要求により、情報処理装置10のパフォーマンスが低下することを好適に防止することを可能とする。
ライフタイム要因以外の上記イベントに基づくリキー処理の発生を、ネットワーク管理者やSNMPマネージャが知ることができると、ネットワーク管理上の利便性が向上する。以下、ライフタイム要因以外の上記イベントに基づくリキー処理の発生を、外部機器へ通知する処理を行う通信方法について説明する。
以下、図5に示したリキー処理の制御フローにおける、ステップS205に対応する処理の詳細について説明する。図15は、リキー外部通知管理リスト(外部通知相手機器へメッセージを通知するための通知情報)のデータ構造の実施形態を示す。図15に示したリキー外部通知管理リスト108は、項目フィールド108aと、フィールド108b〜108fとを含み構成される。リキー処理を実行した情報処理装置10は、リキー外部通知管理リスト108のエントリにより指定された方法で、外部の機器にリキー処理を行った旨を通知する。なお、通知にリキー処理の発生要因を含めることもできる。
フィールド108bには、外部通知の際に使用するIP層相当の通信プロトコルがエントリされ、フィールド108cには、連絡先の通信アドレスがエントリされる。フィールド108dには、リキー通知を行うためのアプリケーション層レベルのプロトコルが、フィールド108eには、フィールド108dに対応するプロトコルにおけるリキー通知仕様が、フィールド108fには、上位プロトコルおよび仕様に対応した詳細な連絡方法の指示が、それぞれエントリされている。
例えば、図15に示した実施形態では、項目フィールド108a[1]のエントリでは、種別フィールド108bに[IPv4]、連絡先アドレス・フィールド108cに[xx.xx.xx.11]、プロトコル・フィールド108dに[snmp]、仕様フィールド108eに[Trap]がエントリされており、IPv4プロトコルのIPアドレス(xx.xx.xx.11)の外部機器に対して、情報処理装置10がSNMPエージェントとして、TRAPコマンドを使用してリキー処理を実施した旨の通知を行うことを表している。また、対応する詳細・フィールド108fのエントリには[community,
enterpriseSpecific(6),xx]などの詳細情報が入力され、SNMPメッセージ内容が指示されている。
enterpriseSpecific(6),xx]などの詳細情報が入力され、SNMPメッセージ内容が指示されている。
また、項目フィールド108a[2]のエントリでは、種別フィールド108bに[IPv4]、連絡先アドレス・フィールド108cに[xx.xx.xx.22]、プロトコル・フィールド108dに[smtp]、仕様フィールド108eに[E−Mail]がエントリされており、IPv4プロトコルのIPアドレス(xx.xx.xx.11)のメールサーバにアクセスして、eメール送信により、リキー処理を実施した旨の通知を行うことを表している。対応する詳細・フィールド108fのエントリには、[abc@xx.xx]などのeメールアドレスなどの詳細情報が入力され、メールの送信先が指示されている。
リキー処理実施の旨の通知は、その他、ブロードキャスト(IPv4)や、マルチキャストやエニーキャスト(IPv6)によって、リンク18の近隣ノード全体や、所定のノードに通知を行うこともできる。また、各種FAX送信による連絡を行うこともでき、FAX送信としてIPFaxを用いない場合は、フィールド108fにFAX番号をエントリし、該当FAXにリキー通知を実行することもできる。
図16は、リキー外部通知管理リスト108を使用して、リキー処理の実行を外部機器へ通知する通信方法の実施形態のシーケンス図を示す。なお、図16の制御は、ステップS801以前に外部装置92と情報処理装置10がIPsec通信を確立し、何らかのリキー条件に合致するイベントが発生した場合を想定している。図16に示した制御は、ステップS801で、リキー処理の開始にともなう、iked90からのカーネル64へのCHILD_SAの削除要求から開始される。CHILD_SA削除要求を受信したカーネル64は、ステップS802で、対応するCHILD_SAを削除する。
その後、ステップS803で、外部装置92からのアプリケーションへの接続を再び受信したカーネル64は、ステップS804でSA生成要求をiked90へ発行する。SA生成要求を受信したiked90は、ステップS805で、SA管理プロトコルによってフェーズ2の処理を開始させ、外部装置92とのCHILD_SAを再び確立し、カーネル64にSA設定要求を発行する(S806)。引き続き、iked90は、ステップS807およびステップS808で、ネットワーク制御部54を介して、アプリケーション部42のリキー外部通知管理リスト108に指定されたアプリケーション(例えばメール送信アプリケーションやSNMPエージェント)へ、リキー通知の依頼を送信する。リキー通知依頼を受けたアプリケーション部42は、ステップS809でリキー通知の連絡先を判断し、ステップS810で、外部機器へリキー通知を実行する。
ライフタイム要因以外の上記イベントに基づくリキー処理の発生を、外部機器へ通知する処理を行う構成により、情報処理装置10においてライフタイム以外の要因によるリキー処理が行われたことを、外部機器やネットワーク管理者が認識することができ、ネットワークのセキュリティを向上させることを可能とする。リキー実施の通知に、リキー処理開始要因が含まれる場合には、より詳細な分析や対応が可能となる。
以下、上述までのリキー条件リストA100、リキー条件リストB102およびリキー外部通知管理リスト108を含むリキー処理制御設定情報の設定方法について説明する。
図17は、オペレータがリキー制御情報を設定するためのユーザ・インタフェースの実施形態を示す。ユーザ・インタフェース30の操作パネル(タッチパネル)などには、図17(a)に示すUI画面210が示される。UI画面210には、「IPsec SA更新機能設定」といった見出しと、「IPsec SA更新機能設定の項目を選択してください。」といった、該UI画面上での設定内容が提示されている。またUI画面210には、UI部品210aなどのボタンが配置され、オペレータからの指示を待受けている。
図17(a)に示した実施形態では、UI部品210aは、「外部通知」の機能設定項目と関連付けられ、現在「無効」である旨を示している。例えば、ユーザ・インタフェース30の操作パネルなどによって、UI部品210aの外部通知のボタンを選択および押下すると、図17(b)に示す新たなUI画面220がユーザ・インタフェース30の操作パネルに表示される。
図17(b)に示すUI画面220には、「IPsec SA更新 外部通知設定」といった見出しと、「外部通知の各機能の有効/無効を選択してください。」といった、該UI画面上での設定内容が提示されている。またUI画面220には、UI部品220aなどのボタンが配置され、オペレータからの指示を待受けている。
UI部品220aは、「SNMP TRAP」といったリキー通知機能と関連付けられ、現在「無効」である旨が示されている。例えば、ユーザ・インタフェース30の操作パネルなどによって、UI部品220aの外部通知のボタンを選択および押下すると、次に、図17(c)に示す新たなUI画面230が、ユーザ・インタフェース30の操作パネル上に表示される。
図17(c)に示すUI画面230には、「IPsec SA更新 外部通知設定」といった見出しと、「SNMP TRAP通知機能の有効/無効を選択してください。」といった、該UI画面上の設定内容が提示されている。またUI画面220には、UI部品230a〜230cなどのボタンが配置され、オペレータからの指示を待受けている。操作パネルなどによって、UI部品230aの「無効」ボタンを選択・押下すると、示されている設定項目を無効とする旨の状態が保持され、UI部品230cの「設定」ボタンを選択・押下により、SNMP TRAPを無効として設定処理がなされる。
一方、操作パネルなどによって、UI部品230bの「有効」ボタンを選択および押下し、UI部品230cの「設定」ボタンを選択・押下すると、「SNMP TRAP」を有効として設定処理がなされ、外部通知先のSNMPマネージャを選択・入力するUI画面などが表示され、リキー外部通知管理リスト108に選択されたSNMPマネージャがエントリされる。
同様の処理を実行することによって、(1)デバイス関連エラーについて、各デバイス関連エラーをリキー条件として有効/無効かの設定、同様に(2)各アプリケーションエラーをリキー条件として有効/無効かの設定、(3)各プロトコル・エラーをリキー条件として有効/無効かの設定、(4)図7で示した、リキー処理の直接指令やSAライフタイム設定とは別のタイマーによるリキー処理の設定を行うことができる。
なお、各種設定の実行は、オペレーション制御部46やネットワーク制御部54を介して、記憶部82内のリキー処理制御設定情報のファイル内容を更新することによって行われる。設定が実行されると、リキー条件リストA100やリキー条件リストB102の各種エントリの有効/無効のフラッグが更新され、または、リキー外部通知管理リスト108へ設定条件がエントリされる。
なお、ユーザ・インタフェース30を介した設定方法として説明してきたが、他の実施形態では、外部装置92からのtelnetd84やhttpd86やsnmpd88を介したリモート・アクセスにより、リモート設定・管理することもでき、本願のインタフェース手段として使用することができる。以下、設定更新の処理シーケンスについて説明する。
図18は、ユーザ・インタフェースまたは外部装置92からの、リキー処理制御設定情報の設定方法での実施形態の処理シーケンスを示す。図18に示した制御は、ステップS900から開始し、例えば図17(c)に示したUI画面230で、設定の実行を指示するUI部品230cが選択・押下されると、ステップS900で、アプリケーション部42(管理設定用アプリケーション)へ、リキー処理関連パラメータ(IPsec設定情報と、リキー処理制御設定情報とを含んだ情報として参照)の設定変更要求が送信される。設定変更要求を受信したアプリケーション部42は、ステップS901で、ネットワーク制御部54を介して、設定ファイルの書換え要求を記憶部82へ発行し、ステップS902で、リキー処理関連パラメータが書換えられる。
設定変更された後、必要に応じて、ステップS903で情報処理装置10が再起動され、カーネル64およびiked90が起動され、起動後iked90は、ステップS904で、ネットワーク制御部54へ、記憶部82に格納されたリキー処理関連パラメータの読出し要求を送信する。読出し要求を受信したネットワーク制御部54は、ステップS905で、記憶部82からリキー処理関連パラメータを読み出し、ステップS906でiked90に情報を伝達する。リキー処理関連パラメータを受け取ったiked90は、ステップS907で、さらにIPsec通信に必要な情報を記憶部82から読み書きし、ステップS908で、IPsecポリシー設定をカーネル64に実行する。
リキー処理制御情報の設定するためのインタフェース手段という構成により、情報処理装置10のおかれているネットワーク環境やユーザ環境に適合させて、柔軟にリキー開始条件やリキー通知連絡先を簡便に設定することが可能となる。また、各種設定ファイルがテキストエディタなどを用いて設定させる不便を解消することもできる。
以上、説明したように、本発明によれば、セキュア通信の際に情報処理装置間で共有され通信データの完全性や機密性を確保するための情報の更新処理を、柔軟にまたは即時的に実行することを可能とし、通信におけるセキュリティを効果的に向上させることを可能とする情報処理装置、通信方法およびプログラムを提供することができる。
本発明によれば、情報処理装置が検出する通信プロトコル(外部通信からの要求)やアプリケーション(アプリケーションからの要求)上のイベント、情報処理装置の内部発生イベント(デバイス管理やシステムからの要求)の検出、外部装置からの通信パケットの受信(外部通信からの要求)、または外部指令の受信など、情報処理装置の内外で発生するイベントをトリガとする。このため、本発明ではイベント駆動によるリキー処理を可能とし、例えば悪意ある進入などのイベントに応答して通信データの完全性や機密性を確保するための情報の更新処理を実行することにより、好適にセキュア通信におけるセキュリティを向上させることができる。
なお、明細書中では、RFC4306に規定されるIKEv2に準拠した用語を使用した。フェーズ1で確立され、以降のフェーズ2で使用されるセキュリティ・アソシエーションをIKE_SA、フェーズ2で確立され、IPsec通信で使用されるセキュリティ・アソシエーションをCHILD_SAと表記した。IKEv1に基づいた表記によれば、上記IKE_SAおよびCHILD_SAは、それぞれ、ISAKMP_SAおよびIPsec_SAとなる。
また、IPsec通信以外のセキュア通信プロトコル、例えばSSL(Secure Socket Layer)やTLS(Transport Layer Security)やSecureShellなどにおいても、リキー条件に応じたイベントをトリガとして、セッション鍵などの共有秘密鍵の更新処理を開始する処理とすることもできる。
また、本発明の上記機能は、アセンブラ、C、C++、C#、Java(登録商標)、などのレガシープログラミング言語やオブジェクト指向ブログラミング言語などで記述された装置実行可能なプログラムにより実現でき、SDメモリ、MO、EEPROM、EPROM、フラッシュメモリ、フレキシブルディスク、CD−ROM、CD−RW、DVDなど装置可読な記録媒体に格納して頒布することができる。また、上記機能は、システム・メモリおよびCPUにより構成され、各機能を実現するためのプログラムをシステム・メモリにロードして実行することにより実現させることができる。
以上、本発明を図面に示した実施形態をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、他の実施形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
10…情報処理装置、10a…サーバ、10b…画像形成装置(複合機)、10c…PC、12…プリンタ、14…スイッチ、16…ルータ、18…リンク、20…ネットワーク、22…PC、30…ユーザ・インタフェース、32…コピー・アプリケーション、34…ファックス・アプリケーション、36…スキャナ・アプリケーション、38…ネットファイル・アプリケーション、40…プリンタ・アプリケーション、42…アプリケーション部、44…ドキュメント制御部、46…オペレーション制御部、48…メモリ制御部、50…システム制御部、52…セキュリティ制御部、54…ネットワーク制御部、56…ファックス制御部、58…エンジン制御部、60…プラットフォーム部、62…API、64…カーネル、66…セキュア・デバイス、68…HDD、70…NVRAM、72…ネットワーク・インタフェース、74…外部デバイス・インタフェース、76…GSTNインタフェース、78…ネットワーク、80…コントローラ、82…記憶部、84…telnetd、86…httpd、88…snmpd、90…iked、92…外部装置、100…リキー条件リストA、100a〜100d…フィールド、102…リキー条件リストB、102a〜102c…フィールド、104…IPsec通信管理リスト、104a〜104c…フィールド、106…リキー拒否条件リスト、106a〜106d…フィールド、108…リキー外部通知管理リスト、108a〜108f…フィールド、200…UI画面、200a〜200c…UI部品、210…UI画面、210a…UI部品、220…UI画面、220a…UI部品、230…UI画面、230a〜230c…UI部品
Claims (14)
- ネットワークに接続され、外部装置とセキュア通信を行う情報処理装置であって、前記情報処理装置は、
イベントを検知する手段と、
トリガ条件を保持する記憶手段と、
前記イベントを検知し、前記イベントについて割当てた前記トリガ条件を判断して、前記イベントが前記トリガ条件の指定イベントである場合に前記セキュア通信のセキュリティ共有情報の更新処理を開始させるトリガ手段と
を含む情報処理装置。 - 前記イベントは、
外部通信、アプリケーション、デバイス管理またはシステムからの要求により与えられる、
請求項1に記載の情報処理装置。 - 前記情報処理装置は、さらに、
前記外部装置を特定するための識別値に応じて、前記セキュリティ共有情報の前記更新処理の実行の可否を判断する手段を含む、
請求項1または2に記載の情報処理装置。 - 前記情報処理装置は、
外部通知相手機器へメッセージを通知するための通知情報を保持する通知先記憶手段と、
前記更新処理が開始した後に、前記外部通知相手機器へ、前記メッセージを通知する手段を含む、
請求項1〜3のいずれか1項に記載の情報処理装置。 - 前記情報処理装置は、
前記トリガ条件または前記通知情報、または前記トリガ条件および前記通知情報の両方を設定変更するためのインタフェース手段を備える、
請求項1〜4のいずれか1項に記載の情報処理装置。 - 前記セキュア通信は、IPsec通信であり、前記セキュリティ共有情報は、IPsecセキュリティ・アソシエーション情報である、
請求項1〜5のいずれか1項に記載の情報処理装置。 - ネットワークに接続され、情報処理装置に対して外部装置とセキュア通信を実行させる通信方法であって、前記情報処理装置に対し、
イベントを検知するステップと、
前記イベントについて割当てた前記トリガ条件を判断し、前記イベントが前記トリガ条件の指定イベントである場合に前記セキュア通信のセキュリティ共有情報の更新処理を開始するステップと
を実行させる、通信方法。 - 前記イベントは、
外部通信、アプリケーション、デバイス管理またはシステムからの要求により与えられる、
請求項7に記載の通信方法。 - 前記通信方法は、前記情報処理装置に対し、
前記外部装置を特定するための識別値に応じて、前記セキュリティ共有情報の前記更新処理の実行の可否を判断するステップ
をさらに実行させる
請求項7または8に記載の通信方法。 - 前記通信方法は、前記情報処理装置に対し、
外部通知相手機器へメッセージを通知するステップを、前記更新処理を開始するステップの後に実行させる、
請求項7〜9のいずれか1項に記載の通信方法。 - ネットワークに接続され、外部装置とセキュア通信を行うプログラムであって、前記プログラムは、情報処理装置に対し、
イベントを検知する機能手段と、
前記イベントについて割当てた前記トリガ条件を判断し、前記イベントが前記トリガ条件の指定イベントである場合に前記セキュア通信のセキュリティ共有情報の更新処理を開始させる機能手段と
を実現する、装置実行可能なプログラム。 - 前記イベントは、
外部通信、アプリケーション、デバイス管理またはシステムからの要求により与えられる、
請求項11に記載のプログラム。 - 前記プログラムは、前記情報処理装置に対し、
前記外部装置を特定するための識別値に応じて、前記セキュリティ共有情報の前記更新処理の実行の可否を判断する機能手段
をさらに実現する、
請求項11または12に記載のプログラム。 - 前記プログラムは、前記情報処理装置に対し、
前記更新処理を開始させた後に、外部通知相手機器へメッセージを通知する機能手段
をさらに実現する、
請求項11〜13のいずれか1項に記載のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006290321A JP2008109404A (ja) | 2006-10-25 | 2006-10-25 | 情報処理装置、通信方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006290321A JP2008109404A (ja) | 2006-10-25 | 2006-10-25 | 情報処理装置、通信方法およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008109404A true JP2008109404A (ja) | 2008-05-08 |
Family
ID=39442396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006290321A Pending JP2008109404A (ja) | 2006-10-25 | 2006-10-25 | 情報処理装置、通信方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008109404A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013523050A (ja) * | 2010-03-19 | 2013-06-13 | エフ5 ネットワークス、インコーポレイテッド | 中間ストリーム再ネゴシエーションを介したプロキシsslハンドオフ |
US9219675B2 (en) | 2010-07-27 | 2015-12-22 | Ricoh Company, Limited | Communication device, communication system, and computer program product |
-
2006
- 2006-10-25 JP JP2006290321A patent/JP2008109404A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013523050A (ja) * | 2010-03-19 | 2013-06-13 | エフ5 ネットワークス、インコーポレイテッド | 中間ストリーム再ネゴシエーションを介したプロキシsslハンドオフ |
US9219675B2 (en) | 2010-07-27 | 2015-12-22 | Ricoh Company, Limited | Communication device, communication system, and computer program product |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8312532B2 (en) | Connection supporting apparatus | |
JP5377009B2 (ja) | 情報処理装置、通信システム、情報処理装置の制御方法、プログラム | |
US20090287810A1 (en) | Virtual private network management | |
JP5078422B2 (ja) | サーバ装置、情報処理装置、プログラムおよび記録媒体 | |
US20110277028A1 (en) | Assigning a network address for a virtual device to virtually extend the functionality of a network device | |
JP2005072636A (ja) | 通信システム、同通信システムにおけるセキュリティポリシーの配布方法、サーバ装置、ならびにセキュリティポリシーの配布プログラム | |
KR20070017322A (ko) | 보안 네트워크 접속을 유지하기 위한 방법, 시스템 및컴퓨터 판독가능 매체 | |
JP5270692B2 (ja) | セキュリティ実施ポイントへのセキュリティ・アソシエーション情報の選択的ロードのための方法、装置、およびコンピュータ・プログラム | |
JP6107498B2 (ja) | 通信方法、通信装置及び通信プログラム | |
US7765581B1 (en) | System and method for enabling scalable security in a virtual private network | |
JP2008205763A (ja) | 通信装置、通信方法およびプログラム | |
US20050135269A1 (en) | Automatic configuration of a virtual private network | |
KR100334128B1 (ko) | 보안 정책 시스템 | |
Richardson et al. | Opportunistic encryption using the internet key exchange (ike) | |
JP2006246098A (ja) | 可変ipアドレス環境下におけるセキュリティアソシエーション継続方法および端末装置 | |
US20020154635A1 (en) | System and method for extending private networks onto public infrastructure using supernets | |
US20110276673A1 (en) | Virtually extending the functionality of a network device | |
JP2008109404A (ja) | 情報処理装置、通信方法およびプログラム | |
JP2007036389A (ja) | Tlsセッション情報の引継ぎ方法及びコンピュータシステム | |
JP2008311939A (ja) | ネットワーク通信機器 | |
US7207063B1 (en) | Method and apparatus for determining secure endpoints of tunnels in a network that uses internet security protocol | |
JP2005175825A (ja) | 暗号化パケットフィルタリング装置およびそのプログラム、ならびにホスト装置 | |
Cisco | Network Data Encryption and Router Authentication Commands | |
Cisco | Network Data Encryption and Router Authentication Commands | |
Cisco | Network Data Encryption and Router Authentication Commands |