JP2005031720A - High multiple user housing firewall device corresponding to high speed retrieval - Google Patents

High multiple user housing firewall device corresponding to high speed retrieval Download PDF

Info

Publication number
JP2005031720A
JP2005031720A JP2003192591A JP2003192591A JP2005031720A JP 2005031720 A JP2005031720 A JP 2005031720A JP 2003192591 A JP2003192591 A JP 2003192591A JP 2003192591 A JP2003192591 A JP 2003192591A JP 2005031720 A JP2005031720 A JP 2005031720A
Authority
JP
Japan
Prior art keywords
filtering
rule
user
individual
packet
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
Application number
JP2003192591A
Other languages
Japanese (ja)
Inventor
Kazuhiko Osada
和彦 長田
Daisuke Oka
大祐 岡
Takashi Ikegawa
隆司 池川
Hiroyuki Ichikawa
弘幸 市川
Kazuo Yamakoshi
一生 山越
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.)
NTT Advanced Technology Corp
Nippon Telegraph and Telephone Corp
Original Assignee
NTT Advanced Technology Corp
Nippon Telegraph and Telephone Corp
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 NTT Advanced Technology Corp, Nippon Telegraph and Telephone Corp filed Critical NTT Advanced Technology Corp
Priority to JP2003192591A priority Critical patent/JP2005031720A/en
Publication of JP2005031720A publication Critical patent/JP2005031720A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a high multiple user housing firewall device corresponding to high speed retrieval, capable of realizing the high speed retrieval of a filtering rule having the same value as a filtering ID applied to a packet. <P>SOLUTION: In the high multiple user housing firewall device corresponding to high speed retrieval, the rule itself and address information showing a position where a filtering rule to be retrieved next is stored, are described in each filtering rule configuring each filtering policy of a filtering table, and rule retrieval is executed to the filtering rule on the basis of a filtering ID applied to a packet. When the rule is matched with a rule condition, the rule retrieval is ended, and the packet applied with the filtering ID is made to pass or abandoned according to an operation mentioned in the rule, and when the rule is not matched with the rule condition, the rule retrieval is executed to the filtering rule stored at the position shown by the address information. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、高多重ユーザ収容ファイアウォール装置に係わり、特に、インタネットに接続するユーザを保護するためのファイアウォール装置に関する。
【0002】
【従来の技術】
常時接続ユーザ数が増加するとともに、セキュリティの必要性が高まる中、セキュリティ知識が不十分なユーザに対し、低コストでスキル不足を解消するセキュリティサービスを提供することが求められている。
これを解決するファイアウォール装置の提供法として、ネットワーク側にファイアウォール装置を配備する方法が考えられる。すなわち、本方法により、収容ユーザの集約による経済化と、アウトソーシングによるユーザ稼動の軽減が期待される。
ただし、セキュリティポリシをユーザ毎に提供する必要もあり、本方法によるファイアウォール装置は、1台の物理的なファイアウォール装置にユーザ毎の仮想ファイアウォールを構築するアーキテクチャが求められる。
ユーザの端末やサーバと仮想ファイアウォールとの割り当ては、通常、ユーザID(ユーザIPアドレス)と仮想ファイアウォールIDとを対応させることにより実現する。
常時接続サービスに仮想ファイアウォールを適用する場合、ユーザIPアドレスは、ユーザ端末とネットワークとの接続が確立されるとき、具体的には、PPP(Point to Point Protocol)セッションの確立時に、初めて付与される上、ユーザIPアドレスは一般に可変であるため、ユーザIPアドレスと仮想ファイアウォールIDとの対応を事前に登録することができない。
【0003】
このようなPPP確立に応じて、動的にユーザIPアドレスと仮想ファイアウォールIDとの対応付けを行う従来技術として、例えば、下記特許文献1に記載されているものがある。
下記特許文献1に記載されている従来技術を、図3および図4を用い、以下に説明する。
図3に示すように、ファイアウォール装置100は、ユーザ毎に仮想ファイアウォール(102,103,…,104)を具備する。
振分け管理テーブル101には、事前に設定可能なユーザ名および仮想ファイアウォールIDが登録されている。
ここでは、ユーザ#aが定めるセキュリティポリシが仮想ファイアウォール102に、ユーザ#bが定めるセキュリティポリシが仮想ファイアウォール103に格納されており、振分け管理テーブル101には、ユーザ名#aと仮想ファイアウォールID(102)、ユーザ名#bと仮想ファイアウォールID(103)との対応付けが登録されている。
ただし、各ユーザ端末のユーザIDとなるユーザIPアドレスは未確定のため、この時点では登録することができない。
ユーザIPアドレスが振分け管理テーブル101に登録されない限り、各ユーザからのパケットをそれぞれの仮想ファイアウォールに振分けることができない。
【0004】
以下、図4を用いて、図3に示すファイアウォール装置の動作について説明する。なお、図4は、図3に示すファイアウォール装置の動作を示すシーケンス図である。
まず、ユーザ端末111からのネットワーク接続要求として、ユーザ端末111とファイアウォール100との間でLCP(Link Control Protocol)の情報がやりとりされる(図4の139)。
ユーザ端末からのネットワーク接続のための認証情報を受信すると(図4の140)、ファイアウォール装置100は、認証情報に記載されているユーザ名を保持する(図4の処理ポイント150)。
そして、認証情報(ユーザ名およびパスワード)を認証サーバであるRADIUSサーバ130に通知する(図4の141)。
RADIUSサーバ130にて認証され、その応答を受信すると(図4の142)、ファイアウォール装置100は、その応答に記載されているユーザ端末に付与すべきユーザIPアドレスを保持する。
そして、ユーザ名を検索キーとして、振分け管理テーブル101にこのユーザIPアドレスを登録する(図4の処理ポイント151、図4の振分け管理テーブル101−2の状態)。
【0005】
ユーザ端末111とネットワークとの接続が確立された後に、ユーザ端末111から送信されるパケット121に対して、その送信元IPアドレスを検索キーとして振分け管理テーブル101を検索し、当該送信元IPアドレスと対応付けられている仮想ファイアウォールIDを抽出し、当該パケット121を、仮想ファイアウォールIDで特定される仮想ファイアウォール102に振り分ける(図4の処理ポイント152)。
また、ユーザ端末111の通信相手端末113から送信されるパケット122に対して、その宛先IPアドレスを検索キーとして振分け管理テーブル101を検索し、当該宛先IPアドレスと対応付けられている仮想ファイアウォールIDを抽出し、パケット122を、仮想ファイアウォールIDで特定される仮想ファイアウォール102に振り分ける(図4の処理ポイント153)。
以上の動作により、事前にユーザIPアドレスと仮想ファイアウォールIDとの対応付けができない通信形態に対し、ユーザ端末からのネットワーク接続のための認証情報を利用し、動的にユーザIPアドレスと仮想ファイアウォールIDとを対応付け、該ユーザ端末が送信あるいは受信するパケットに対し、該ユーザが定めるセキュリティポリシに従うフィルタリングルールを適用することができる。
【0006】
以上に説明したような1台の物理的なファイアウォール装置にユーザ毎の仮想ファイアウォールを構築するアーキテクチャは、最初データセンタヘの適用が主であり、その収容ユーザ数は数百〜数千を想定している。
現在、装置化され、サービスとして導入されている信頼性の高い仮想ファイアウォール装置の多くは、データセンタ向けに開発されており、実際に収容できるユーザ数は前述の通り、数百〜数千となっている。
一方、常時接続サービスの場合、データセンタヘの適用の場合と比較し、収容ユーザ数は断然に多い。想定される規模として、収容ユーザ数は数万〜数十万規模となる。
収容ユーザ数の規模は異なるものの、常時接続サービス向けの仮想ファイアウォール装置を開発するにあたり、開発の効率化や既存技術の活用の観点から、前記データセンタ向け仮想ファイアウォール装置を土台に流用開発や追加開発する手法が極めて有効となる。
したがって、常時接続サービス向けの仮想ファイアウォール装置を提供するための課題は、ユーザ多重数の向上にある。
また、常時接続サービスではユーザ多重数が多いため、ユーザ毎に独立のセキュリティポリシを提供するサービス性を確保する場合、フィルタリングルールの合計数もユーザ多重数に比例し、多くなる。
しかし、実際のところ、各ユーザのフィルタリングルールには、多くのユーザに共通するルールもあるため、ファイアウォール装置全体の観点から見た場合に、ルールの重複となり非効率である。その結果、フィルタリングテーブル量の増大に繋がる。
【0007】
以上のように常時接続サービス向けの仮想ファイアウォール装置を開発するには、ユーザ多重数の向上とフィルタリングテーブルの効率化が課題となる。
本課題を解決する従来技術として、例えば、下記特許文献2に記載されているものがある。
下記特許文献2に記載されている従来技術を、図2、図5、図6および図7を用い、以下に説明する。
この従来技術では、フィルタリングIDを導入し、ユーザ毎のフィルタリングポリシをフィルタリングIDによって識別する。
図2において、ファイアウォール装置300は前述の従来技術と同様に複数の仮想ファイアウォール(302,303,…,304)を具備する。
振分け管理テーブル301には、図3で説明した仮想ファイアウォール技術においても管理されていたユーザ名および仮想ファイアウォールIDの他に、フィルタリングIDが、事前設定可能なパラメータとして登録される。
また、図5に示すように、各仮想ファイアウォールには、フィルタリングID毎のフィルタリングテーブルが格納されており、前述の振分け管理テーブル301によって、各ユーザがどの仮想ファイアウォール内のどのフィルタリングテーブルのセキュリティポリシが適用されるかが定まっている。
【0008】
ここでは、ユーザ#aとユーザ#bが定めるセキュリティポリシが仮想ファイアウォール302に、ユーザ#dが定めるセキュリティポリシが仮想ファイアウォール303に格納されており、さらに、ユーザ#aは仮想ファイアウォール302の中で、フィルタリングID=αのフィルタリングテーブル561に、ユーザ#bはフィルタリングID=βのフィルタリングテーブル562に、ユーザ#dは仮想ファイアウォール303の中で、フィルタリングID=γのフィルタリングテーブル563に、それぞれのセキュリティポリシが記載されている。
したがって振分け管理テーブル301には、ユーザ名#a、仮想ファイアウォールID302およびフィルタリングIDαの対応付け、ユーザ名#b、仮想ファイアウォールID302およびフィルタリングIDβの対応付け、ユーザ名#d、仮想ファイアウォールID303およびフィルタリングIDγの対応付けが登録される。
ただし、各ユーザ端末のユーザIDとなるユーザIPアドレスは未確定のため、この時点では登録することができない。
ユーザIPアドレスが振分け管理テーブル101に登録されない限り、各ユーザからのパケットをそれぞれの仮想ファイアウォールに振分けることができない。
【0009】
ユーザ端末からのネットワーク接続のための認証情報を受信し、振分け管理テーブル301に、ユーザ端末に付与されるユーザIPアドレスを登録するまでの動作は、図4に示した技術と同様である。
ユーザ端末とネットワークとの接続が確立された後、図2において、ユーザ端末311から送信されるパケット321に対し、その送信元IPアドレスを検索キーとして振分け管理テーブル301を検索し、送信元IPアドレスと対応付けられている仮想ファイアウォールID、フィルタリングIDを抽出し、当該パケット321を、当該仮想ファイアウォールIDを有する仮想ファイアウォール(図2、図5の302)に振り分けるとともに、当該フィルタリングID(図2、図5のα)を付与する。
フィルタリングIDを付与されたパケット322は、図5に示すように、仮想ファイアウォール内において、フィルタリングIDによって特定されるフィルタリングテーブルに記載のフィルタリングポリシに従い、通過あるいは廃棄処理が行われる。
ユーザ端末の通信相手端末313から送信されるパケット323については、振分け管理テーブル301を検索するために用いられる検索キーが、宛先ユーザIDとなる以外は、ユーザ端末311から送信されるパケット321の場合の処理と同様となる。
以上のように、フィルタリングIDを導入することにより、各仮想ファイアウォールに複数の独立したフィルタリングポリシを管理することができ、ユーザ多重数を向上させることができる。
また、ユーザ毎のパケットの検索範囲は、付与されたフィルタリングIDの値と一致するテーブルのみを検索対象とするため、検索処理時間が不必要に長くなることが抑制される。
【0010】
次に、フィルタリングテーブル量の増大を回避し、効率化を図るための従来技術の方法を以下に説明する。
この方法は前述のフィルタリングIDを、さらに個別フィルタリングIDと共通フィルタリングIDに2分化することによって実現される。
これによって、各ユーザ個別のフィルタリングポリシは個別フィルタリングテーブルに記載し、複数のユーザにて共通化することが可能なフィルタリングポリシは共通フィルタリングテーブルに記載する。
図6に示すように振分け管理テーブル601は、ユーザ名、仮想ファイアウォールID、個別フィルタリングIDおよび共通フィルタリングIDを管理する。
ユーザ端末とネットワークとの接続が確立された後、図2に示すように、ユーザ端末311から送信されるパケット321に対し、その送信元IPアドレスを検索キーとして振分け管理テーブル601を検索し、該送信元IPアドレスと対応付けられる仮想ファイアウォールID、個別フィルタリングIDおよび共通フィルタリングIDを抽出し、当該パケット321を、仮想ファイアウォールIDを有する仮想ファイアウォール(図2の302)に振り分けるとともに、個別フィルタリングIDおよび共通フィルタリングIDを付与する。
【0011】
個別フィルタリングIDおよび共通フィルタリングIDが付与されたパケット322は、図7に示すように、仮想ファイアウォール内において、個別フィルタリングID(図7の661)によって特定される個別フィルタリングテーブルに記載のフィルタリングポリシに従い、通過あるいは廃棄処理が行われる。
もし、個別フィルタリングテーブルに記載のフィルタリングポリシに、適用すべきルールが存在しなかった場合、パケット322は、次に、共通フィルタリングID(図7の571)によって特定される共通フィルタリングテーブルに記載のフィルタリングポリシに従い、通過あるいは廃棄処理が行われる。
ユーザ端末311の通信相手端末313から送信されるパケット323については、振分け管理テーブル601を検索するために用いられる検索キーが、宛先ユーザIDとなる以外は、ユーザ端末311から送信されるパケット321の場合の処理と同様となる。
以上説明したように、この方法では、複数のユーザにて共通化することが可能なフィルタリングポリシは、共通フィルタリングテーブルに記載する。
そのため、例えば、10ユーザが2つの同じフィルタリングルールを利用している場合、この方法を用いなければ、合計20ルールがフィルタリングテ一ブルに記載されるのに対し、この方法によれば、2ルールのみをフィルタリングテーブルに記載すればよいことになる。すなわち、共通フィルタリングIDおよび共通フィルタリングテーブルの導入により、フィルタリングポリシ管理が効率的になる。
【0012】
なお、本願発明に関連する先行技術文献としては以下のものがある。
【特許文献1】
特願2003−027828号公報
「動的ユーザ識別子対応ファイアウォール装置」
【特許文献2】
特願2003−045222号公報
「高多重ユーザ収容ファイアウォール装置」
【0013】
【発明が解決しようとする課題】
前述したように、従来技術では、フィルタリングIDによって特定されるフィルタリングテーブルに記載のフィルタリングポリシに従い、パケットの通過あるいは廃棄が行われる。すなわち、仮想ファイアウォール内において、パケットに付与されたフィルタリングIDを検索キーとして、このフィルタリングIDを有するフィルタリングルールを探索する必要がある。
この探索処理は、パケットに付与されたフィルタリングIDと、フィルタリングテーブルに記載されるフィルタリングIDとの完全一致をもって、フィルタリングルールを見つけるため、通常、二分検索法などにより実施される。
また、当該フィルタリングルールを見つけた後、パケットヘッダの情報と当該フィルタリングルールに記載された情報とを比較する処理も、通常、二分検索法が用いられる。
さらに、見つけ出したフィルタリングルールが条件に合致しない場合、次のフィルタリングルールを探すために、同様に、フィルタリングIDを検索キーとした探索処理が行われ、フィルタリング条件が合致する、または、当該フィルタリングIDを有するフィルタリングルールを全て探索し終わるまで、前述の処理が繰り返される。
【0014】
このため、前述の(1)フィルタリングIDが一致するフィルタリングルールの探索と、(2)パケットヘッダの情報とフィルタリングルールに記載された情報との比較処理との、両方に二分検索法が用いられることは、検索処理速度の低下を招きかねない。
前記処理(2)については、情報の比較となるため、二分検索法の代替処理が困難である。したがって、前記処理(1)を高速化することが課題となり、処理の改善が期待される。
本発明は、前記従来技術の課題を解決するためになされたものであり、本発明の目的は、パケットに付与されたフィルタリングIDと同じ値をもつフィルタリングルールの高速探索を実現することが可能な高速検索対応高多重ユーザ収容ファイアウォール装置を提供することにある。
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述及び添付図面によって明らかにする。
【0015】
【課題を解決するための手段】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、下記の通りである。
前述の課題を解決するために、本発明では、フィルタリングテーブルのフィルタリングポリシを構成する各フィルタリングルールに記載する情報として、(1)比較すべきパケットヘッダ情報と動作(通過または廃棄)を記述したルール自身に加え、(2)次に検索すべきルールを格納するメモリアドレスとを導入したことを特徴とする。
本発明によれば、フィルタリング対象のパケットが、あるフィルタリングルールとの条件に合致しない場合、次のフィルタリングルールは、記載されたメモリアドレスにより直接見出すことができるため、前記(1)のフィルタリングIDが一致するフィルタリングルールの探索は、従来技術に比べ、格段に高速化する。
【0016】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
なお、実施の形態を説明するための全図において、同一機能を有するものは同一符号を付け、その繰り返しの説明は省略する。
[実施の形態1]
図1は、本発明の実施の形態1のフィルタリングルールの構成を示す図である。
図2は、本実施の形態の高速検索対応高多重ユーザ収容ファイアウォール装置の概略構成を示すブロック図であり、また、図5は、本実施の形態で適用される仮想ファイアウォール内のフィルタリングテーブルの概念を示す図である。なお、図2および図5に示すものは、従来技術でも利用されていたものである。
また、本実施の形態では、ユーザからのネットワーク接続方式はPPP(Point to Point Protocol)、認証用通信はRADIUSとする。
ファイアウォール装置300は、複数の仮想ファイアウォール(302,303,…,304)を具備する。
さらに、図5に示すように、各仮想ファイアウォール(302,303)には、それぞれ、フィルタリングIDによって特定される複数のフィルタリングテーブル(561,562,563)が存在し、各フィルタリングテーブル(561,562,563)には、各ユーザの独立したフィルタリングポリシが記載される。
【0017】
本実施の形態では、ユーザ#aとユーザ#bが定めるセキュリティポリシが仮想ファイアウォール302に、ユーザ#dが定めるセキュリティポリシが仮想ファイアウォール303に格納される。
さらに、ユーザ#aは仮想ファイアウォール302の中で、フィルタリングIDがαのフィルタリングテーブル561に、ユーザ#bはフィルタリングIDがβのフィルタリングテーブル562に、ユーザ#dは仮想ファイアウォール303の中で、フィルタリングIDがγのフィルタリングテーブル563に、それぞれのセキュリティポリシが記載されている。
ここで、ユーザ#aとユーザ#bとを同じ仮想ファイアウォール302に収容するのは、例えば、仮想ファイアウォールがインターネットプロバイダ毎に構築されており、ユーザ#aとユーザ#bとが同じインターネットプロバイダに属する場合等の理由が挙げられる。
ただし、図5に示すフィルタリングテーブル(561,562,563)は概念的なものであり、実際のフィルタリングテーブルは、図1に示すような構成となっている。
【0018】
各フィルタリングルール(11,12,21,22,23,…)には、比較すべきパケットヘッダ情報と動作(通過または廃棄)を記述したルール(ルール1、2、3、4、5、…)と、次に検索すべきフィルタリングルールが格納されているメモリアドレスを表す次ルールメモリアドレス(アドレス情報)とが記述される。
また、フィルタリング先頭ルール管理テーブル31は、フイルタリングIDと、各フィルタリングテーブルの先頭のフィルタリングルールが格納されているメモリアドレスとの対応を管理する。
さらに、各フィルタリングテーブルの最終のフィルタリングルールに対して、次ルールメモリアドレスの欄を無記載(図1では、NULL)とすることにより、このフィルタリングルールが最終のフィルタリングルールであることを識別する。
以上の説明を整理すると、例えば、図5におけるフィルタリングIDがαのフィルタリングテーブル561は、フィルタリング先頭ルール管理テーブル31のフィルタリングID(α)が管理されている行、フィルタリングルール11、および、フィルタリングルール12により構成され、また、フィルタリングIDがβのフィルタリングテーブル562は、フィルタリング先頭ルール管理テーブル31のフィルタリングID(β)が管理されている行、フィルタリングルール21および、フィルタリングルール22、フィルタリングルール23より構成されることになる。
【0019】
図8は、本実施の形態のファイアウォール装置の動作を示すシーケンス図である。以下、図8を用いて、本実施の形態のファイアウォール装置の動作について説明する。
振分け管理テーブル301には、事前に設定可能なユーザ名、仮想ファイアウォールIDおよびフィルタリングIDが登録されている。
すなわち、振分け管理テーブル301には、ユーザ名#a、仮想ファイアウォールID(302)およびフィルタリングID(α)の対応付け、ユーザ名#b、仮想ファイアウォールID(302)およびフィルタリングID(β)の対応付け、ユーザ名#d、仮想ファイアウォールID(303)およびフィルタリングID(γ)の対応付けが登録される。
ただし、各ユーザ端末のユーザIDとなるユーザIPアドレスは未確定のため、この時点では登録することができない(図8に示す振分け管理テーブル301−1の状態)。
ユーザIPアドレスが振分け管理テーブル301に登録されない限り、各ユーザからのパケットを、それぞれの仮想ファイアウォールに振分けること、フィルタリングIDの付与を行うことができない。
【0020】
本実施の形態では、ユーザ#aの端末311がインタネット310にネットワーク接続し、その後、接続相手端末313とIP通信を行うものとする。
まず、ユーザ端末311からのネットワーク接続要求として、ユーザ端末311とファイアウォール装置300との間でLCP(Link Control Protocol)の情報がやりとりされる(図8の839)。
この後行われる認証情報のやりとり(図8の840)により、ファイアウォール装置300はユーザ端末311から送信されるユーザ名#aを抽出し、ユーザ名#aを保持する(図8の処理ポイント850)。
そして、認証情報(ユーザ名およびパスワード)を、RADIUSサーバ330に通知する(図8の841)。
RADIUSサーバ330にて認証され、その応答を受信すると(図8の842)、ファイアウォール装置300はその応答842に記載されているユーザ端末に付与すべきユーザIPアドレスを保持する。このユーザIPアドレスを[a.a.a.a]とする。
そして、ユーザ名#aを検索キーとして、振分け管理テーブル301の中のユーザ名が#aと記載されている行に、このユーザIPアドレス[a.a.a.a]を登録する(図8の処理ポイント851、図8の振分け管理テーブル301−2の状態)。
【0021】
また、ファイアウォール装置300は、これと同時に、NCP(Network Control Protocol)の情報をユーザ端末311とファイアウォール装置300との間でやりとりする(図8の843)中で、ユーザIPアドレス[a.a.a.a]をユーザ端末311に送り、ユーザ端末311は自ユーザIPアドレスが[a.a.a.a]であると認識する。
NCPが終了後、ユーザ端末とネットワークとの間でPPP接続が確立される。
その後、ユーザ端末311から接続相手端末313に向け送信されるパケット321を、ファイアウォール装置300が受信すると、その送信元IPアドレスとして記載される[a.a.a.a]を検索キーとして振分け管理テーブル301−2を検索し、[a.a.a.a]の行に記載されている仮想ファイアウォールID(ID=302)、フィルタリングID(ID=α)を抽出し、当該パケット321を仮想ファイアウォール302に振り分けるとともに、当該パケット321に、αのフィルタリングIDを付与する(図8の処理ポイント852)。
フィルタリングIDを付与されたパケット322は、図5に示すように、振り分けられた仮想ファイアウォール302内において、フィルタリングIDがαのフィルタリングテーブル561に記載されているユーザ#aのセキュリティポリシに従うフィルタリングルールに従い、通過あるいは廃棄処理が適用される。
【0022】
前述した通り、フィルタリングIDがαのフィルタリングテーブル561は、実際には、図1に示す構成になっている。
したがって、実際には、フィルタリングID(α)を付与されたパケット322が仮想ファイアウォール302内に到着すると、まず、フィルタリング先頭ルール管理テーブル31から、フィルタリングID(α)と対応付けられる先頭ルールメモリアドレス(pppp)を抽出する。
そして、抽出したメモリアドレスppppのメモリ領域に記載されるルール1に記載された情報と、パケットヘッダの情報との比較処理を行う。
比較の結果、パケットヘッダの情報がルール1の条件に合致する場合、ルール1に記載される動作に従い、パケット322は通過あるいは廃棄される。
一方、比較の結果、パケットヘッダの情報がルール1の条件に合致しない場合、ルール1の次ルールメモリアドレスに記載されるメモリアドレスを参照し、参照したメモリアドレスpppaのメモリ領域に記載されるルール2に記載された情報と、パケットヘッダの情報との比較処理を行う。
比較の結果、パケットヘッダの情報がルール2の条件に合致する場合、ルール2に記載される動作に従い、パケット322は通過あるいは廃棄される。
【0023】
一方、比較の結果、パケットヘッダの情報がルール2の条件に合致しない場合、ルール2の次ルールメモリアドレスを参照するが、その記載が無い(NULL)ため、ルール2がフィルタリングテーブル561の最終ルールであることを認識し、どのフィルタリングルールにも条件が不一致だった場合の処理を行う。なお、ファイアウォールの場合、廃棄が一般的である。
また、通信相手端末313からユーザ端末311に向け送信されるパケット323を、ファイアウォール装置300が受信すると、その宛先IPアドレスとして記載される[a.a.a.a]を検索キーとして、振分け管理テーブル(図8の301−2)を検索し、[a.a.a.a]の行に記載されている仮想ファイアウォールID(ID=302)、フィルタリングID(ID=α)を抽出し、当該パケット323を仮想ファイアウォール302に振り分けるとともに、当該パケット323に、αのフィルタリングIDを付与する(図3の処理ポイント853)。
フィルタリングIDを付与されたパケット324は、振り分けられた仮想ファイアウォール302内において、フィルタリングIDがαのフィルタリングテーブル561に記載されているユーザ#aのセキュリティポリシに従うフィルタリングルールに従い、通過あるいは廃棄処理が適用される。
【0024】
ユーザ端末311から接続相手端末313に向け送信されるパケット322と同様に、実際には、フィルタリング先頭ルール管理テーブル31から先頭ルールメモリアドレスを抽出する処理や、抽出したメモリアドレスのメモリ領域に記載されるルールとの比較処理が行われる。
ユーザ#bの端末312がインタネット310にネットワーク接続し、その後、接続相手端末313とIP通信を行う場合も、同様の手順により、端末312が送受信するパケットは仮想ファイアウォール302に振り分けられ、その後、フィルタリングテーブル562に記載されているユーザ#bのセキュリティポリシに従うフィルタリングルールに従い、通過あるいは廃棄処理が適用される。
以上説明したように、本実施の形態では、次に検索すべきルールが、メモリアドレスにより直接見出すことができるため、次ルールの検索を高速化することができる。
【0025】
[実施の形態2]
本発明の実施の形態2の高速検索対応高多重ユーザ収容ファイアウォール装置は、仮想ファイアウォールを備えていない点で、前述の実施の形態1のファイアウォール装置と相異する。
以下、本実施の形態のファイアウォール装置について、前述の実施の形態1のファイアウォール装置との相違点を中心に説明する。
なお、本実施の形態においても、ユーザからのネットワーク接続方式はPPP、認証用通信はRADIUSとする。
図9は、本発明の実施の形態2の高速検索対応高多重ユーザ収容ファイアウォール装置の概略構成を示すブロック図である。
図9に示すように、本実施の形態のファイアウォール装置300は、フィルタリングIDによって特定される複数のフィルタリングテーブル(561,562)を有し、各フィルタリングテーブルには、各ユーザの独立したフィルタリングポリシが記載される。
本実施の形態では、ユーザ#aはフィルタリングIDがαのフィルタリングテーブル561に、ユーザ#bはフィルタリングIDがβのフィルタリングテーブル562に、それぞれのセキュリティポリシが記載されている。
図10は、本実施の形態のファイアウォール装置の動作を示すシーケンス図である。以下、図10を用いて、本実施の形態のファイアウォール装置の動作について説明する。
【0026】
振分け管理テーブル301には、事前に設定可能なユーザ名およびフィルタリングIDが登録されている。
すなわち、振分け管理テーブル301には、ユーザ名#aおよびフィルタリングIDαの対応付け、ユーザ名#bおよびフィルタリングIDβの対応付けが登録される。
ただし、各ユーザ端末のユーザIDとなるユーザIPアドレスは未確定のため、この時点では登録することができない(図10に示す振分け管理テーブル301−1の状態)。
ユーザIPアドレスが振分け管理テーブル301に登録されない限り、各ユーザからのパケットに対し、フィルタリングIDの付与を行うことができない。
本実施の形態では、ユーザ#aの端末311がインタネット310にネットワーク接続し、その後、接続相手端末313とIP通信を行うものとする。
ユーザ端末311とファイアウォール装置300との間でのLCPの情報がやりとり、認証情報のやりとり(図10の839)から、ユーザ端末311とファイアウォール装置300との間でのNCPの情報をやりとり(図10の843)までの動作は、実施の形態1と同様であるので、再度の説明は省略する。
NCPが終了後、ユーザ端末とネットワークとの間でPPP接続が確立される。
【0027】
その後、ユーザ端末311から接続相手端末313に向け送信されるパケット321を、ファイアウォール装置300が受信すると、その送信元IPアドレスとして記載される[a.a.a.a]を検索キーとして振分け管理テーブル(図10の301−2)を検索し、[a.a.a.a]の行に記載されているフィルタリングID(ID=α)を抽出し、当該パケット321に対し、αのフィルタリングIDを付与する(図10の処理ポイント852)。
フィルタリングIDを付与されたパケット322は、フィルタリングIDがαのフィルタリングテーブル561に記載されているユーザ#aのセキュリティポリシに従うフィルタリングルールに従い、通過あるいは廃棄処理が適用される。
実施の形態1と同様、フィルタリングIDがαのフィルタリングテーブル561は、実際には、図11に示す構成になっている。
図11は、本発明の実施の形態2のフィルタリングルールの構成を示す図である。
したがって、実際には、フィルタリングID(α)を付与されたパケット322は、まず、フィルタリング先頭ルール管理テーブル31から、フィルタリングID(α)と対応付けられる先頭ルールメモリアドレス(pppp)を抽出する。
【0028】
そして、抽出したメモリアドレスppppのメモリ領域に記載されるルール1に記載された情報と、パケットヘッダの情報との比較処理を行う。
比較の結果、パケットヘッダの情報がルール1の条件に合致する場合、ルール1に記載される動作に従い、パケット322は通過あるいは廃棄される。
一方、比較の結果、パケットヘッダの情報がルール1の条件に合致しない場合、ルール1の次ルールメモリアドレスに記載されるメモリアドレスを参照し、参照したメモリアドレスpppaのメモリ領域に記載されるルール2に記載された情報と、パケットヘッダの情報との比較処理を行う。
比較の結果、パケットヘッダの情報がルール2の条件に合致する場合、ルール2に記載される動作に従い、パケット322は通過あるいは廃棄される。
一方、比較の結果、パケットヘッダの情報がルール2の条件に合致しない場合、ルール2の次ルールメモリアドレスを参照するが、その記載が無い(NULL)ため、ルール2がフィルタリングテーブル561の最終ルールであることを認識し、どのフィルタリングルールにも条件が不一致だった場合の処理を行う。なお、ファイアウォールの場合、廃棄が一般的である。
【0029】
また、通信相手端末313からユーザ端末311に向け送信されるパケット323をファイアウォール装置300が受信すると、その宛先IPアドレスとして記載される[a.a.a.a]を検索キーとして振分け管理テーブル(図10の301−2)を検索し、[a.a.a.a]の行に記載されているフィルタリングID(ID=α)を抽出し、該パケット323に対して、αのフィルタリングIDを付与する(図10の処理ポイント853)。
フィルタリングIDを付与されたパケット324は、フィルタリングIDがαのフィルタリングテーブル561に記載されているユーザ#aのセキュリティポリシに従うフィルタリングルールに従い、通過あるいは廃棄処理が適用される。
ユーザ端末311から接続相手端末313に向け送信されるパケット322と同様に、実際には、フィルタリング先頭ルール管理テーブル31から先頭ルールメモリアドレスを抽出する処理や、抽出したメモリアドレスのメモリ領域に記載されるルールとの比較処理が行われる。
ユーザ#bの端末312がインタネット310にネットワーク接続し、その後、接続相手端末313とIP通信を行う場合も、同様の手順により、端末312が送受信するパケットはフィルタリングテーブル562に記載されているユーザ#bのセキュリティポリシに従うフィルタリングルールに従い、通過あるいは廃棄処理が適用される。
以上説明したように、本実施の形態では、次に検索すべきルールが、メモリアドレスにより直接見出すことができるため、次ルールの検索を高速化することができる。
【0030】
[実施の形態3]
本発明の実施の形態3のファイアウォール装置は、フィルタリングIDを、個別フィルタリングIDと共通フィルタリングIDに2分化した点で、前述の実施の形態1のファイアウォール装置と相異する。
以下、本実施の形態のファイアウォール装置について、前述の実施の形態1のファイアウォール装置との相違点を中心に説明する。
なお、本発明の実施の形態3のファイアウォール装置の概略構成は、図2と同じである。また、本実施の形態においても、ユーザからのネットワーク接続方式はPPP、認証用通信はRADIUSとする。
本実施の形態のファイアウォール装置では、前述の実施の形態1のフィルタリングIDを、さらに個別フィルタリングIDと共通フィルタリングIDに2分化し、各ユーザ個別のフィルタリングポリシは個別フィルタリングテーブルに記載し、複数のユーザにて共通化することが可能なフィルタリングポリシは共通フィルタリングテーブルに記載する。
したがって、本実施の形態において、図2に示す振分け管理テーブル301および図8に示す振分け管理テーブル(301−1)は、図6の振分け管理テーブル601に置き換えられ、図8に示す振分け管理テーブル(301−2)は、図12の振分け管理テーブル1101に置き換えられる。
【0031】
また、図7は、本実施の形態のファイアウォール装置の仮想ファイアウォール内のフィルタリングテーブルの概念を示す図である。
本実施の形態のファイアウォール装置300は、複数の仮想ファイアウォール(302,303,…,304)を具備している。
さらに、図7に示すように、各仮想ファイアウォール(302,303)にはそれぞれ、個別フィルタリングIDによって特定される複数のフィルタリングテーブル(661,662,663)、および共通フィルタリングIDによって特定される複数のフィルタリングテーブル(571、572)が存在する。
各ユーザ個別のフィルタリングポリシは個別フィルタリングテーブル(661,662,663)に、複数のユーザにて共通化することが可能なフィルタリングポリシは共通フィルタリングテーブル(571,572)に記載されている。
また、これに伴い、図6に示すように、振分け管理テーブル601は、ユーザ名、仮想ファイアウォールID、個別フィルタリングIDおよび共通フィルタリングIDを管理する。
【0032】
本実施の形態では、ユーザ#aとユーザ#bが定めるセキュリティポリシが仮想ファイアウォール302に、ユーザ#dが定めるセキュリティポリシが仮想ファイアウォール303に格納されている。
さらに、ユーザ#aの個別フィルタリングポリシは仮想ファイアウォール302の中で、フィルタリングIDがαの個別フィルタリングテーブル661に、ユーザ#bの個別フィルタリングポリシはフィルタリングIDがβの個別フィルタリングテーブル662に、ユーザ#dの個別フィルタリングポリシは仮想ファイアウォール303の中で、フィルタリングIDがγの個別フィルタリングテーブル663に、それぞれ記載されている。
また、ユーザ#aとユーザ#bは、フィルタリングIDがIの共通フィルタリングテーブル571に記載のフィルタリングポリシも適用される。
同様に、ユーザ#dは、フィルタリングIDがIIの共通フィルタリングテーブル572に記載のフィルタリングポリシも適用される。
ただし、図7に示す個別フィルタリングテーブル(661,662,663)および共通フィルタリングテーブル(571,572)は概念的なものであり、実際の各フィルタリングテーブルは、図13に示すような構成となっている。
【0033】
図13は、本発明の実施の形態3のフィルタリングルールの構成を示す図である。
個別フィルタリングルール(41,42,…)には、比較すべきパケットヘッダ情報と動作(通過または廃棄)を記述したフィルタリングルール(ルール6、7、…)と、次に検索すべきフィルタリングルールが格納されているメモリアドレスを表す次ルールメモリアドレスとが記述される。
また、個別フィルタリング先頭ルール管理テーブル32に、個別フィルタリングIDと、各個別フィルタリングテーブルの先頭のフィルタリングルールを格納するメモリアドレスとの対応を管理する。
さらに、各個別フィルタリングテーブルの最終のフィルタリングルールに対して、次ルールメモリアドレスの欄を無記載(図1ではNULL)とすることにより、当該フィルタリングルールが最終ルールであることを識別する。
同様にして、共通フィルタリングルール(51,52,…)には、比較すべきパケットヘッダ情報と動作(通過または廃棄)を記述したルール(ルール8,9,…)と、次に検索すべきフィルタリングルールが格納されているメモリアドレスを表す次ルールメモリアドレスとが記述される。
また、共通フィルタリング先頭ルール管理テーブル33は、共通フィルタリングIDと、各共通フィルタリングテーブルの先頭のフィルタリングルールが格納されるメモリアドレスとの対応を管理する。
さらに、各共通フィルタリングテーブルの最終のフィルタリングルールに対して、次ルールメモリアドレスの欄を無記載(図1ではNULL)とすることにより、当該フィルタリングルールが最終ルールであることを識別する。
【0034】
以上の説明を整理すると、例えば、図7における個別フィルタリングIDがαのフィルタリングテーブル661は、個別フィルタリング先頭ルール管理テーブル32の個別フィルタリングID(α)が管理されている行、フィルタリングルール41、および、フィルタリングルール42により構成される。
また、共通フィルタリングIDについては、例えば、共通フィルタリングIDがIのフイルタリングテーブル571は、共通フィルタリング先頭ルール管理テーブル33の共通フィルタリングID(I)が管理されている行、共通フィルタリングルール51および、共通フィルタリングルール52より構成されることになる。
以下、図8を用いて、本実施の形態のファイアウォール装置の動作について説明する。
振分け管理テーブル601には、事前に設定可能なユーザ名、仮想ファイアウォールID、個別フィルタリングIDおよび共通フィルタリングIDが登録されている。
すなわち、振分け管理テーブル601には、ユーザ名#a、仮想ファイアウォールID(302)、個別フィルタリングID(α)および共通フィルタリングID(I)の対応付け、ユーザ名#b、仮想ファイアウォールID(302)、個別フィルタリングID(β)および共通フィルタリングID(I)の対応付け、ユーザ名#d、仮想ファイアウォールID(303)、個別フィルタリングID(γ)および共通フィルタリングID(II)の対応付けが登録される。
【0035】
ただし、各ユーザ端末のユーザIDとなるユーザIPアドレスは未確定のため、この時点では登録することができない(図6の振分け管理テーブル601の状態)。
ユーザIPアドレスが振分け管理テーブル601に登録されない限り、各ユーザからのパケットをそれぞれの仮想ファイアウォールに振分けること、個別フィルタリングIDおよび共通フィルタリングIDの付与を行うことができない。
本実施の形態では、ユーザ#aの端末311がインタネット310にネットワーク接続し、その後、接続相手端末313とIP通信を行うものとする。
ユーザ端末311とファイアウォール装置300との間でのLCPの情報がやりとりから、ユーザ端末311とファイアウォール装置300との間でのNCPの情報をやりとりまでの動作は、実施の形態1と同様であるので、再度の説明は省略する。
NCPが終了後、ユーザ端末とネットワークとの間でPPP接続が確立される。
その後、図2に示すように、ユーザ端末311から接続相手端末313に向け送信されるパケット321をファイアウォール装置300が受信すると、その送信元IPアドレスとして記載される[a.a.a.a]を検索キーとして振分け管理テーブル1101を検索し、[a.a.a.a]の行に記載されている仮想ファイアウォールID=302、個別フィルタリングID=αおよび共通フィルタリングID=Iを抽出し、当該パケット321を仮想ファイアウォール302に振り分けるとともに、αの個別フィルタリングID、およびIの共通フィルタリングIDを付与する(図8の処理ポイント852)。
【0036】
個別フィルタリングIDおよび共通フィルタリングIDが付与されたパケット322は、図7に示すように、仮想ファイアウォール302内において、個別フィルタリングID=αの個別フィルタリングテーブル661に記載のユーザ#aのセキュリティポリシに従うフィルタリングルールに従い、通過あるいは廃棄処理が行われる。
前述の通り、個別フィルタリングIDがαの個別フィルタリングテーブル661は、実際には、図13に示す構成になっている。
したがって、実際には、個別フィルタリングID(α)を付与されたパケット322が仮想ファイアウォール302内に到着すると、まず、個別フィルタリング先頭ルール管理テーブル32から、個別フィルタリングID(α)と対応付けられる先頭ルールメモリアドレス(pppp)を抽出する。
そして、抽出したメモリアドレスppppのメモリ領域に記載されるルール6に記載された情報と、パケットヘッダの情報との比較処理を行う。
比較の結果、パケットヘッダの情報がルール6の条件に合致する場合、ルール6に記載される動作に従い、パケット322は通過あるいは廃棄される。
一方、比較の結果、パケットヘッダの情報がルール6の条件に合致しない場合、ルール6の次ルールメモリアドレスに記載されるメモリアドレスを参照し、参照したメモリアドレスpppaのメモリ領域に記載されるルール7に記載された情報と、パケットヘッダの情報との比較処理を行う。
比較の結果、パケットヘッダの情報がルール7の条件に合致する場合、ルール7に記載される動作に従い、パケット322は通過あるいは廃棄される。
【0037】
一方、比較の結果、パケットヘッダの情報がルール7の条件に合致しない場合、ルール7の次ルールメモリアドレスを参照するが、その記載が無い(NULL)ため、ルール7が個別フィルタリングテーブル661の最終ルールであることを認識する。
もし個別フィルタリングテーブル661に記載のフィルタリングポリシに、適用すべきルールが存在しなかった場合、パケット322は、次に、共通フィルタリングID=Iの共通フィルタリングテーブル571に記載のフィルタリングポリシに従い、通過あるいは廃棄処理が行われる。
個別フィルタリングテーブル661に対する処理と同様に、共通フィルタリングIDがIの共通フィルタリングテーブル571は、実際には、図13に示す構成になっている。
したがって、実際には、共通フィルタリングID(I)が付与されたパケット322は、共通フィルタリング先頭ルール管理テーブル33から、共通フィルタリングID(I)と対応付けられる先頭ルールメモリアドレス[rrrr]を抽出する。そして抽出したメモリアドレス[rrrr]のメモリ領域に記載されるルール8に記載された情報と、パケットヘッダの情報との比較処理を行う。
比較の結果、パケットヘッダの情報がルール8の条件に合致する場合、ルール8に記載される動作に従い、パケット322は通過あるいは廃棄される。
一方、比較の結果、パケットヘッダの情報がルール8の条件に合致しない場合、ルール8の次ルールメモリアドレスに記載されるメモリアドレスを参照し、参照したメモリアドレス[rrra]のメモリ領域に記載されるルール9に記載された情報と、パケットヘッダの情報との比較処理を行う。
比較の結果、パケットヘッダの情報がルール9の条件に合致する場合、ルール9に記載される動作に従い、パケット322は通過あるいは廃棄される。
【0038】
一方、比較の結果、パケットヘッダの情報がルール9の条件に合致しない場合、ルール9の次ルールメモリアドレスを参照するが、その記載が無い(NULL)ため、ルール9が共通フィルタリングテーブル571の最終ルールであることを認識し、どのフィルタリングルールにも条件が不一致だった場合の処理を行う。なお、ファイアウォールの場合、廃棄が一般的である。
また、通信相手端末313からユーザ端末311に向け送信されるパケット323をファイアウォール装置300が受信すると、その宛先IPアドレスとして記載される[a.a.a.a]を検索キーとして振分け管理テーブル1101を検索し、[a.a.a.a]の行に記載されている仮想ファイアウォールID(ID=302)、個別フィルタリングID(ID=α)および共通フィルタリングID(ID=I)を抽出し、該パケット323を仮想ファイアウォール302に振り分けるとともに、αの個別フィルタリングIDおよび1の共通フィルタリングIDを付与する(図8の処理ポイント853)。
個別フィルタリングIDおよび共通フィルタリングIDが付与されたパケット324は、個別フィルタリングIDがαの個別フィルタリングテーブル661に記載のユーザ#aのセキュリティポリシに従うフィルタリングルールに従い、通過あるいは廃棄処理が行われる。
もし、個別フィルタリングテーブル661記載のフィルタリングポリシに、適用すべきルールが存在しなかった場合、パケット324は、次に共通フィルタリングIDがIの共通フィルタリングテーブル571に記載のフィルタリングポリシに従い、通過あるいは廃棄処理が行われる。
【0039】
ユーザ端末311から接続相手端末313に向け送信されるパケット322と同様に、実際には、個別フィルタリング先頭ルール管理テーブル32および共通フィルタリング先頭ルール管理テーブル33のそれぞれから先頭ルールメモリアドレスを抽出する処理や、抽出したメモリアドレスのメモリ領域に記載されるルールとの比較処理が行われる。
ユーザ#bの端末312がインタネット310にネットワーク接続し、その後、接続相手端末313とIP通信を行う場合も、同様の手順により、端末312が送受信するパケットは仮想ファイアウォール302に振り分けられ、その後、個別フィルタリングテーブル662に記載されているユーザ#bのセキュリティポリシに従うフィルタリングルール、および共通フィルタリングテーブル571に記載されているフィルタリングルールに従い、通過あるいは廃棄処理が適用される。
以上説明したように、本実施の形態では、次に検索すべきルールが、メモリアドレスにより直接見出すことができるため、次ルールの検索を高速化することたできる。
以上、本発明者によってなされた発明を、前記実施の形態に基づき具体的に説明したが、本発明は、前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは勿論である。
【0040】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば、下記の通りである。
本発明によれば、フィルタリングテーブルのフィルタリングポリシを構成する各フィルタリングルールに記載する情報として、比較すべきパケットヘッダ情報と動作(通過または廃棄)を記述したルール自身に加え、次に検索すべきルールを格納するアドレス情報を導入するようにしたので、次のフィルタリングルールが、アドレス情報により直接示されるため、次のフィルタリングルールの検索を高速化することが可能となる。
【図面の簡単な説明】
【図1】本発明の実施の形態1のフィルタリングルールの構成を示す図である。
【図2】本発明の実施の形態1の高速検索対応高多重ユーザ収容ファイアウォール装置の概略構成を示すブロック図である。
【図3】従来のファイアウォール装置の概略構成を示すブロック図である。
【図4】図3に示すファイアウォール装置の動作を示すシーケンス図である。
【図5】本発明の実施の形態1で適用される仮想ファイアウォール内のフィルタリングテーブルの概念を示す図である。
【図6】個別フィルタリングIDおよび共通フィルタリングIDを管理する振り分け管理テーブルの構成を示す図である。
【図7】仮想ファイアウォール内における個別フィルタリングテーブルおよび共通フィルタリングテーブルの概念を示す図である。
【図8】本発明の実施の形態1のファイアウォール装置の動作を示すシーケンス図である。
【図9】本発明の実施の形態2の高速検索対応高多重ユーザ収容ファイアウォール装置の概略構成を示すブロック図である。
【図10】本発明の実施の形態2のファイアウォール装置の動作を示すシーケンス図である。
【図11】本発明の実施の形態2のフィルタリングルールの構成を示す図である。
【図12】ユーザIPアドレスが登録された個別フィルタリングIDおよび共通フィルタリングIDを管理する振り分け管理テーブルの構成を示す図である。
【図13】本発明の実施の形態3のフィルタリングルールの構成を示す図である。
【符号の説明】
10,12,21,22,23,41,42,51,52…フィルタリングルール、31…フィルタリング先頭ルール管理テーブル、32…個別フィルタリング先頭ルール管理テーブル、33…共通フィルタリング先頭ルール管理テーブル、100,300…ファイアウォール装置、101,301,1101…振分け管理テーブル、102,103,104,302,303,304…仮想ファイアウォール、110,310…インタネット、111,112,113,114,115,211,212,213,311,312,313,314,315…端末、121,122,321,322,323,324…パケット、130,330…RADISサーバ、561,562,563,571,572,661,662,663…フィルタリングテーブル。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a highly multi-user accommodating firewall apparatus, and more particularly to a firewall apparatus for protecting users connected to the Internet.
[0002]
[Prior art]
As the number of constantly connected users increases and the need for security increases, it is required to provide a security service that solves the lack of skills at a low cost to users with insufficient security knowledge.
As a method of providing a firewall device that solves this problem, a method of deploying a firewall device on the network side can be considered. That is, this method is expected to be economical due to the aggregation of accommodated users and to reduce user operations due to outsourcing.
However, it is necessary to provide a security policy for each user, and the firewall device according to the present method requires an architecture for constructing a virtual firewall for each user in one physical firewall device.
Allocation between a user terminal or server and a virtual firewall is usually realized by associating a user ID (user IP address) with a virtual firewall ID.
When the virtual firewall is applied to the always-on service, the user IP address is assigned for the first time when a connection between the user terminal and the network is established, specifically, when a PPP (Point to Point Protocol) session is established. In addition, since the user IP address is generally variable, the correspondence between the user IP address and the virtual firewall ID cannot be registered in advance.
[0003]
As a conventional technique for dynamically associating a user IP address and a virtual firewall ID in accordance with such PPP establishment, for example, there is one described in Patent Document 1 below.
The prior art described in the following Patent Document 1 will be described below with reference to FIGS. 3 and 4.
As shown in FIG. 3, the firewall apparatus 100 includes virtual firewalls (102, 103,..., 104) for each user.
In the distribution management table 101, user names and virtual firewall IDs that can be set in advance are registered.
Here, the security policy defined by the user #a is stored in the virtual firewall 102, and the security policy defined by the user #b is stored in the virtual firewall 103. The distribution management table 101 stores the user name #a and the virtual firewall ID (102). ), The association between the user name #b and the virtual firewall ID (103) is registered.
However, since the user IP address serving as the user ID of each user terminal has not been determined, it cannot be registered at this point.
Unless the user IP address is registered in the distribution management table 101, packets from each user cannot be distributed to the respective virtual firewalls.
[0004]
Hereinafter, the operation of the firewall device shown in FIG. 3 will be described with reference to FIG. FIG. 4 is a sequence diagram showing the operation of the firewall device shown in FIG.
First, as a network connection request from the user terminal 111, LCP (Link Control Protocol) information is exchanged between the user terminal 111 and the firewall 100 (139 in FIG. 4).
When receiving the authentication information for network connection from the user terminal (140 in FIG. 4), the firewall apparatus 100 holds the user name described in the authentication information (processing point 150 in FIG. 4).
Then, the authentication information (user name and password) is notified to the RADIUS server 130 as the authentication server (141 in FIG. 4).
When authenticated by the RADIUS server 130 and receiving the response (142 in FIG. 4), the firewall apparatus 100 holds the user IP address to be assigned to the user terminal described in the response.
Then, this user IP address is registered in the distribution management table 101 using the user name as a search key (the processing point 151 in FIG. 4 and the state of the distribution management table 101-2 in FIG. 4).
[0005]
After the connection between the user terminal 111 and the network is established, the distribution management table 101 is searched for the packet 121 transmitted from the user terminal 111 using the transmission source IP address as a search key, and the transmission source IP address The associated virtual firewall ID is extracted, and the packet 121 is distributed to the virtual firewall 102 specified by the virtual firewall ID (processing point 152 in FIG. 4).
Further, the distribution management table 101 is searched for the packet 122 transmitted from the communication partner terminal 113 of the user terminal 111 using the destination IP address as a search key, and the virtual firewall ID associated with the destination IP address is obtained. The packet 122 is extracted and distributed to the virtual firewall 102 specified by the virtual firewall ID (processing point 153 in FIG. 4).
With the above operation, the user IP address and the virtual firewall ID are dynamically used by using the authentication information for network connection from the user terminal for the communication mode in which the user IP address and the virtual firewall ID cannot be associated in advance. And filtering rules according to the security policy defined by the user can be applied to packets transmitted or received by the user terminal.
[0006]
The architecture for constructing a virtual firewall for each user in one physical firewall device as described above is mainly applied to a data center at first, and the number of accommodated users is assumed to be several hundred to several thousand. ing.
Currently, many of the highly reliable virtual firewall devices that have been implemented as devices and have been introduced as services have been developed for data centers, and the actual number of users that can be accommodated is, as described above, hundreds to thousands. ing.
On the other hand, in the case of the always-on service, the number of accommodated users is far greater than in the case of application to the data center. As an assumed scale, the number of accommodated users is on the order of tens of thousands to hundreds of thousands.
Although the scale of the number of accommodated users is different, when developing a virtual firewall device for always-on services, development and additional development based on the virtual firewall device for data centers is used from the viewpoint of development efficiency and utilization of existing technologies. This technique is extremely effective.
Therefore, the problem for providing a virtual firewall device for always-on services is to improve the number of multiplexed users.
In addition, since the always-on service has a large number of multiplexed users, when ensuring serviceability that provides an independent security policy for each user, the total number of filtering rules is also proportional to the number of multiplexed users.
However, in fact, the filtering rules of each user include rules that are common to many users, and therefore, when viewed from the viewpoint of the entire firewall apparatus, the rules overlap and are inefficient. As a result, the amount of filtering table increases.
[0007]
As described above, in order to develop a virtual firewall device for always-on services, improvement of the number of multiplexed users and efficiency of the filtering table are problems.
As a prior art for solving this problem, for example, there is one described in Patent Document 2 below.
The prior art described in Patent Document 2 below will be described below with reference to FIGS. 2, 5, 6, and 7.
In this conventional technique, a filtering ID is introduced, and a filtering policy for each user is identified by the filtering ID.
In FIG. 2, the firewall apparatus 300 includes a plurality of virtual firewalls (302, 303,..., 304) as in the above-described conventional technology.
In the distribution management table 301, in addition to the user name and virtual firewall ID managed in the virtual firewall technology described in FIG. 3, a filtering ID is registered as a presettable parameter.
Further, as shown in FIG. 5, each virtual firewall stores a filtering table for each filtering ID, and according to the distribution management table 301 described above, the security policy of which filtering table in each virtual firewall is determined by each user. It is decided whether to apply.
[0008]
Here, the security policy defined by user #a and user #b is stored in the virtual firewall 302, the security policy defined by user #d is stored in the virtual firewall 303, and the user #a is stored in the virtual firewall 302. The security policy is stored in the filtering table 561 with filtering ID = α, the user #b is in the filtering table 562 with filtering ID = β, and the user #d is in the filtering table 563 with filtering ID = γ in the virtual firewall 303. Are listed.
Therefore, the distribution management table 301 includes the correspondence between the user name #a, the virtual firewall ID 302 and the filtering ID α, the correspondence between the user name #b, the virtual firewall ID 302 and the filtering ID β, the user name #d, the virtual firewall ID 303 and the filtering ID γ. Correspondence is registered.
However, since the user IP address serving as the user ID of each user terminal has not been determined, it cannot be registered at this point.
Unless the user IP address is registered in the distribution management table 101, packets from each user cannot be distributed to the respective virtual firewalls.
[0009]
The operation from receiving authentication information for network connection from the user terminal to registering the user IP address assigned to the user terminal in the distribution management table 301 is the same as the technique shown in FIG.
After the connection between the user terminal and the network is established, in FIG. 2, the distribution management table 301 is searched for the packet 321 transmitted from the user terminal 311 using the transmission source IP address as a search key, and the transmission source IP address Are extracted, and the packet 321 is distributed to the virtual firewall (302 in FIGS. 2 and 5) having the virtual firewall ID and the filtering ID (FIG. 2, FIG. 2). 5).
As shown in FIG. 5, the packet 322 to which the filtering ID is assigned is passed or discarded in accordance with the filtering policy described in the filtering table specified by the filtering ID in the virtual firewall.
For the packet 323 transmitted from the communication partner terminal 313 of the user terminal, in the case of the packet 321 transmitted from the user terminal 311 except that the search key used for searching the distribution management table 301 is the destination user ID. This is the same as the process.
As described above, by introducing the filtering ID, a plurality of independent filtering policies can be managed in each virtual firewall, and the number of multiplexed users can be improved.
In addition, since the search range of the packet for each user is limited to a table that matches the value of the assigned filtering ID, the search processing time is prevented from becoming unnecessarily long.
[0010]
Next, a prior art method for avoiding an increase in the amount of filtering tables and improving efficiency will be described below.
This method is realized by further dividing the above-mentioned filtering ID into an individual filtering ID and a common filtering ID.
Accordingly, the filtering policy for each user is described in the individual filtering table, and the filtering policy that can be shared by a plurality of users is described in the common filtering table.
As shown in FIG. 6, the distribution management table 601 manages user names, virtual firewall IDs, individual filtering IDs, and common filtering IDs.
After the connection between the user terminal and the network is established, as shown in FIG. 2, the distribution management table 601 is searched for the packet 321 transmitted from the user terminal 311 using the transmission source IP address as a search key. A virtual firewall ID, an individual filtering ID, and a common filtering ID associated with the transmission source IP address are extracted, and the packet 321 is distributed to the virtual firewall (302 in FIG. 2) having the virtual firewall ID. A filtering ID is assigned.
[0011]
As shown in FIG. 7, the packet 322 to which the individual filtering ID and the common filtering ID are assigned follows the filtering policy described in the individual filtering table specified by the individual filtering ID (661 in FIG. 7) in the virtual firewall. Passing or discarding is performed.
If there is no rule to be applied to the filtering policy described in the individual filtering table, the packet 322 is then filtered according to the common filtering table identified by the common filtering ID (571 in FIG. 7). Passing or discarding is performed according to the policy.
For the packet 323 transmitted from the communication partner terminal 313 of the user terminal 311, the search key used for searching the distribution management table 601 is the destination user ID, except that the packet 321 transmitted from the user terminal 311 This is the same as the processing in the case.
As described above, in this method, the filtering policy that can be shared by a plurality of users is described in the common filtering table.
So, for example, if 10 users are using two same filtering rules, if this method is not used, a total of 20 rules are listed in the filtering table, whereas according to this method, 2 rules Only need to be described in the filtering table. That is, filtering policy management becomes efficient by introducing a common filtering ID and a common filtering table.
[0012]
As prior art documents related to the invention of the present application, there are the following.
[Patent Document 1]
Japanese Patent Application No. 2003-027828
"Firewall device for dynamic user identifier"
[Patent Document 2]
Japanese Patent Application No. 2003-045222
"High multi-user firewall system"
[0013]
[Problems to be solved by the invention]
As described above, in the prior art, the packet is passed or discarded according to the filtering policy described in the filtering table specified by the filtering ID. That is, in the virtual firewall, it is necessary to search for a filtering rule having this filtering ID using the filtering ID assigned to the packet as a search key.
This search process is usually performed by a binary search method or the like in order to find a filtering rule with a perfect match between the filtering ID given to the packet and the filtering ID described in the filtering table.
Further, the binary search method is usually used for the process of comparing the packet header information and the information described in the filtering rule after finding the filtering rule.
Further, if the found filtering rule does not match the condition, a search process using the filtering ID as a search key is similarly performed to search for the next filtering rule, and the filtering condition matches or the filtering ID is changed. The above-described process is repeated until all the filtering rules that have are searched.
[0014]
For this reason, the binary search method is used for both (1) the search for the filtering rule with the matching filtering ID and (2) the comparison process between the information in the packet header and the information described in the filtering rule. May decrease the search processing speed.
Since the process (2) is information comparison, the alternative process of the binary search method is difficult. Therefore, speeding up the process (1) becomes an issue, and improvement of the process is expected.
The present invention has been made to solve the above-described problems of the prior art, and an object of the present invention is to realize a high-speed search for a filtering rule having the same value as the filtering ID assigned to the packet. An object of the present invention is to provide a high-multiple user accommodation firewall device that supports high-speed search.
The above and other objects and novel features of the present invention will become apparent from the description of this specification and the accompanying drawings.
[0015]
[Means for Solving the Problems]
Of the inventions disclosed in this application, the outline of typical ones will be briefly described as follows.
In order to solve the above-mentioned problem, in the present invention, as information described in each filtering rule constituting the filtering policy of the filtering table, (1) a rule describing packet header information to be compared and operation (passing or discarding) In addition to itself, (2) a memory address for storing a rule to be searched next is introduced.
According to the present invention, when the packet to be filtered does not match the condition with a certain filtering rule, the next filtering rule can be directly found by the described memory address. Searching for matching filtering rules is significantly faster than the prior art.
[0016]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
Note that components having the same function are denoted by the same reference symbols throughout the drawings for describing the embodiment, and the repetitive description thereof will be omitted.
[Embodiment 1]
FIG. 1 is a diagram showing a configuration of a filtering rule according to Embodiment 1 of the present invention.
FIG. 2 is a block diagram showing a schematic configuration of the high-speed search-capable high-multiple user accommodation firewall apparatus according to the present embodiment, and FIG. 5 is a concept of a filtering table in the virtual firewall applied in the present embodiment. FIG. 2 and 5 are also used in the prior art.
In this embodiment, the network connection method from the user is PPP (Point to Point Protocol), and the authentication communication is RADIUS.
The firewall device 300 includes a plurality of virtual firewalls (302, 303,..., 304).
Furthermore, as shown in FIG. 5, each virtual firewall (302, 303) has a plurality of filtering tables (561, 562, 563) specified by the filtering ID, and each filtering table (561, 562). , 563) describes an independent filtering policy for each user.
[0017]
In the present embodiment, the security policy determined by the user #a and the user #b is stored in the virtual firewall 302, and the security policy determined by the user #d is stored in the virtual firewall 303.
Further, the user #a is in the virtual firewall 302, the filtering ID is α in the filtering table 561, the user #b is in the filtering table 562 in which the filtering ID is β, and the user #d is in the virtual firewall 303, the filtering ID Each security policy is described in the filtering table 563 of γ.
Here, the reason why the user #a and the user #b are accommodated in the same virtual firewall 302 is that, for example, the virtual firewall is constructed for each Internet provider, and the user #a and the user #b belong to the same Internet provider. Reasons such as cases may be mentioned.
However, the filtering tables (561, 562, 563) shown in FIG. 5 are conceptual, and the actual filtering table has a configuration as shown in FIG.
[0018]
Each filtering rule (11, 12, 21, 22, 23,...) Has rules (rules 1, 2, 3, 4, 5,...) Describing packet header information to be compared and operation (pass or discard). And a next rule memory address (address information) representing a memory address where a filtering rule to be searched next is stored.
The filtering head rule management table 31 manages the correspondence between the filtering ID and the memory address where the head filtering rule of each filtering table is stored.
Further, the next rule memory address column is not described (NULL in FIG. 1) for the last filtering rule of each filtering table, thereby identifying that this filtering rule is the last filtering rule.
To summarize the above description, for example, the filtering table 561 with the filtering ID α in FIG. 5 is the row in which the filtering ID (α) of the filtering head rule management table 31 is managed, the filtering rule 11, and the filtering rule 12. The filtering table 562 whose filtering ID is β is composed of a row in which the filtering ID (β) of the filtering head rule management table 31 is managed, the filtering rule 21, the filtering rule 22, and the filtering rule 23. Will be.
[0019]
FIG. 8 is a sequence diagram illustrating the operation of the firewall device according to the present embodiment. Hereinafter, the operation of the firewall device of the present embodiment will be described with reference to FIG.
In the distribution management table 301, user names, virtual firewall IDs, and filtering IDs that can be set in advance are registered.
That is, in the distribution management table 301, user name #a, virtual firewall ID (302) and filtering ID (α) are associated, and user name #b, virtual firewall ID (302) and filtering ID (β) are associated. , The association of the user name #d, the virtual firewall ID (303), and the filtering ID (γ) is registered.
However, since the user IP address serving as the user ID of each user terminal has not been determined, it cannot be registered at this time (the state of the distribution management table 301-1 shown in FIG. 8).
Unless the user IP address is registered in the distribution management table 301, packets from each user cannot be distributed to the respective virtual firewalls and filtering IDs cannot be assigned.
[0020]
In the present embodiment, it is assumed that the terminal 311 of the user #a is connected to the Internet 310 and then performs IP communication with the connection partner terminal 313.
First, as a network connection request from the user terminal 311, LCP (Link Control Protocol) information is exchanged between the user terminal 311 and the firewall device 300 (839 in FIG. 8).
By the exchange of authentication information performed thereafter (840 in FIG. 8), the firewall apparatus 300 extracts the user name #a transmitted from the user terminal 311 and holds the user name #a (processing point 850 in FIG. 8). .
Then, the authentication information (user name and password) is notified to the RADIUS server 330 (841 in FIG. 8).
When authenticated by the RADIUS server 330 and receiving the response (842 in FIG. 8), the firewall device 300 holds the user IP address to be assigned to the user terminal described in the response 842. This user IP address is changed to [a. a. a. a].
Then, using the user name #a as a search key, the user IP address [a. a. a. a] is registered (processing point 851 in FIG. 8, state of distribution management table 301-2 in FIG. 8).
[0021]
At the same time, the firewall apparatus 300 exchanges NCP (Network Control Protocol) information between the user terminal 311 and the firewall apparatus 300 (843 in FIG. 8), and the user IP address [a. a. a. a] to the user terminal 311, and the user terminal 311 has its own user IP address [a. a. a. a].
After the NCP ends, a PPP connection is established between the user terminal and the network.
After that, when the firewall apparatus 300 receives a packet 321 transmitted from the user terminal 311 to the connection partner terminal 313, it is described as the transmission source IP address [a. a. a. a] as a search key, the distribution management table 301-2 is searched, and [a. a. a. a] is extracted, the virtual firewall ID (ID = 302) and the filtering ID (ID = α) are extracted, the packet 321 is distributed to the virtual firewall 302, and the α filtering ID is assigned to the packet 321. (Processing point 852 in FIG. 8).
As shown in FIG. 5, the packet 322 to which the filtering ID is assigned follows the filtering rule according to the security policy of the user #a described in the filtering table 561 whose filtering ID is α in the distributed virtual firewall 302. Pass-through or disposal treatment is applied.
[0022]
As described above, the filtering table 561 having the filtering ID α is actually configured as shown in FIG.
Therefore, actually, when the packet 322 to which the filtering ID (α) is given arrives in the virtual firewall 302, first, from the filtering head rule management table 31, the head rule memory address ( pppp) is extracted.
Then, the information described in rule 1 described in the memory area of the extracted memory address pppp is compared with the information in the packet header.
As a result of the comparison, when the packet header information matches the condition of rule 1, the packet 322 is passed or discarded according to the operation described in rule 1.
On the other hand, if the packet header information does not match the conditions of rule 1 as a result of comparison, the memory address described in the next rule memory address of rule 1 is referred to, and the rule described in the memory area of the referenced memory address pppa 2 is compared with the information in the packet header.
As a result of the comparison, when the packet header information matches the condition of rule 2, the packet 322 is passed or discarded according to the operation described in rule 2.
[0023]
On the other hand, as a result of the comparison, if the packet header information does not match the condition of rule 2, the next rule memory address of rule 2 is referred to, but since there is no description (NULL), rule 2 is the final rule of filtering table 561 And processing when the condition does not match any filtering rule. In the case of a firewall, discarding is common.
When the firewall apparatus 300 receives a packet 323 transmitted from the communication partner terminal 313 to the user terminal 311, it is described as the destination IP address [a. a. a. a] as a search key, the distribution management table (301-2 in FIG. 8) is searched, and [a. a. a. a], the virtual firewall ID (ID = 302) and the filtering ID (ID = α) are extracted, the packet 323 is distributed to the virtual firewall 302, and the α filtering ID is assigned to the packet 323. (Processing point 853 in FIG. 3).
The packet 324 to which the filtering ID is assigned is passed or discarded in accordance with the filtering rule according to the security policy of the user #a described in the filtering table 561 whose filtering ID is α in the distributed virtual firewall 302. The
[0024]
Similar to the packet 322 transmitted from the user terminal 311 to the connection partner terminal 313, the packet is actually written in the process of extracting the head rule memory address from the filtering head rule management table 31 and the memory area of the extracted memory address. Comparison processing with the rule is performed.
Even when the terminal 312 of the user #b is connected to the Internet 310 and performs IP communication with the connection partner terminal 313, packets transmitted and received by the terminal 312 are distributed to the virtual firewall 302 by the same procedure, and then filtered. Passing or discarding processing is applied according to the filtering rule according to the security policy of user #b described in table 562.
As described above, in the present embodiment, the next rule to be searched can be found directly from the memory address, so that the search for the next rule can be speeded up.
[0025]
[Embodiment 2]
The high-speed search-capable high-multiple user accommodation firewall apparatus according to the second embodiment of the present invention is different from the firewall apparatus according to the first embodiment described above in that it does not include a virtual firewall.
Hereinafter, the firewall device of the present embodiment will be described focusing on differences from the firewall device of the first embodiment.
In this embodiment, the network connection method from the user is PPP, and the authentication communication is RADIUS.
FIG. 9 is a block diagram showing a schematic configuration of the high-speed search-capable high-multiple user accommodation firewall apparatus according to the second embodiment of the present invention.
As shown in FIG. 9, the firewall device 300 according to the present embodiment has a plurality of filtering tables (561, 562) specified by the filtering ID, and each filtering table has an independent filtering policy for each user. be written.
In this embodiment, the security policy is described in the filtering table 561 whose filtering ID is α for the user #a, and in the filtering table 562 whose filtering ID is β for the user #b.
FIG. 10 is a sequence diagram illustrating the operation of the firewall device according to the present embodiment. Hereinafter, the operation of the firewall device of the present embodiment will be described with reference to FIG.
[0026]
In the distribution management table 301, user names and filtering IDs that can be set in advance are registered.
That is, in the distribution management table 301, the association between the user name #a and the filtering ID α and the association between the user name #b and the filtering ID β are registered.
However, since the user IP address serving as the user ID of each user terminal has not been determined, it cannot be registered at this time (the state of the distribution management table 301-1 shown in FIG. 10).
Unless the user IP address is registered in the distribution management table 301, a filtering ID cannot be assigned to a packet from each user.
In the present embodiment, it is assumed that the terminal 311 of the user #a is connected to the Internet 310 and then performs IP communication with the connection partner terminal 313.
The LCP information is exchanged between the user terminal 311 and the firewall apparatus 300, and the NCP information is exchanged between the user terminal 311 and the firewall apparatus 300 from the exchange of authentication information (839 in FIG. 10) (FIG. 10). The operations up to 843) are the same as those in the first embodiment, and thus the description thereof will be omitted.
After the NCP ends, a PPP connection is established between the user terminal and the network.
[0027]
After that, when the firewall apparatus 300 receives a packet 321 transmitted from the user terminal 311 to the connection partner terminal 313, it is described as the transmission source IP address [a. a. a. a] as a search key, the distribution management table (301-2 in FIG. 10) is searched, and [a. a. a. The filtering ID (ID = α) described in the line a] is extracted, and the filtering ID α is assigned to the packet 321 (processing point 852 in FIG. 10).
The packet 322 to which the filtering ID is assigned is subjected to a passing or discarding process according to the filtering rule according to the security policy of the user #a described in the filtering table 561 whose filtering ID is α.
As in the first embodiment, the filtering table 561 whose filtering ID is α actually has the configuration shown in FIG.
FIG. 11 is a diagram showing a configuration of a filtering rule according to the second embodiment of the present invention.
Therefore, in practice, the packet 322 to which the filtering ID (α) is assigned first extracts the head rule memory address (pppp) associated with the filtering ID (α) from the filtering head rule management table 31.
[0028]
Then, the information described in rule 1 described in the memory area of the extracted memory address pppp is compared with the information in the packet header.
As a result of the comparison, when the packet header information matches the condition of rule 1, the packet 322 is passed or discarded according to the operation described in rule 1.
On the other hand, if the packet header information does not match the conditions of rule 1 as a result of comparison, the memory address described in the next rule memory address of rule 1 is referred to, and the rule described in the memory area of the referenced memory address pppa 2 is compared with the information in the packet header.
As a result of the comparison, when the packet header information matches the condition of rule 2, the packet 322 is passed or discarded according to the operation described in rule 2.
On the other hand, as a result of the comparison, if the packet header information does not match the condition of rule 2, the next rule memory address of rule 2 is referred to, but since there is no description (NULL), rule 2 is the final rule of filtering table 561 And processing when the condition does not match any filtering rule. In the case of a firewall, discarding is common.
[0029]
When the firewall apparatus 300 receives the packet 323 transmitted from the communication partner terminal 313 to the user terminal 311, it is described as the destination IP address [a. a. a. a] as a search key, the distribution management table (301-2 in FIG. 10) is searched, and [a. a. a. The filtering ID (ID = α) described in the line a] is extracted, and the filtering ID of α is assigned to the packet 323 (processing point 853 in FIG. 10).
The packet 324 given the filtering ID is subjected to a passing or discarding process according to the filtering rule according to the security policy of the user #a described in the filtering table 561 whose filtering ID is α.
Similar to the packet 322 transmitted from the user terminal 311 to the connection partner terminal 313, the packet is actually written in the process of extracting the head rule memory address from the filtering head rule management table 31 and the memory area of the extracted memory address. Comparison processing with the rule is performed.
Even when the terminal 312 of the user #b is connected to the Internet 310 and then performs IP communication with the connection partner terminal 313, the packet transmitted and received by the terminal 312 is similar to the user # described in the filtering table 562. The pass or discard process is applied according to the filtering rule according to the security policy of b.
As described above, in the present embodiment, the next rule to be searched can be found directly from the memory address, so that the search for the next rule can be speeded up.
[0030]
[Embodiment 3]
The firewall device according to the third embodiment of the present invention is different from the firewall device according to the first embodiment described above in that the filtering ID is divided into an individual filtering ID and a common filtering ID.
Hereinafter, the firewall device of the present embodiment will be described focusing on differences from the firewall device of the first embodiment.
The schematic configuration of the firewall device according to the third embodiment of the present invention is the same as that shown in FIG. Also in this embodiment, the network connection method from the user is PPP, and the authentication communication is RADIUS.
In the firewall device of the present embodiment, the filtering ID of the first embodiment is further divided into an individual filtering ID and a common filtering ID, each user's individual filtering policy is described in an individual filtering table, and a plurality of users Filtering policies that can be made common in are described in the common filtering table.
Therefore, in this embodiment, the distribution management table 301 shown in FIG. 2 and the distribution management table (301-1) shown in FIG. 8 are replaced with the distribution management table 601 shown in FIG. 301-2) is replaced with the distribution management table 1101 of FIG.
[0031]
FIG. 7 is a diagram showing the concept of the filtering table in the virtual firewall of the firewall device of the present embodiment.
The firewall device 300 of this embodiment includes a plurality of virtual firewalls (302, 303,..., 304).
Furthermore, as shown in FIG. 7, each virtual firewall (302, 303) has a plurality of filtering tables (661, 662, 663) specified by individual filtering IDs and a plurality of filtering tables specified by common filtering IDs. There are filtering tables (571, 572).
The filtering policy for each user is described in the individual filtering table (661, 662, 663), and the filtering policy that can be shared by a plurality of users is described in the common filtering table (571, 572).
Accordingly, as shown in FIG. 6, the distribution management table 601 manages user names, virtual firewall IDs, individual filtering IDs, and common filtering IDs.
[0032]
In the present embodiment, the security policy determined by the user #a and the user #b is stored in the virtual firewall 302, and the security policy determined by the user #d is stored in the virtual firewall 303.
Furthermore, the individual filtering policy of user #a is stored in the individual filtering table 661 whose filtering ID is α in the virtual firewall 302, and the individual filtering policy of user #b is stored in the individual filtering table 662 whose filtering ID is β in the user #d. The individual filtering policy is described in the individual filtering table 663 whose filtering ID is γ in the virtual firewall 303.
The filtering policy described in the common filtering table 571 whose filtering ID is I is also applied to the user #a and the user #b.
Similarly, the filtering policy described in the common filtering table 572 whose filtering ID is II is also applied to the user #d.
However, the individual filtering tables (661, 662, 663) and the common filtering table (571, 572) shown in FIG. 7 are conceptual, and each actual filtering table has a configuration as shown in FIG. Yes.
[0033]
FIG. 13 is a diagram showing a configuration of a filtering rule according to the third embodiment of the present invention.
The individual filtering rule (41, 42,...) Stores a filtering rule (rule 6, 7,...) Describing packet header information to be compared and an operation (pass or discard), and a filtering rule to be searched next. The next rule memory address representing the memory address being written is described.
Further, the individual filtering head rule management table 32 manages the correspondence between the individual filtering ID and the memory address storing the head filtering rule of each individual filtering table.
Further, the next rule memory address column is not described (NULL in FIG. 1) for the final filtering rule of each individual filtering table, thereby identifying that the filtering rule is the final rule.
Similarly, common filtering rules (51, 52,...) Include rules (rules 8, 9,...) Describing packet header information to be compared and operations (passing or discarding), and filtering to be searched next. The next rule memory address indicating the memory address where the rule is stored is described.
The common filtering head rule management table 33 manages the correspondence between the common filtering ID and the memory address where the head filtering rule of each common filtering table is stored.
Further, the next rule memory address column is not described (NULL in FIG. 1) for the final filtering rule of each common filtering table, thereby identifying that the filtering rule is the final rule.
[0034]
When the above description is arranged, for example, the filtering table 661 with the individual filtering ID α in FIG. 7 includes the row in which the individual filtering ID (α) of the individual filtering head rule management table 32 is managed, the filtering rule 41, and The filtering rule 42 is used.
As for the common filtering ID, for example, the filtering table 571 with the common filtering ID I is the row in which the common filtering ID (I) of the common filtering head rule management table 33 is managed, the common filtering rule 51 and the common filtering ID. The filtering rules 52 are included.
Hereinafter, the operation of the firewall device of the present embodiment will be described with reference to FIG.
In the distribution management table 601, user names, virtual firewall IDs, individual filtering IDs, and common filtering IDs that can be set in advance are registered.
That is, the distribution management table 601 includes user name #a, virtual firewall ID (302), individual filtering ID (α) and common filtering ID (I), user name #b, virtual firewall ID (302), The association between the individual filtering ID (β) and the common filtering ID (I), the user name #d, the virtual firewall ID (303), the association between the individual filtering ID (γ) and the common filtering ID (II) are registered.
[0035]
However, since the user IP address serving as the user ID of each user terminal is not determined, it cannot be registered at this time (the state of the distribution management table 601 in FIG. 6).
Unless the user IP address is registered in the distribution management table 601, the packets from each user cannot be distributed to the respective virtual firewalls, and the individual filtering ID and the common filtering ID cannot be assigned.
In the present embodiment, it is assumed that the terminal 311 of the user #a is connected to the Internet 310 and then performs IP communication with the connection partner terminal 313.
The operations from the exchange of LCP information between the user terminal 311 and the firewall device 300 to the exchange of NCP information between the user terminal 311 and the firewall device 300 are the same as in the first embodiment. The description will not be repeated.
After the NCP ends, a PPP connection is established between the user terminal and the network.
After that, as shown in FIG. 2, when the firewall apparatus 300 receives a packet 321 transmitted from the user terminal 311 to the connection partner terminal 313, it is described as the transmission source IP address [a. a. a. a] as a search key, the distribution management table 1101 is searched, and [a. a. a. a], the virtual firewall ID = 302, individual filtering ID = α and common filtering ID = I are extracted, the packet 321 is distributed to the virtual firewall 302, the individual filtering ID of α, and I A common filtering ID is assigned (processing point 852 in FIG. 8).
[0036]
As shown in FIG. 7, the packet 322 to which the individual filtering ID and the common filtering ID are assigned is filtered in the virtual firewall 302 according to the security policy of the user #a described in the individual filtering table 661 with the individual filtering ID = α. According to this, passing or disposal processing is performed.
As described above, the individual filtering table 661 having the individual filtering ID α is actually configured as shown in FIG.
Therefore, in actuality, when the packet 322 to which the individual filtering ID (α) is assigned arrives in the virtual firewall 302, first, the first rule associated with the individual filtering ID (α) is first retrieved from the individual filtering first rule management table 32. A memory address (pppp) is extracted.
Then, the information described in the rule 6 described in the memory area of the extracted memory address pppp is compared with the information in the packet header.
As a result of the comparison, if the information in the packet header matches the condition of rule 6, the packet 322 is passed or discarded according to the operation described in rule 6.
On the other hand, if the packet header information does not match the conditions of rule 6 as a result of comparison, the memory address described in the next rule memory address of rule 6 is referred to, and the rule described in the memory area of the referenced memory address pppa 7 is compared with the information in the packet header.
As a result of the comparison, when the information in the packet header matches the condition of rule 7, the packet 322 is passed or discarded according to the operation described in rule 7.
[0037]
On the other hand, as a result of comparison, when the packet header information does not match the conditions of rule 7, the next rule memory address of rule 7 is referred to, but since there is no description (NULL), rule 7 is the last in the individual filtering table 661. Recognize that it is a rule.
If there is no rule to be applied to the filtering policy described in the individual filtering table 661, the packet 322 is then passed or discarded according to the filtering policy described in the common filtering table 571 with the common filtering ID = I. Processing is performed.
Similar to the processing for the individual filtering table 661, the common filtering table 571 having the common filtering ID I is actually configured as shown in FIG.
Therefore, in practice, the packet 322 to which the common filtering ID (I) is assigned extracts the head rule memory address [rrrr] associated with the common filtering ID (I) from the common filtering head rule management table 33. Then, the information described in the rule 8 described in the memory area of the extracted memory address [rrrr] is compared with the packet header information.
As a result of the comparison, when the information in the packet header matches the condition of rule 8, the packet 322 is passed or discarded according to the operation described in rule 8.
On the other hand, if the packet header information does not match the conditions of rule 8 as a result of comparison, the memory address described in the next rule memory address of rule 8 is referred to and written in the memory area of the referenced memory address [rrra]. The information described in the rule 9 is compared with the packet header information.
As a result of the comparison, when the information in the packet header matches the condition of rule 9, the packet 322 is passed or discarded according to the operation described in rule 9.
[0038]
On the other hand, if the packet header information does not match the conditions of rule 9 as a result of comparison, the next rule memory address of rule 9 is referred to, but since there is no description (NULL), rule 9 is the last in the common filtering table 571. Recognize that it is a rule, and perform processing when the condition does not match any filtering rule. In the case of a firewall, discarding is common.
When the firewall apparatus 300 receives the packet 323 transmitted from the communication partner terminal 313 to the user terminal 311, it is described as the destination IP address [a. a. a. a] as a search key, the distribution management table 1101 is searched, and [a. a. a. a), the virtual firewall ID (ID = 302), the individual filtering ID (ID = α), and the common filtering ID (ID = I) are extracted, and the packet 323 is distributed to the virtual firewall 302. An individual filtering ID of α and a common filtering ID of 1 are assigned (processing point 853 in FIG. 8).
The packet 324 to which the individual filtering ID and the common filtering ID are assigned is passed or discarded according to the filtering rule according to the security policy of the user #a described in the individual filtering table 661 whose individual filtering ID is α.
If there is no rule to be applied to the filtering policy described in the individual filtering table 661, the packet 324 is then passed or discarded according to the filtering policy described in the common filtering table 571 whose common filtering ID is I. Is done.
[0039]
Similar to the packet 322 transmitted from the user terminal 311 to the connection partner terminal 313, in practice, the process of extracting the head rule memory address from each of the individual filtering head rule management table 32 and the common filtering head rule management table 33, The comparison processing with the rule described in the memory area of the extracted memory address is performed.
When the terminal 312 of the user #b is connected to the Internet 310 and then performs IP communication with the connection partner terminal 313, packets transmitted and received by the terminal 312 are distributed to the virtual firewall 302 by the same procedure, and then individually. Passing or discarding processing is applied according to the filtering rule according to the security policy of user #b described in the filtering table 662 and the filtering rule described in the common filtering table 571.
As described above, in the present embodiment, the next rule to be searched can be found directly by the memory address, so that the search for the next rule can be speeded up.
Although the invention made by the present inventor has been specifically described based on the above-described embodiment, the present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the scope of the invention. Of course.
[0040]
【The invention's effect】
The effects obtained by the representative ones of the inventions disclosed in the present application will be briefly described as follows.
According to the present invention, the information to be described in each filtering rule constituting the filtering policy of the filtering table is the rule to be searched next in addition to the rule itself describing the packet header information to be compared and the operation (passing or discarding). Since the next filtering rule is directly indicated by the address information, it is possible to speed up the search for the next filtering rule.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of a filtering rule according to a first embodiment of the present invention.
FIG. 2 is a block diagram showing a schematic configuration of the high-speed search-capable high-multiple user accommodation firewall device according to the first embodiment of the present invention.
FIG. 3 is a block diagram showing a schematic configuration of a conventional firewall device.
4 is a sequence diagram showing an operation of the firewall device shown in FIG. 3. FIG.
FIG. 5 is a diagram showing a concept of a filtering table in the virtual firewall applied in the first embodiment of the present invention.
FIG. 6 is a diagram showing a configuration of a distribution management table that manages individual filtering IDs and common filtering IDs.
FIG. 7 is a diagram showing the concept of an individual filtering table and a common filtering table in a virtual firewall.
FIG. 8 is a sequence diagram showing an operation of the firewall device according to the first embodiment of the present invention.
FIG. 9 is a block diagram showing a schematic configuration of a high-speed search capable high-multiple user accommodation firewall apparatus according to the second embodiment of the present invention;
FIG. 10 is a sequence diagram showing an operation of the firewall device according to the second embodiment of the present invention.
FIG. 11 is a diagram showing a configuration of a filtering rule according to the second embodiment of the present invention.
FIG. 12 is a diagram showing a configuration of a distribution management table that manages individual filtering IDs and common filtering IDs in which user IP addresses are registered.
FIG. 13 is a diagram showing a configuration of a filtering rule according to the third embodiment of the present invention.
[Explanation of symbols]
10, 12, 21, 22, 23, 41, 42, 51, 52 ... filtering rules, 31 ... filtering head rule management table, 32 ... individual filtering head rule management table, 33 ... common filtering head rule management table, 100, 300 ... Firewall apparatus, 101, 301, 1101 ... Distribution management table, 102, 103, 104, 302, 303, 304 ... Virtual firewall, 110, 310 ... Internet, 111, 112, 113, 114, 115, 211, 212, 213 , 311, 312, 313, 314, 315... Terminal, 121, 122, 321, 322, 323, 324 ... packet, 130, 330. I filter ring table.

Claims (8)

ユーザ名と、ユーザIDと、フィルタリングIDとを対応付けて管理する振分け管理テーブルと、
前記フィルタリングIDによって特定され、それぞれ独立したフィルタリングポリシを有するフィルタリングテーブルと、
ネットワーク接続開始時に、ユーザ端末から発行される、ユーザ名が記載された認証情報を受信し、当該ユーザ名を保持する手段1と、
前記認証情報を認証サーバに通知する手段2と、
前記認証サーバから認証応答を受信し、その認証応答に記載されている前記ユーザ端末に付与すべきユーザIDを保持する手段3と、
前記ユーザ名を検索キーとして、前記振分け管理テーブルに前記ユーザIDを登録する手段4と、
前記ユーザ端末とネットワークとの接続が確立された後に、前記ユーザ端末から送信されるパケットに対して、その送信元ユーザIDを検索キーとして前記振分け管理テーブルを検索し、当該送信元ユーザIDと対応付けられるフィルタリングIDを抽出し、前記ユーザ端末から送信されるパケットに対して、前記抽出したフィルタリングIDを付与する手段5と、
前記ユーザ端末の通信相手端末から送信されるパケットに対して、その宛先ユーザIDを検索キーとして前記振分け管理テーブルを検索し、当該宛先ユーザIDと対応付けられるフィルタリングIDを抽出し、前記ユーザ端末の通信相手端末から送信されるパケットに対して、前記抽出したフィルタリングIDを付与する手段6と、
前記手段5または前記手段6でフィルタリングIDが付与されたパケットを、前記付与されたフィルタリングIDにより特定されるフィルタリングテーブルに記載のフィルタリングポリシに従い、通過あるいは廃棄する手段7とを備える高速検索対応高多重ユーザ収容ファイアウォール装置であって、
前記フィルタリングテーブルの各フィルタリングポリシは、少なくとも1個のフィルタリングルールで構成され、当該各フィルタリングルールには、ルール自身と、次に検索すべきフィルタリングルールを格納する位置を表すアドレス情報とが記述され、
前記手段7は、前記パケット付与されたフィルタリングIDに基づき、前記フィルタリングルールに対してルール検索を行い、前記フィルタリングIDが付与されたパケットが、前記ルールの条件に合致する場合にルール検索を終了し、当該ルールに記載される動作に従い、前記フィルタリングIDが付与されたパケットを通過あるいは廃棄し、また、前記ルールの条件に合致しない場合に、前記アドレス情報で表される位置に格納されたフィルタリングルールに対してルール検索を実施することを特徴とする高速検索対応高多重ユーザ収容ファイアウォール装置。
A distribution management table that manages user names, user IDs, and filtering IDs in association with each other;
A filtering table identified by the filtering ID and having an independent filtering policy;
Means 1 for receiving authentication information in which a user name is issued issued from a user terminal at the time of starting a network connection and holding the user name;
Means 2 for notifying the authentication server of the authentication information;
Means 3 for receiving an authentication response from the authentication server and holding a user ID to be given to the user terminal described in the authentication response;
Means 4 for registering the user ID in the distribution management table using the user name as a search key;
After the connection between the user terminal and the network is established, the distribution management table is searched for the packet transmitted from the user terminal using the transmission source user ID as a search key and corresponds to the transmission source user ID Means 5 for extracting a filtering ID to be attached and giving the extracted filtering ID to a packet transmitted from the user terminal;
For the packet transmitted from the communication partner terminal of the user terminal, the distribution management table is searched using the destination user ID as a search key, the filtering ID associated with the destination user ID is extracted, and the user terminal Means 6 for assigning the extracted filtering ID to a packet transmitted from a communication partner terminal;
High-speed search compatible high-multiplexing comprising: a means for passing or discarding a packet to which a filtering ID is assigned by the means 5 or 6 according to a filtering policy described in a filtering table specified by the assigned filtering ID A user-accommodating firewall device,
Each filtering policy of the filtering table is composed of at least one filtering rule, and each filtering rule describes the rule itself and address information indicating a position where a filtering rule to be searched next is stored,
The means 7 performs a rule search for the filtering rule based on the filtering ID assigned to the packet, and ends the rule search when the packet to which the filtering ID is assigned matches the rule condition. In accordance with the operation described in the rule, the filtering rule stored in the position represented by the address information when the packet with the filtering ID is passed or discarded and when the condition of the rule is not met A high-multiple-user-accommodating firewall apparatus capable of high-speed search, wherein rule search is performed on
ユーザ名と、ユーザIDと、個別フィルタリングIDと、共通フィルタリングIDとを対応付けて管理する振分け管理テーブルと、
個別フィルタリングIDによって特定され、ユーザ名単位にそれぞれ独立に用意されるフィルタリングポリシを有する少なくとも1つの個別フィルタリングテーブルと、
共通フィルタリングIDによって特定され、複数のユーザ名をグループ化し、そのグループ単位にそれぞれ独立に用意されるフィルタリングポリシを有する少なくとも1つの共通フィルタリングテーブルと、
ネットワーク接続開始時に、ユーザ端末から発行される、ユーザ名が記載された認証情報を受信し、当該ユーザ名を保持する手段1と、
前記認証情報を認証サーバに通知する手段2と、
前記認証サーバから認証応答を受信し、その認証応答に記載されている前記ユーザ端末に付与すべきユーザIDを保持する手段3と、
前記ユーザ名を検索キーとして、前記振分け管理テーブルに前記ユーザIDを登録する手段4と、
前記ユーザ端末とネットワークとの接続が確立された後に、前記ユーザ端末から送信されるパケットに対して、その送信元ユーザIDを検索キーとして前記振分け管理テーブルを検索し、当該送信元ユーザIDと対応付けられる個別フィルタリングIDおよび共通フィルタリングIDを抽出し、前記ユーザ端末から送信されるパケットに対して、前記抽出した個別フィルタリングIDおよび共通フィルタリングIDを付与する手段5と、
前記ユーザ端末の通信相手端末から送信されるパケットに対して、その宛先ユーザIDを検索キーとして前記振分け管理テーブルを検索し、当該宛先ユーザIDと対応付けられる個別フィルタリングIDおよび共通フィルタリングIDを抽出し、前記ユーザ端末の通信相手端末から送信されるパケットに対して、前記抽出した個別フィルタリングIDおよび共通フィルタリングIDを付与する手段6と、
前記手段5または手段6で前記個別フィルタリングIDおよび前記共通フィルタリングIDが付与されたパケットを、前記付与された個別フィルタリングIDによって特定される個別フィルタリングテーブルに記載のフィルタリングポリシ、および、前記付与された共通フィルタリングIDによって特定される共通フィルタリングテーブルに記載のフィルタリングポリシに従い、通過あるいは廃棄する手段7とを備える高速検索対応高多重ユーザ収容ファイアウォール装置であって、
前記個別フィルタリングテーブルおよび前記共通フィルタリングテーブルの各フィルタリングポリシは、少なくとも1個のフィルタリングルールで構成され、当該各フィルタリングルールには、ルール自身と、次に検索すべきフィルタリングルールを格納する位置を表すアドレス情報とが記述され、
前記手段7は、前記パケットに付与された個別フィルタリングIDおよび共通フィルタリングIDに基づき、前記フィルタリングルールに対してルール検索を行い、前記個別フィルタリングIDおよび共通フィルタリングIDが付与されたパケットが、当該ルールの条件に合致する場合に、ルール検索を終了し、前記個別フィルタリングIDおよび共通フィルタリングIDが付与されたパケットを、当該ルールに記載される動作に従い通過あるいは廃棄し、また、当該ルールの条件に合致しない場合に、前記アドレス情報で表される位置に格納されたフィルタリングルールに対してルール検索を実施することを特徴とする高速検索対応高多重ユーザ収容ファイアウォール装置。
A distribution management table for managing a user name, a user ID, an individual filtering ID, and a common filtering ID in association with each other;
At least one individual filtering table having a filtering policy specified by the individual filtering ID and prepared independently for each user name;
At least one common filtering table identified by a common filtering ID, grouping a plurality of user names, and having a filtering policy prepared independently for each group;
Means 1 for receiving authentication information in which a user name is issued issued from a user terminal at the time of starting a network connection and holding the user name;
Means 2 for notifying the authentication server of the authentication information;
Means 3 for receiving an authentication response from the authentication server and holding a user ID to be given to the user terminal described in the authentication response;
Means 4 for registering the user ID in the distribution management table using the user name as a search key;
After the connection between the user terminal and the network is established, the distribution management table is searched for the packet transmitted from the user terminal using the transmission source user ID as a search key and corresponds to the transmission source user ID Means 5 for extracting an individual filtering ID and a common filtering ID to be attached, and giving the extracted individual filtering ID and common filtering ID to a packet transmitted from the user terminal;
For the packet transmitted from the communication partner terminal of the user terminal, the distribution management table is searched using the destination user ID as a search key, and the individual filtering ID and the common filtering ID associated with the destination user ID are extracted. , Means 6 for assigning the extracted individual filtering ID and common filtering ID to the packet transmitted from the communication partner terminal of the user terminal;
The filtering policy described in the individual filtering table specified by the assigned individual filtering ID, the packet to which the individual filtering ID and the common filtering ID are assigned by the means 5 or 6, and the assigned common According to the filtering policy described in the common filtering table specified by the filtering ID, a high-multiple user accommodating firewall device corresponding to a high-speed search comprising means 7 for passing or discarding,
Each filtering policy of the individual filtering table and the common filtering table is composed of at least one filtering rule, and each filtering rule has an address representing the rule itself and a position where the filtering rule to be searched next is stored. Information is described,
The means 7 performs a rule search for the filtering rule based on the individual filtering ID and the common filtering ID assigned to the packet, and the packet to which the individual filtering ID and the common filtering ID are assigned When the condition is met, the rule search is terminated, and the packet with the individual filtering ID and the common filtering ID is passed or discarded according to the operation described in the rule, and does not meet the rule condition. In this case, a high-speed search-capable high-multiple user accommodation firewall apparatus that performs a rule search for a filtering rule stored at a position represented by the address information.
ユーザ名と、ユーザIDと、仮想ファイアウォールIDと、フィルタリングIDとを対応づけて管理する振分け管理テーブルと、
前記フィルタリングIDによって特定され、それぞれ独立したフィルタリングポリシを有するフィルタリングテーブルと、
前記仮想ファイアウォールIDによって特定され、前記フィルタリングIDによって特定される少なくとも1つのフィルタリングテーブルを有する複数の仮想ファイアウォールと、
ネットワーク接続開始時に、ユーザ端末から発行される、ユーザ名が記載された認証情報を受信し、当該ユーザ名を保持する手段1と、
前記認証情報を認証サーバに通知する手段2と、
前記認証サーバから認証応答を受信し、その認証応答に記載されている前記ユーザ端末に付与すべきユーザIDを保持する手段3と、
前記ユーザ名を検索キーとして、前記振分け管理テーブルに前記ユーザIDを登録する手段4と、
前記ユーザ端末とネットワークとの接続が確立された後に、前記ユーザ端末から送信されるパケットに対し、その送信元ユーザIDを検索キーとして前記振分け管理テーブルを検索し、該送信元ユーザIDと対応付けられる仮想ファイアウォールIDおよびフィルタリングIDを抽出し、前記ユーザ端末から送信されるパケットを、前記抽出した仮想ファイアウォールIDで特定される仮想ファイアウォールに振り分けるとともに、前記ユーザ端末から送信されるパケットに対して、前記抽出したフィルタリングIDを付与する手段5と、
前記ユーザ端末の通信相手端末から送信されるパケットに対して、その宛先ユーザIDを検索キーとして前記振分け管理テーブルを検索し、該宛先ユーザIDと対応付けられる仮想ファイアウォールIDおよびフィルタリングIDを抽出し、前記ユーザ端末の通信相手端末から送信されるパケットを、前記抽出した仮想ファイアウォールIDで特定される仮想ファイアウォールに振り分けるとともに、前記ユーザ端末の通信相手端末から送信されるパケットに対して、前記抽出したフィルタリングIDを付与する手段6と、
前記手段5または手段6でフィルタリングIDが付与されたパケットを、前記振り分けられた仮想ファイアウォール内において、前記付与されたフィルタリングIDによって特定されるフィルタリングテーブルに記載されたフィルタリングポリシに従い、通過あるいは廃棄する手段7とを備える高速検索対応高多重ユーザ収容ファイアウォール装置であって、
前記フィルタリングテーブルの各フィルタリングポリシは、少なくとも1個のフィルタリングルールで構成され、当該各フィルタリングルールには、ルール自身と、次に検索すべきフィルタリングルールを格納する位置を表すアドレス情報とが記述され、
前記手段7は、前記パケット付与されたフィルタリングIDに基づき、前記フィルタリングルールに対してルール検索を行い、前記フィルタリングIDが付与されたパケットが、前記ルールの条件に合致する場合にルール検索を終了し、当該ルールに記載される動作に従い、前記フィルタリングIDが付与されたパケットを通過あるいは廃棄し、また、前記ルールの条件に合致しない場合に、前記アドレス情報で表される位置に格納されたフィルタリングルールに対してルール検索を実施することを特徴とする高速検索対応高多重ユーザ収容ファイアウォール装置。
A distribution management table for managing a user name, a user ID, a virtual firewall ID, and a filtering ID in association with each other;
A filtering table identified by the filtering ID and having an independent filtering policy;
A plurality of virtual firewalls identified by the virtual firewall ID and having at least one filtering table identified by the filtering ID;
Means 1 for receiving authentication information in which a user name is issued issued from a user terminal at the time of starting a network connection and holding the user name;
Means 2 for notifying the authentication server of the authentication information;
Means 3 for receiving an authentication response from the authentication server and holding a user ID to be given to the user terminal described in the authentication response;
Means 4 for registering the user ID in the distribution management table using the user name as a search key;
After the connection between the user terminal and the network is established, the distribution management table is searched for the packet transmitted from the user terminal using the transmission source user ID as a search key and associated with the transmission source user ID. The virtual firewall ID and filtering ID to be extracted, and the packet transmitted from the user terminal is distributed to the virtual firewall specified by the extracted virtual firewall ID, and the packet transmitted from the user terminal is Means 5 for assigning the extracted filtering ID;
For the packet transmitted from the communication partner terminal of the user terminal, search the distribution management table using the destination user ID as a search key, and extract a virtual firewall ID and a filtering ID associated with the destination user ID, The packet transmitted from the communication partner terminal of the user terminal is distributed to the virtual firewall specified by the extracted virtual firewall ID, and the extracted filtering is performed on the packet transmitted from the communication partner terminal of the user terminal. Means 6 for assigning an ID;
Means for passing or discarding the packet to which the filtering ID is assigned by the means 5 or 6 according to the filtering policy described in the filtering table specified by the assigned filtering ID in the assigned virtual firewall. 7 and a high-multiple user accommodation firewall device compatible with high-speed search,
Each filtering policy of the filtering table is composed of at least one filtering rule, and each filtering rule describes the rule itself and address information indicating a position where a filtering rule to be searched next is stored,
The means 7 performs a rule search for the filtering rule based on the filtering ID assigned to the packet, and ends the rule search when the packet to which the filtering ID is assigned matches the rule condition. In accordance with the operation described in the rule, the filtering rule stored in the position represented by the address information when the packet with the filtering ID is passed or discarded and when the condition of the rule is not met A high-multiple-user-accommodating firewall apparatus capable of high-speed search, wherein rule search is performed on
ユーザ名と、ユーザIDと、仮想ファイアウォールIDと、個別フィルタリングIDと、共通フィルタリングIDとを対応付けて管理する振分け管理テーブルと、
個別フィルタリングIDによって特定され、ユーザ名単位にそれぞれ独立に用意されるフィルタリングポリシを有する少なくとも1つの個別フィルタリングテーブルと、
共通フィルタリングIDによって特定され、複数のユーザ名をグループ化し、そのグループ単位にそれぞれ独立に用意されるフィルタリングポリシを有する少なくとも1つの共通フィルタリングテーブルと、
前記仮想ファイアウォールIDによって特定され、前記個別フィルタリングIDによって特定される少なくとも1つの個別フィルタリングテーブル、および、前記共通フィルタリングIDによって特定される少なくとも1つの共通フィルタリングテーブルを有する複数の仮想ファイアウォールと、
ネットワーク接続開始時に、ユーザ端末から発行される、ユーザ名が記載された認証情報を受信し、当該ユーザ名を保持する手段1と、
前記認証情報を認証サーバに通知する手段2と、
前記認証サーバから認証応答を受信し、その認証応答に記載されている前記ユーザ端末に付与すべきユーザIDを保持する手段3と、
前記ユーザ名を検索キーとして、前記振分け管理テーブルに前記ユーザIDを登録する手段4と、
前記ユーザ端末とネットワークとの接続が確立された後に、前記ユーザ端末から送信されるパケットに対して、その送信元ユーザIDを検索キーとして前記振分け管理テーブルを検索し、当該送信元ユーザIDと対応付けられる仮想ファイアウォールID、個別フィルタリングIDおよび共通フィルタリングIDを抽出し、前記ユーザ端末から送信されるパケットを、前記抽出した仮想ファイアウォールIDで特定される仮想ファイアウォールに振り分けるとともに、前記ユーザ端末から送信されるパケットに対して、前記抽出した個別フィルタリングIDおよび共通フィルタリングIDを付与する手段5と、
前記ユーザ端末の通信相手端末から送信されるパケットに対して、その宛先ユーザIDを検索キーとして前記振分け管理テーブルを検索し、当該宛先ユーザIDと対応付けられる仮想ファイアウォールID、個別フィルタリングIDおよび共通フィルタリングIDを抽出し、前記ユーザ端末の通信相手端末から送信されるパケットを、前記抽出した仮想ファイアウォールIDで特定される仮想ファイアウォールに振り分けるとともに、前記ユーザ端末の通信相手端末から送信されるパケットに対して、前記抽出した個別フィルタリングIDおよび共通フィルタリングIDを付与する手段6と、
前記個別フィルタリングIDおよび前記共通フィルタリングIDが付与されたパケットを、前記振り分けられた仮想ファイアウォール内において、前記付与された個別フィルタリングIDによって特定される個別フィルタリングテーブルに記載のフィルタリングポリシ、および、前記付与された共通フィルタリングIDによって特定される共通フィルタリングテーブルに記載のフィルタリングポリシに従い通過あるいは廃棄する手段7とを備える高速検索対応高多重ユーザ収容ファイアウォール装置であって、
前記個別フィルタリングテーブルおよび前記共通フィルタリングテーブルの各フィルタリングポリシは、少なくとも1個のフィルタリングルールで構成され、当該各フィルタリングルールには、ルール自身と、次に検索すべきフィルタリングルールを格納する位置を表すアドレス情報とが記述され、
前記手段7は、前記パケットに付与された個別フィルタリングIDおよび共通フィルタリングIDに基づき、前記パケットに付与されたフィルタリングIDにより特定されるフィルタリングルールのルール検索を行い、前記個別フィルタリングIDおよび共通フィルタリングIDが付与されたパケットが、当該ルールの条件に合致する場合に、ルール検索を終了し、前記個別フィルタリングIDおよび共通フィルタリングIDが付与されたパケットを、当該ルールに記載される動作に従い通過あるいは廃棄し、また、当該ルールの条件に合致しない場合に、前記アドレス情報で表される位置に格納されたフィルタリングルールに対してルール検索を実施することを特徴とする高速検索対応高多重ユーザ収容ファイアウォール装置。
A distribution management table for managing a user name, a user ID, a virtual firewall ID, an individual filtering ID, and a common filtering ID in association with each other;
At least one individual filtering table having a filtering policy specified by the individual filtering ID and prepared independently for each user name;
At least one common filtering table identified by a common filtering ID, grouping a plurality of user names, and having a filtering policy prepared independently for each group;
A plurality of virtual firewalls identified by the virtual firewall ID and having at least one individual filtering table identified by the individual filtering ID and at least one common filtering table identified by the common filtering ID;
Means 1 for receiving authentication information in which a user name is issued issued from a user terminal at the time of starting a network connection and holding the user name;
Means 2 for notifying the authentication server of the authentication information;
Means 3 for receiving an authentication response from the authentication server and holding a user ID to be given to the user terminal described in the authentication response;
Means 4 for registering the user ID in the distribution management table using the user name as a search key;
After the connection between the user terminal and the network is established, the distribution management table is searched for the packet transmitted from the user terminal using the transmission source user ID as a search key and corresponds to the transmission source user ID The attached virtual firewall ID, individual filtering ID, and common filtering ID are extracted, and packets transmitted from the user terminal are distributed to the virtual firewall specified by the extracted virtual firewall ID, and transmitted from the user terminal. Means 5 for assigning the extracted individual filtering ID and common filtering ID to the packet;
For the packet transmitted from the communication partner terminal of the user terminal, the distribution management table is searched using the destination user ID as a search key, and the virtual firewall ID, individual filtering ID and common filtering associated with the destination user ID are searched. The ID is extracted, the packet transmitted from the communication partner terminal of the user terminal is distributed to the virtual firewall specified by the extracted virtual firewall ID, and the packet transmitted from the communication partner terminal of the user terminal , Means 6 for assigning the extracted individual filtering ID and common filtering ID;
The filtering policy described in the individual filtering table specified by the assigned individual filtering ID in the distributed virtual firewall, and the assigned policy for the packet to which the individual filtering ID and the common filtering ID are assigned. A high-speed search-capable high-multiple user accommodating firewall device comprising means 7 for passing or discarding according to the filtering policy described in the common filtering table identified by the common filtering ID,
Each filtering policy of the individual filtering table and the common filtering table is composed of at least one filtering rule, and each filtering rule has an address representing the rule itself and a position where the filtering rule to be searched next is stored. Information is described,
The means 7 performs a rule search for a filtering rule specified by the filtering ID given to the packet based on the individual filtering ID and common filtering ID given to the packet, and the individual filtering ID and common filtering ID are When the assigned packet meets the conditions of the rule, the rule search is terminated, and the packet with the individual filtering ID and the common filtering ID is passed or discarded according to the operation described in the rule, A high-speed search-capable high-multiple user accommodating firewall apparatus that performs a rule search for a filtering rule stored at a position represented by the address information when the rule condition is not met.
フィルタリングIDと、各フィルタリングIDの先頭のフィルタリングルールが格納される位置を表すアドレス情報とを管理するフィルタリング先頭ルール管理テーブルを備え、
前記手段7は、前記フィルタリング先頭ルール管理テーブルに基づき、前記各フィルタリングIDにより特定されるフィルタリングポリシの先頭のフィルタリングルールを識別することを特徴とする請求項1または請求項3に記載の高速検索対応高多重ユーザ収容ファイアウォール装置。
A filtering head rule management table for managing the filtering ID and address information indicating the position where the heading filtering rule of each filtering ID is stored;
The high-speed search support according to claim 1 or 3, wherein the means 7 identifies the filtering rule at the head of the filtering policy specified by each filtering ID based on the filtering head rule management table. High multi-user accommodation firewall device.
個別フィルタリングIDと、各個別フィルタリングIDの先頭のフィルタリングルールが格納される位置を表すアドレス情報とを管理する個別フィルタリング先頭ルール管理テーブルと、
共通フィルタリングIDと、各共通フィルタリングIDの先頭のフィルタリングルールが格納される位置を表すアドレス情報とを管理する共通フィルタリング先頭ルール管理テーブルとを備え、
前記手段7は、前記個別フィルタリング先頭ルール管理テーブル、および前記共通フィルタリング先頭ルール管理テーブルに基づき、前記各個別フィルタリングIDおよび前記共通フィルタリングIDにより特定されるフィルタリングポリシの先頭のフィルタリングルールを識別することを特徴とする請求項2または請求項4に記載の高速検索対応高多重ユーザ収容ファイアウォール装置。
An individual filtering head rule management table for managing individual filtering IDs and address information indicating a position where the head filtering rule of each individual filtering ID is stored;
A common filtering head rule management table for managing a common filtering ID and address information indicating a position where a head filtering rule of each common filtering ID is stored;
The means 7 identifies the filtering rule at the head of the filtering policy specified by the individual filtering ID and the common filtering ID based on the individual filtering head rule management table and the common filtering head rule management table. The high-multiple user accommodation firewall apparatus according to claim 2 or 4, wherein the high-speed search correspondence high-multiple user accommodation firewall apparatus is characterized.
前記手段7は、ルール検索したフィルタリングルールに前記アドレス情報が記述されていない場合に、当該検索したフィルタリングルールが最終ルールと判断することを特徴とする請求項1ないし請求項6のいずれか1項に記載の高速検索対応高多重ユーザ収容ファイアウォール装置。7. The method according to claim 1, wherein when the address information is not described in the filtering rule searched by the rule, the means determines that the searched filtering rule is a final rule. 2. A high-multiple user accommodation firewall device corresponding to the high-speed search described in 1. 前記認証サーバはRadiusサーバであり、
前記ユーザIDはユーザIPアドレスであり、
前記ネットワークはインタネットであり、
前記ユーザ端末からネットワーク接続はPPPを用いることを特徴とする請求項1ないし請求項7のいずれか1項に記載の高速検索対応高多重ユーザ収容ファイアウォール装置。
The authentication server is a Radius server;
The user ID is a user IP address;
The network is the Internet;
The high-speed search-capable high-multiple user accommodating firewall apparatus according to any one of claims 1 to 7, wherein PPP is used for network connection from the user terminal.
JP2003192591A 2003-07-07 2003-07-07 High multiple user housing firewall device corresponding to high speed retrieval Pending JP2005031720A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003192591A JP2005031720A (en) 2003-07-07 2003-07-07 High multiple user housing firewall device corresponding to high speed retrieval

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003192591A JP2005031720A (en) 2003-07-07 2003-07-07 High multiple user housing firewall device corresponding to high speed retrieval

Publications (1)

Publication Number Publication Date
JP2005031720A true JP2005031720A (en) 2005-02-03

Family

ID=34204330

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003192591A Pending JP2005031720A (en) 2003-07-07 2003-07-07 High multiple user housing firewall device corresponding to high speed retrieval

Country Status (1)

Country Link
JP (1) JP2005031720A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007251561A (en) * 2006-03-15 2007-09-27 Nippon Telegr & Teleph Corp <Ntt> Communication system, access management method, recording medium for recording access management program, access management server, transmission terminal, and relaying server
CN101848091B (en) * 2009-03-25 2013-06-05 成都友道科技有限公司 Method and system for processing data search
JP2016071822A (en) * 2014-10-02 2016-05-09 富士通株式会社 Firewall setting program, firewall setting method, and firewall setting system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007251561A (en) * 2006-03-15 2007-09-27 Nippon Telegr & Teleph Corp <Ntt> Communication system, access management method, recording medium for recording access management program, access management server, transmission terminal, and relaying server
CN101848091B (en) * 2009-03-25 2013-06-05 成都友道科技有限公司 Method and system for processing data search
JP2016071822A (en) * 2014-10-02 2016-05-09 富士通株式会社 Firewall setting program, firewall setting method, and firewall setting system

Similar Documents

Publication Publication Date Title
US7735129B2 (en) Firewall device
CN107733670B (en) Forwarding strategy configuration method and device
JP4105722B2 (en) Communication device
CN100459517C (en) Method and apparatus for self-configuring routing devices in a network
JP5088100B2 (en) IP network system, access control method thereof, IP address distribution apparatus, and IP address distribution method
US7869442B1 (en) Method and apparatus for specifying IP termination in a network element
JP2004048234A (en) User authentication system and user authentication method
EP2824872B1 (en) Host providing system and communication control method
JP5128626B2 (en) Subscriber service selection over non-channelized media
EP1830520B1 (en) Method and system for redirecting of the client
CA2404910C (en) Data networks
US20060193330A1 (en) Communication apparatus, router apparatus, communication method and computer program product
US7756976B2 (en) Systems and methods for denying rogue DHCP services
CN116668191B (en) Internet of things application virtual gateway with data encryption convergence function
US7796614B1 (en) Systems and methods for message proxying
JP2005031720A (en) High multiple user housing firewall device corresponding to high speed retrieval
US8873555B1 (en) Privilege-based access admission table
JP2002252631A (en) Vpn information providing system and its method
JP3965774B2 (en) Network system
JP4184997B2 (en) Service providing platform apparatus and service providing method
TW201941127A (en) Management device, management system, management method, and management program
CN113328942B (en) Configuration issuing method and device and computer equipment
CN110224844B (en) Scheduling method and system of virtual private network
JP2005100194A (en) Server device multiply belonging to two or more user closed network
JP4252529B2 (en) Tunneling transfer service providing platform equipment