JP2004078507A - Access control device, access control method and computer program - Google Patents

Access control device, access control method and computer program Download PDF

Info

Publication number
JP2004078507A
JP2004078507A JP2002237259A JP2002237259A JP2004078507A JP 2004078507 A JP2004078507 A JP 2004078507A JP 2002237259 A JP2002237259 A JP 2002237259A JP 2002237259 A JP2002237259 A JP 2002237259A JP 2004078507 A JP2004078507 A JP 2004078507A
Authority
JP
Japan
Prior art keywords
state
communication
access control
packet
connection
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
JP2002237259A
Other languages
Japanese (ja)
Inventor
Atsushi Saito
齋藤 淳
Original Assignee
Sony 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 Sony Corp, ソニー株式会社 filed Critical Sony Corp
Priority to JP2002237259A priority Critical patent/JP2004078507A/en
Publication of JP2004078507A publication Critical patent/JP2004078507A/en
Application status is Pending legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To allow a fire wall built in each terminal unit connected to a network, to perform appropriate access control in cooperation with an application of a terminal device.
SOLUTION: The setting of the fire wall is dynamically changed using the contents of parameters of a used system call when using the network. The network is thereby used while enhancing safety without setting the fire wall beforehand. Furthermore, there is no need to add a special code for control to the fire wall, to the application, nor need to incorporate a unique processing mechanism corresponding to a protocol such as a file transfer protocol, in the fire wall.
COPYRIGHT: (C)2004,JPO

Description

【0001】 [0001]
【発明の属する技術分野】 BACKGROUND OF THE INVENTION
本発明は、コンピュータなどの機器への外部からのアクセスをコントロールするアクセス制御装置及びアクセス制御方法、並びにコンピュータ・プログラムに係り、特に、ネットワークに接続された機器に対するアクセスをコントロールするアクセス制御装置及びアクセス制御方法、並びにコンピュータ・プログラムに関する。 The present invention is an access control device and an access control method for controlling external access to equipment such as a computer, and a computer program, in particular, the access control device and accessing to control access to the devices connected to the network control method, and a computer program.
【0002】 [0002]
さらに詳しくは、本発明は、ネットワークの境界に配置されて通過するパケットを監視し、設定されたルールに従ってパケットを通過させるか破棄するかといったアクセス制御を行なうアクセス制御装置及びアクセス制御方法、並びにコンピュータ・プログラムに係り、特に、機器上で動作するアプリケーションと連携して適切なアクセス制御を行なうアクセス制御装置及びアクセス制御方法、並びにコンピュータ・プログラムに関する。 More particularly, the present invention monitors the packets passing placed on the boundary of the network, set access control apparatus and access control method performed whether such access control or discard the packet is passed according to the rules and computer, - relates to the program, in particular, the access control device and an access control method for performing appropriate access control in conjunction with applications running on the device, and a computer program.
【0003】 [0003]
【従来の技術】 BACKGROUND OF THE INVENTION
昨今、情報処理や情報通信などのコンピューティング技術が飛躍的に向上し、コンピュータ・システムが広汎に普及してきている。 Recently, computing technology such as information processing and information communication is dramatically improved, computer systems have become popular in extensive. さらに、コンピュータどうしを相互接続するネットワーク・コンピューティング技術に対する要望も高まってきている。 Furthermore, it has also increased demand for network computing technology for interconnecting computers to each other. ネットワーク接続環境下では、コンピュータ資源の共有や、情報の共有・流通・配布・交換などの協働的作業を円滑に行なうことができる。 Under networked environment, it is possible to perform sharing and computer resources, the cooperative work such as sharing and distribution, distribution and exchange of information smoothly.
【0004】 [0004]
コンピュータどうしを相互接続するネットワークの形態は様々である。 Form of network interconnecting the computers to each other may vary. 例えば、イーサネット(Ethernet)のような局所に敷設されたLAN(Local Area Network)や、さらには、ネットワークどうしの相互接続を繰り返し行った結果として文字通り世界規模のネットワークへ成長を遂げた「インターネット」(The Internet)などさまざまである。 For example, local to the laid down by LAN (Local Area Network), such as an Ethernet (Ethernet), and further, literally as a result of repeated mutual connection of the network to each other has grown to a worldwide network "Internet" ( the Internet) is a variety, such as.
【0005】 [0005]
インターネットは、各大学や研究機関などに設置されたサーバが自主的に相互接続を繰り返した結果、巨大ネットワークへと成長するに至った、字義通り、ネットワークのネットワークである。 Internet, as a result of a server installed, such as in each of the universities and research institutions was repeated voluntarily interconnected, which resulted in the growth into a huge network, literally, is a network of networks. 現在、インターネット上には無数のサーバが接続されており、各サーバは、各種の資源オブジェクトを無数のクライアントに公開している。 Currently, on the Internet are connected to a myriad servers, each server has published a variety of resource object to a myriad of clients. インターネット上のサーバ同士は、通常、TCP/IP(Transmission Control Protocol/Internet Protocol)プロトコルに従って相互接続されている。 Between servers on the Internet, they are interconnected according to the normal, TCP / IP (Transmission Control Protocol / Internet Protocol) protocol.
【0006】 [0006]
インターネット上では、WWW(World Wide Web)、News、TELNET(TELetypewriter NETwork)、FTP(File Transfer Protocol)、Gopherなど、多数のサービス/アプリケーションが公開されている。 On the Internet, WWW (World Wide Web), News, TELNET (TELetypewriter NETwork), FTP (File Transfer Protocol), such as Gopher, a large number of service / application has been published.
【0007】 [0007]
最近では、電話回線(ADSL(Asymmetric Digital Subscriber Line)など)やケーブル・テレビなどの高速なネットワーク回線の敷設に伴い、常時接続環境の充実してきている。 Recently, with the laying of a high-speed network line such as a telephone line (such as ADSL (Asymmetric Digital Subscriber Line)) and cable TV, it has been enhanced in the always-connected environment. また、今後普及が見込まれるIPv6により、数多くの機器がインターネットに接続されることが予想される。 Moreover, the future spread is expected IPv6, it is expected that a large number of devices are connected to the Internet.
【0008】 [0008]
しかしながら、このような広域ネットワークの普及と同時に、安全性に対する不安も生じている。 However, at the same time as the spread of such a wide area network, are caused anxiety for safety. 何故ならば、ネットワークを介することで知らないうちに機器に不正にアクセスされ、システム内のデータを不正に模倣・盗用、改ざんしたり、ウィルス感染などによりシステムを使用不要にしたりするなど、人手を介さずに攻撃を受ける可能性があるからである。 This is because, illegally accessed to the device without your knowledge by going through the network, unauthorized imitation, stealing the data in the system, or tampering, such as by a virus infection such as or unnecessary use of the system, the manual This is because there is a possibility that the attack without the intervention. このため、インターネットの利用者は、いくつかのセキュリティ対策を講じなければならない。 For this reason, Internet users must take some of the security measures.
【0009】 [0009]
ネットワークに接続した機器又はサービスについて、誰に対してどのような利用を許すかのコントロール、すなわちアクセス制御は、通信の経路上に配設されたファイヤ・ウォールが行なうことが一般的である。 The connected equipment or services to the network, anyone what controls allow utilized for, or access control, it is common to fire wall disposed on a path of communication is performed.
【0010】 [0010]
ファイヤ・ウォールは、ネットワークの境界に配置され、通過するパケットを監視し、設定されたルールに従ってパケットを通過させるか又は破棄するかといった処理を行なう。 Fire wall is disposed on the boundary of the network, it monitors the packets passing through, performs processing such or discard the packet is passed, according to the rules set.
【0011】 [0011]
このようなファイヤ・ウォールの一般的な利用形態としては、ネットワークを信頼できる範囲(例えば自組織内ネットワーク)と信頼できない範囲(例えばインターネットのような外部ネットワーク)に区別し、両者間の通信を原則不可とし、少数の例外的な通信(例えばインターネット上のHTTPサーバに対する通信)のみを許すような利用方法が挙げられる。 Such a general usage of the fire wall are distinguished in the range unreliable range (e.g. self enterprise network) the network trusted (for example, an external network such as the Internet), in principle the communication therebetween It was impossible, and a utilization method that permits only a few exceptional communications (for example, communication to the HTTP server on the Internet).
【0012】 [0012]
しかしながら、近年のIPv6技術の発展とともに、将来のネットワークのあり方として、端末と通信相手の端末が直接接続する”end−to−end”通信を基本とした構成が望まれている。 However, along with recent development of IPv6 technology, as of the future network, terminal and the correspondent terminal is connected directly basic with the structure of the "end-to-end" communication is desired. その動機の1つとして、端末機器のアプリケーションを設計する者が自由にアプリケーションを作成できるようにするために、ネットワークは原則としてすべての端末へのend−to−endでの接続性を統一した単純なインターフェースで提供すべきだという考え方が挙げられる。 As one of its motives, to those who design the application of the terminal equipment is to be able to create a free application, the network is simple with a unified connectivity in the end-to-end to all of the terminal as a general rule It includes the idea that we should be provided with an interface.
【0013】 [0013]
そのような構成においては、通信の経路上にファイヤ・ウォールが存在せず、機器自体にファイヤ・ウォールの機能が組み込まれた形態が用いられるものと予想される。 In such an arrangement, there is no fire wall on the path of communication, it is expected that features built form of fire wall is used in the device itself.
【0014】 [0014]
例えば、IP Filter(http://cooms.anu.edu.au/ ̄avalon/ip−filter.htmlから取得できるもの)のようなパケット・フィルタリング・ソフトウェアを各端末機器にインストールするような構成が考えられる。 For example, configuration to install a packet filtering software on each terminal equipment, such as IP Filter (those can be acquired from Http://Cooms.Anu.Edu.Au/avalon/ip-filter.Html) is considered It is. その場合、端末機器の構成は、例えば図20に示すようなものが考えられる。 In that case, the configuration of the terminal equipment, it is conceivable for example, as shown in FIG. 20.
【0015】 [0015]
ファイヤ・ウォールには、ルールを設定するためのインターフェースとなる設定部があり、ユーザ・プログラムの設定ツールによって設定される。 The fire wall, there is a setting unit that serves as an interface for setting a rule, is set by the setting tool of the user program. また、状態保持部には、例えば通過するパケットの属するTCPセッションの状態が記録される。 In addition, the state holding unit, the state of the TCP session which the packet belongs to example passes is recorded. 制御部は、設定されたルールと、状態保持部の情報を利用してパケット通過の可否を決定する。 Controller determines the rules set, by utilizing the information of the state holding unit whether the packet passes.
【0016】 [0016]
しかしながら、ファイヤ・ウォールと同様の機構を端末機器に組み込んだだけでは、アプリケーション・プログラムがネットワークを利用するのに必要なファイヤ・ウォールの設定をあらかじめ設定ツールなどにより行なう必要があり、柔軟性に欠ける。 However, by the same mechanism as the fire wall only incorporated into the terminal equipment, it is necessary that the application program is carried out by such pre-set tool set the fire wall required to use the network, inflexible . 例えば、新たなアプリケーションの利用を開始するときなどに設定の変更が必要になるなどの困難が生じる。 For example, difficulties such as to change the setting or the like becomes necessary occurs when starting to use a new application.
【0017】 [0017]
また、アプリケーション・プロトコルによっては、ファイヤ・ウォールを越えた通信ができないという、ファイヤ・ウォールが本来持つ問題点のため、end−to−end通信を行ないつつ、安全性を確保するのは困難である。 Also, depending on the application protocol, it can not communicate across a fire wall, because of problems with fire wall is inherently while performing end-to-end communication, it is difficult to ensure safety .
【0018】 [0018]
一例として、ftp(File Transfer Protocol)に代表されるような、動的に決定したポート番号を使ってTCP接続を新規に行なうようなプロトコルについては、そのプロトコルの動作を把握していなければならない。 As an example, ftp as typified by (File Transfer Protocol), the new performing such protocol TCP connections using dynamically determined port number must know the operation of the protocol. すなわち、端末機器の設計者が新しいプロトコルを使うアプリケーションを作成した場合、ファイヤ・ウォールを超えた通信できないという事態が生じる。 In other words, when the terminal equipment of the designer has created an application to use the new protocol, a situation that can not communicate beyond the fire-wall occurs. このため、上述したような端末機器自体に組み込まれたファイヤ・ウォール機能を実現するには問題となる。 Therefore, a problem in realizing the fire wall function built into the terminal device itself as described above.
【0019】 [0019]
通常のftpクライアントの動作は図21に示すようなシーケンスに従って通信が行なわれる。 Normal operation of the ftp client communications according to the sequence shown in Figure 21 is performed. まず、制御用の通信をするためにftpサーバの21番ポートにTCP接続を行ない、各種コマンドの送信を行なう。 First, it performs TCP connection to the port 21 of the ftp server to the communication control, to transmit various commands. 一方、データ転送のためには別なTCP接続を用いるので、一般的には子プロセスを生成してPORTコマンドのパラメータとして指定するようになっている。 On the other hand, since the use of another TCP connection for data transfer, is generally adapted to specify as a parameter PORT command generates a child process. 例えば、クライアントがデータの取得のためにRETRコマンドを送った場合、ftpサーバはPORTコマンドで指定されたポートに対して接続してデータを転送する。 For example, if the client has sent a RETR command for the acquisition of data, ftp server transfers the data by connecting to the port specified by the PORT command.
【0020】 [0020]
このため、ファイや・ウォールにftpの通信を通過させるには、ftpサーバからデータ転送用の接続を許す必要がある。 Therefore, in order to pass the communication ftp to phi and wall, it is necessary to allow the connection for data transfer from the ftp server. このような設定をあらかじめ行なおうとすると、ftpサーバは多数あり、そのアドレスをあらかじめ決定することはできないため、すべてのアドレスからの接続を受け付けるような設定が必要になってしまう。 When wishing to make a such preset are numerous ftp server, since it is not possible to predetermine its address, it connects accept such settings from all addresses become necessary. このような設定では脆弱性が増すため、実現は困難である。 In such a setting to increase vulnerability, implementation is difficult.
【0021】 [0021]
従来のファイヤ・ウォール関連技術では、ftpの通信を通過させるには以下のような手法が用いられている。 In conventional fire wall related art, the following technique is to pass the communication ftp is used.
【0022】 [0022]
ファイヤ・ウォールが21番ポートのパケットを監視して、ftpクライアントが送信したPORTコマンドを発見して解析し、データ転送のためのポート番号を得る。 And fire wall monitors the packet port 21, and analyzed to discover PORT command ftp client sent, get the port number for the data transfer. その後、データ転送用のポートに対して、サーバからクライアントへのTCPコネクションの接続を許可するようにファイヤ・ウォールの設定変更を行なう。 Then, to the port for data transfer, change the setting of the fire wall to allow the connection of the TCP connection from the server to the client.
【0023】 [0023]
この方式では、FTPに特化した処理を持つプログラムが必要になるという問題がある。 In this scheme, there is a problem that it is necessary to program with processing specific to FTP. さらに、ftpと同様に、通信中に動的に割り当てたポート番号によって別な接続を生成するようなプロトコルに関しては、そのプロトコルの仕様に沿った処理を個別に追加することが必要になるという問題もある。 Furthermore, as with ftp, a problem with respect to the protocol to produce a different connection by dynamically assigned port numbers during communication, it is necessary to add the processing in accordance with the specification of the protocol individually there is also.
【0024】 [0024]
このような問題を解決するための技術として、例えば特開2000−349821号公報に開示されているポートアクセス制御システムを挙げることができる。 As a technique for solving this problem include a port access control system is disclosed, for example Japanese Patent 2000-349821 JP. 同公報によれば、FTPクライアントがオペレーティング・システムから動的に割り当てられたデータ・コネクション用のポートに対しては、外部ネットワークからのアクセスを許可するようにファイヤ・ウォールに要求することにより、FTPサーバ間でのデータ・コネクションを確立する。 According to this publication, for the ports for the data connection FTP client dynamically allocated from the operating system, by requiring the fire wall to allow access from the external network, FTP to establish a data connection between the server. データ・コネクションの開放時には、ファイヤ・ウォールにおけるそのポートに対するアクセス許可を取り消す。 At the time of release of the data connection, revoke access permissions to the port in the fire wall. したがって、FTPファイル伝送をファイヤ・ウォールを介して行なう場合にも、FTPファイル伝送に用いるポートをファイヤ・ウォールにおいてアクセス可能なものとしてあらかじめ設定しておく必要がなく、FTPファイル伝送におけるデータ・コネクションの確立などがファイヤ・ウォールを介して効率的に行なうことができ、ファイヤ・ウォールによるセキュリティを維持したままネットワークの利便性を向上させることができる。 Therefore, even when performing FTP file transfer through the fire wall, it is not necessary to set in advance as being accessible in the fire wall port used for the FTP file transfer, the data connection in the FTP file transmission establishment, etc. can be performed efficiently through the fire wall, thereby improving the convenience of the network while maintaining security by fire wall.
【0025】 [0025]
しかしながら、同公報に記載の技術では、ftpアプリケーションを変更しなくてはならないという問題がある。 However, in the technique described in this publication, there is a problem that has to change the ftp application.
【0026】 [0026]
【発明が解決しようとする課題】 [Problems that the Invention is to Solve
本発明の目的は、ネットワークの境界に配置されて通過するパケットを監視し、設定されたルールに従ってパケットを通過させるか破棄するかといったアクセス制御を好適に行なうことができる、優れたアクセス制御装置及びアクセス制御方法、並びにコンピュータ・プログラムを提供することにある。 An object of the present invention monitors the packets passing placed on the boundary of the network, it can be suitably controlling access such or discard the packet is passed, according to the rules set, good access control device and access control method, and a superior computer program.
【0027】 [0027]
本発明のさらなる目的は、機器上で動作するアプリケーションと連携して適切なアクセス制御を好適に行なうことができる、優れたアクセス制御装置及びアクセス制御方法、並びにコンピュータ・プログラムを提供することにある。 A further object of the present invention may be in conjunction with applications running on the device suitably performs appropriate access control, superior access control device and an access control method, and a superior computer program.
【0028】 [0028]
本発明のさらなる目的は、アプリケーションが通信を行なうために設定したルールの変更が必要となった時点で動的に設定変更を行なうことができる、優れたアクセス制御装置及びアクセス制御方法、並びにコンピュータ・プログラムを提供することにある。 A further object of the present invention, the application can be performed dynamically setting change when a change is needed in the rules set for communication, good access control device and an access control method, and computer It is to provide a program.
【0029】 [0029]
本発明のさらなる目的は、動的に決定したポート番号を使ってネットワーク接続を新規に行なうようなプロトコルでデータ通信を行なう場合であっても、好適にアクセス制御を行なうことができる、優れたアクセス制御装置及びアクセス制御方法、並びにコンピュータ・プログラムを提供することにある。 A further object of the present invention, even when performing the data communication protocol such as performing network connection to the new with the dynamically determined port number can be performed suitably access control, good access control apparatus and an access control method, and a superior computer program.
【0030】 [0030]
本発明のさらなる目的は、ネットワークに接続された個々の端末装置に内蔵されたファイヤ・ウォールが、端末機器のアプリケーションと連携して適切なアクセス制御を行なうことができる、優れたアクセス制御装置及びアクセス制御方法、並びにコンピュータ・プログラムを提供することにある。 A further object of the present invention, fire wall incorporated in each terminal device connected to the network, it is possible to perform proper access control in conjunction with the terminal device applications, superior access control device and the access control method, and a superior computer program.
【0031】 [0031]
本発明のさらなる目的は、初期状態のファイヤ・ウォールの設定では通信許可を与えない状態に設定し、アプリケーションが通信を行なうためにファイヤ・ウォールの設定変更が必要となった時点で動的に設定変更を行なうことができる、優れたアクセス制御装置及びアクセス制御方法、並びにコンピュータ・プログラムを提供することにある。 A further object of the present invention, dynamically set when the setting of the fire wall in the initial state is set to a state which does not give communication permission, the application becomes necessary configuration changes fire wall to communicate can be changed, superior access control apparatus and access control method, and a superior computer program.
【0032】 [0032]
【課題を解決するための手段及び作用】 Means and operation for solving the problem]
本発明は、上記課題を参酌してなされたものであり、その第1の側面は、ネットワークに接続された機器に対するアクセスを制御するアクセス制御装置であって、 The present invention has been made in consideration of the above problems, a first aspect is an access controller for controlling access to devices connected to the network,
ネットワーク・インターフェースへの入出力パケットを監視して、所定の制御ルールに基づいてパケットの通過の可否を制御するファイヤ・ウォールと、 It monitors the input and output packets to the network interface, and fire wall for controlling the propriety of passage of the packets based on a predetermined control rule,
アプリケーション・プログラムが通信時に呼び出す呼び出しパラメータを解釈して前記制御ルールを変更する設定部を備えたシステム・コールと、 And system calls the application program interprets the call parameters to call when communicating with a setting unit for changing the control rules,
を具備することを特徴とするアクセス制御装置である。 An access control apparatus characterized by comprising.
【0033】 [0033]
ここで、前記ファイヤ・ウォールは、通過するパケットの属するネットワーク接続に関する通信の状態を保持する状態保持部と、前記状態保持部に保持されている通信の状態に応じてパケット通過の可否を決定する制御部とを備えている。 Here, the fire wall includes a state holding unit that holds the state of the communication for the network the packet belongs to through-connection, to determine whether the packet transit in accordance with the state of communication retained in the state holding unit and a control unit.
【0034】 [0034]
前記状態保持部は、通過するパケットの属するネットワーク接続に関する発信元のアドレス及びポート、宛先アドレス及びポート、通信の状態、アプリケーションIDを記録し、また、前記制御部は、受信したパケットの宛先となるアプリケーションのIDの状態を参照してパケットの通過の可否を決定するようになっている。 The state holding unit, source address and port of network connection the packet belongs to pass, destination address and port, the communication state, records the application ID, also, the control unit is a destination of the received packet with reference to the state of the application ID is adapted to determine whether to pass the packet.
【0035】 [0035]
前記制御部は、より具体的には、受信したパケットの宛先となるアプリケーションのIDから該アプリケーションと関連するアプリケーションIDの一覧を参照し、関連するアプリケーションIDによってセッション情報を検索し、該セッションの宛先とパケットの送信元が一致するかどうかを判定し、一致した場合にパケットの通過を許可する。 Wherein, more specifically, with reference to the list of applications ID associated the ID of the destination of the received packet application with the application, searches the session information by the associated application ID, of the session destination and determining whether the source of the packet matches, permits the passage of packets if they match.
【0036】 [0036]
したがって、本発明の第1の側面に係るアクセス制御装置によれば、ネットワークを利用する際に、使用するシステム・コールのパラメータの内容を使ってファイヤ・ウォールの設定を動的に変更することで、あらかじめファイヤ・ウォールの設定をしなくても、安全を高めつつネットワークを利用することができる。 Therefore, according to the access control device according to the first aspect of the present invention, when using the network, with the content of the parameters of the system calls used by dynamically changing the setting of the fire wall , even without a set of pre-fire-wall, it is possible to use the network while enhancing safety. また、ファイヤ・ウォールへ制御するための特殊なコードをアプリケーションに加えなくてもよい。 Moreover, it is not added special codes to control the fire wall on the application. また、ファイヤ・ウォールにftpなどのプロトコルに対応した固有の処理機構を組み込まなくてもよい。 Moreover, it is not incorporated a specific processing mechanism corresponding to protocols such as ftp to fire wall.
【0037】 [0037]
前記設定部は、外部からの接続要求時に元のアプリケーションから立ち上げられる子プロセスの状態を前記状態保持部に登録するようにしてもよい。 The setting unit may state the child to be raised from the original application when a connection request from the outside so as to register in the state holding unit.
【0038】 [0038]
また、前記設定部は、元のアプリケーションから子プロセスを生成するときにその状態を前記状態保持部に登録するようにしてよい。 Further, the setting unit, its state when generating the original application child processes may be registered in the state holding unit.
【0039】 [0039]
また、ネットワーク接続を開始するシステム・コールにおいて、アプリケーション・プログラムが通信時に呼び出す呼び出しパラメータにファイヤ・ウォールの制御ルールを記述するパラメータを含んでいてもよい。 Further, in the system call for starting the network connection, the application program may include the parameters describing the control rules of the fire wall in the call parameter to call when communicating.
【0040】 [0040]
また、接続を待ち受けるためのシステム・コールにおいて、アプリケーション・プログラムが通信時に呼び出す呼び出しパラメータにファイヤ・ウォールの制御ルールを記述するパラメータを含んでいてもよい。 Further, the system calls for listening for connections, the control rule of the fire wall may include parameters describing the call parameter the application program calls during communication.
【0041】 [0041]
また、前記ファイヤ・ウォールは、通過するパケットの属するネットワーク接続に関する通信の状態が接続中である場合、アプリケーションから指定された宛先へ接続を開始するためのパケットの通過を許すようにしてもよい。 Moreover, the fire wall in the case of communication for network connection belongs packets passing through the state is connecting, may be allow passage of a packet to initiate a connection to the specified destination from the application.
【0042】 [0042]
また、前記ファイヤ・ウォールは、通過するパケットの属するネットワーク接続に関する通信の状態が通信中である場合、指定されている発信元から宛先への双方向の通信を許可するようにしてもよい。 Moreover, the fire wall in the case of communication for network connection belongs packets passing through state is in communication, may be from a source that is specified so as to allow two-way communication to the destination.
【0043】 [0043]
また、前記ファイヤ・ウォールは、通過するパケットの属するネットワーク接続に関する通信の状態が待ち受けである場合、アプリケーションに対して指定されている発信元からの接続を許すようにしてもよい。 Moreover, the fire wall, if it is waiting is communication for network connection the packet belongs to the pass state, it may be permitted to connect from a source that is specified for the application.
【0044】 [0044]
また、前記ファイヤ・ウォールは、通過するパケットの属するネットワーク接続に関する通信の状態が条件付待ち受けである場合、既に通信中状態にあるプログラムが動的に新たな接続をした場合のみ接続を許可するようにしてもよい。 Moreover, the fire wall, if the communication for network connection belongs packets passing through state is waiting conditional to the program that is already in communication to allow a connection only when the dynamic new connection it may be.
【0045】 [0045]
また、前記ファイヤ・ウォールは、通過するパケットの属するネットワーク接続に関する通信の状態が終了待ちの場合、接続を終了させる手順の途中であることを示すようにしてもよい。 Moreover, the fire wall in the case of communication for network connection the packet belongs passing state of completion waiting, it may be indicative of the middle of the procedure to terminate the connection.
【0046】 [0046]
また、本発明の第2の側面は、ネットワークに接続された機器に対するアクセスを制御するための処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、 The second aspect of the present invention is a computer program described in a computer-readable format so as to execute a process for controlling access to devices connected to the network on a computer system,
ネットワーク・インターフェースへの入出力パケットを監視して、所定の制御ルールに基づいてパケットの通過の可否を制御するパケット通過制御ステップと、 Monitors the input and output packets to the network interface, the packet transmission control step of controlling whether the passage of the packets based on a predetermined control rule,
アプリケーション・プログラムが通信時に呼び出す呼び出しパラメータを解釈して前記制御ルールを変更する制御ルール変更ステップと、 A control rule changing step of changing the control rule application program interprets the call parameters to invoke when a communication,
を具備することを特徴とするコンピュータ・プログラムである。 Is a computer program characterized by comprising a.
【0047】 [0047]
本発明の第2の側面に係るコンピュータ・プログラムは、コンピュータ・システム上で所定の処理を実現するようにコンピュータ可読形式で記述されたコンピュータ・プログラムを定義したものである。 The computer program according to the second aspect of the present invention defines a computer program described in a computer readable format so as to realize predetermined processing on a computer system. 換言すれば、本発明の第2の側面に係るコンピュータ・プログラムをコンピュータ・システムにインストールすることによって、コンピュータ・システム上では協働的作用が発揮され、本発明の第1側面に係るアクセス制御装置と同様の作用効果を得ることができる。 In other words, by installing the computer program according to the second aspect of the present invention in a computer system, cooperative operation on the computer system is exhibited, the access control device according to the first aspect of the present invention it is possible to obtain the same effect as.
【0048】 [0048]
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。 Further objects, features, and advantages of the present invention will become apparent from the detailed description based on embodiments of the invention and the accompanying drawings described below.
【0049】 [0049]
【発明の実施の形態】 DETAILED DESCRIPTION OF THE INVENTION
以下、図面を参照しながら本発明の実施形態について詳解する。 Hereinafter, described in detail embodiments of the present invention with reference to the drawings. 但し、端末装置がパケット・フィルタ形式のファイヤ・ウォールを用いてアクセス制御を行なう場合について扱うものとする。 However, it intended to cover the case where the terminal apparatus performs access control using the fire wall of the packet filter format.
【0050】 [0050]
図1には、本発明が適用された通信システムの構成例を模式的に示している。 FIG. 1 shows a configuration example of a communication system to which the present invention is applied is schematically shown.
【0051】 [0051]
同図において、ネットワーク6は、例えば企業など特定の組織内あるいは家庭内に限定的に敷設されたネットワークなどのローカル・エリア・ネットワーク(LAN)であり、端末4が接続され、IPv6アドレスaddr4が割り当てられている。 In the figure, the network 6 is, for example, a local area network, such as limiting laid network within a particular organization such as a company or in a home (LAN), the terminal 4 is connected, IPv6 address addr4 allocation It is.
【0052】 [0052]
端末4は、ネットワークを利用するアプリケーションを搭載した機器であり、一例としてパーソナル・コンピュータ(PC)などの計算機で構成されるが、勿論、ネットワーク通信機能を備えた家電製品などの他の形態の情報機器であってもよい。 Terminal 4 is a device equipped with applications that use the network, is configured with computer such as a personal computer (PC) as an example, of course, information other forms, such as household appliances having a network communication function it may be a device. 本明細書では、端末機器4内にFTPクライアント14を持つ機器を例として取り上げる。 In this specification, it is taken as an example a device with a FTP client 14 in the terminal equipment 4.
【0053】 [0053]
ネットワーク6は、インターネットなどの広域ネットワークを経由して他のネットワーク5と相互接続されている。 Network 6, via a wide area network such as the Internet is interconnected with other networks 5. ネットワーク5には、端末3が接続されている。 The network 5, the terminal 3 is connected.
【0054】 [0054]
端末3は、IPv6プロトコルにより通信可能な機器であり、アドレスaddr3が割り当てられている。 Terminal 3 is capable of communicating devices by IPv6 protocol, address addr3 is assigned. 端末3は、一例としてパーソナル・コンピュータ(PC)などの計算機で構成されるが、勿論、ネットワーク通信機能を備えた家電製品などの他の形態の情報機器であってもよい。 Terminal 3 is constituted by a computer such as a personal computer (PC) as an example, of course, may be information equipment other forms, such as household appliances having a network communication function. 本明細書では、端末機器3内にFTPサーバ13を持つ機器を例として取り上げる。 In this specification, it is taken as an example a device with an FTP server 13 in the terminal device 3.
【0055】 [0055]
図2には、端末機器4の機能構成を模式的に示している。 FIG 2 schematically illustrates the functional configuration of the terminal equipment 4. 同図に示すよう、端末機器4は、ネットワークを利用して通信するアプリケーション・プログラムであるFTPクライアント14と、IP(Internet Protocol)プロトコルに従ったデータの受け渡し処理を行なうIP処理部15と、ネットワーク6経由でのパケットの通過の可否を制御するファイヤ・ウォール16とを備えている。 As shown in the figure, the terminal device 4, the FTP client 14 is an application program that communicates using a network, and IP IP processing unit 15 that performs transfer processing of data in accordance with the (Internet Protocol) protocol, the network and a fire wall 16 for controlling the propriety of passage of the packet through 6.
【0056】 [0056]
FTPクライアント14などのアプリケーションは、ネットワーク利用時に、オペレーティング・システム(OS)の機能の一部であるシステム・コールを呼び出し、IP処理部15に指示を伝える。 Applications such as FTP client 14, when network use, called the system call, which is part of the functionality of the operating system (OS), conveys an instruction to the IP processing unit 15.
【0057】 [0057]
IP処理部15は、アプリケーションから渡されたデータを、IPパケットの形式に変換し、ファイヤ・ウォールで出力の可否を判定した上で出力する。 IP processing unit 15, the data passed from the application, into a format of the IP packet, and outputs on the determination whether the output fire wall. また、ネットワークから受信したIPパケットをファイヤ・ウォールで入力可否を判定し、形式変換してからアプリケーションに渡す。 Further, to determine the input whether the IP packet received from the network fire wall, and passes from the format conversion to the application.
【0058】 [0058]
ファイヤ・ウォール16は、ルールを設定するためのインターフェースとなる設定部16A及び通信の状態を保持する状態保持部16Bと、制御部16Cとを備えている。 Fire wall 16, a state holding unit 16B for holding the setting section 16A and the communication status as an interface for setting the rules, and a controller 16C. アプリケーションが通信時に呼び出すOSの機能であるシステム・コールから、設定部16Aを通じてルールの設定を行なう。 Application system call is a function of the OS to be called when the communication, to set the rules through the setting unit 16A.
【0059】 [0059]
状態保持部16Bには、通過するパケットの属するTCPなどの接続に関する情報として、発信元のアドレス及びポート、宛先アドレス及びポート、通信の状態、アプリケーションIDが記録される。 The state holding unit 16B, as the information about the connection such as TCP Field of packets passing through, source address and port, destination address and port, the communication state, the application ID is recorded. アプリケーションのIDは、ネットワーク接続を利用している各アプリケーションに関するIDが記録される。 ID applications, ID for each application that uses the network connection is recorded. 例えばUnix系のオペレーティング・システムにおけるプロセスIDがアプリケーションIDとして利用可能である。 For example the process ID of the operating system of the Unix system is available as an application ID. また、ネットワーク接続の状態としては、「接続中」、「待ち受け」、「条件付待ち受け」、「通信中」、「終了待ち」という5通りの状態が用いられる。 As the state of the network connection, "connecting", "waiting", "waiting conditional", "busy", the state of the 5 types of "end wait" is used.
【0060】 [0060]
ファイヤ・ウォール16内の制御部16Cは、状態保持部16Bの情報を利用して、パケット通過の可否を決定する。 Control unit 16C of the fire wall 16 utilizes the information of the state holding section 16B, determines whether the packet passes.
【0061】 [0061]
「接続中」状態の場合、端末内のアプリケーションから指定された宛先へ接続を開始するためのパケットの通過を許す。 If the "connecting" state, allowing the passage of packets to initiate a connection to the specified destination from the application in the terminal.
【0062】 [0062]
「通信中」状態の場合、指定されている発信元から宛先への双方向の通信を許可する。 If the "busy" state, to allow two-way communications from source to destination specified.
【0063】 [0063]
「待ち受け」状態の場合、端末内のアプリケーションに対して、指定されている発信元からの接続を許す。 If the "standby" state, the application in the terminal, allowing the connection from the source specified.
【0064】 [0064]
「条件付き待ち受け」の場合、既に通信中状態にあるプログラムが動的に新たな接続をした場合のみ接続を許可する。 In the case of "waiting with conditions", only to allow the connection if the program that is already in the communication state has a dynamic new connection.
【0065】 [0065]
「終了待ち」の場合、接続を終了させる手順の途中であることを示す。 If the "termination waiting", indicating the course of the procedure to terminate the connection.
【0066】 [0066]
図2に示す実施形態に係る端末装置4における動作を、インターネット5を介して相互接続される端末3のFTPサーバ13に接続してファイル取得を行なう通信の手順を例に挙げて説明する。 The operation of the terminal apparatus 4 according to the embodiment shown in FIG. 2 will be described as an example of a communication procedure to connect to the FTP server 13 of the terminal 3 performs a file acquisition interconnected via the Internet 5. 図3及び図4には、このときの端末装置4の動作手順をフローチャートの形式で示している。 3 and 4 show an operation procedure of the terminal apparatus 4 in this case in the form of a flowchart. また、図5には、このときの端末装置4及び端末装置3間の動作シーケンスを示している。 Further, in FIG. 5 shows an operation sequence between terminal device 4 and terminal 3 in this case.
【0067】 [0067]
本実施形態では、端末4上のファイヤ・ウォール16は、当初、すべての通信を不許可とするように設定されている。 In this embodiment, the fire wall 16 on the terminal 4 is initially all communications are set to disallow. 但し、この初期設定は一例であり、インターネット5上で公衆に公開するような類のサーバ機能を持つ場合には、以下の説明と矛盾することなく、サーバがリクエスト受信に使用するポート番号の通信を許可するよう、適切な設定をすることが可能である。 However, the initial setting is an example, communication in the case with the kind server function, such as to expose to the public on the Internet 5, Consistent with the description below, the port number used by the server to the request received to allow, it is possible to make an appropriate setting.
【0068】 [0068]
ftpクライアント14がftpサーバ13に接続するために、端末3のIPアドレスaddr3の21番ポート(コマンド用ポート)に対するconnectを実行する(ステップS1)。 ftp client 14 to connect to the ftp server 13, executes the connect against port 21 of the IP address addr3 of the terminal 3 (port commands) (Step S1).
【0069】 [0069]
端末4のOSは、connectシステム・コールの処理中に、その引数である接続先アドレスaddr3、ポート21番といったTCP接続の情報と、ftpクライアント14のプロセスIDを組にして、ファイヤ・ウォール16の状態保持部16Bに登録する(ステップS2)。 OS of the terminal 4, during the processing of a connect system call, the argument is a connection address addr3, and information of a TCP connection, such as port number 21, and a set of the process ID of the ftp client 14, the fire wall 16 registered in the state holding unit 16B (step S2). このとき、この接続に関する情報は「接続中」状態として、状態保持部16Bに登録される。 In this case, as a state "in connection" information on this connection are registered in the state holding section 16B.
【0070】 [0070]
ftpクライアント14とftpサーバ13でTCP接続が確立した後、ファイヤ・ウォール16は、状態保持部16Bのaddr3のポート21番に対する接続に関する情報を「通信中」状態に変更する(ステップS3)。 After establishing the TCP connection by ftp client 14 and the ftp server 13, fire wall 16, to change the information about the connection to the port number 21 addr3 state-holding portion 16B to the "busy" state (step S3).
【0071】 [0071]
ftpクライアント14は、子プロセスを立ち上げ、データ転送のために新たなTCP接続を準備する(ステップS4)。 ftp client 14, launched a child process, prepares a new TCP connection for data transfer (step S4). ここでは、データ転送用ポートとしてポート5001番を利用する場合を例に挙げる。 Here, the case of use of port 5001 as a port for data transfer as an example.
【0072】 [0072]
子プロセスは、5001番ポートでTCP接続を待つよう、listenを実行する(ステップS5)。 The child process to wait for TCP connections 5001 port, executes listen (step S5).
【0073】 [0073]
次に、子プロセスは、システム・コールacceptを実行して、5001番ポートに接続されるまでブロックする(ステップS6)。 Then, the child process then executes the system call accept, block until being connected to the 5001 port (step S6).
【0074】 [0074]
次に、ftpクライアント14は、データ転送のためのポートを指定するPORTコマンドを、制御のために既に21番ポートに対して確立したTCP接続を使って転送する(ステップS7)。 Next, ftp client 14, the PORT command to specify the port for data transfer, and transfers using TCP connection already established to port 21 for control (step S7).
【0075】 [0075]
これに対し、ftpサーバ13は、PORTコマンドを受信して、パラメータであるポート番号5001を記録する(ステップS8)。 In contrast, ftp server 13 receives the PORT command, records the port number 5001 is a parameter (step S8).
【0076】 [0076]
次いで、ftpクライアント14は、データ取得のため、RETRコマンドを送信する(ステップS9)。 Then, ftp client 14, for data acquisition, and it transmits the RETR command (step S9).
【0077】 [0077]
ftpサーバ13は、RETRコマンドを受信すると、addr4の5001番ポートに対してデータを送信する(ステップS10)。 ftp server 13 receives the RETR command, sends the data to the 5001 port of addr4 (step S10).
【0078】 [0078]
ファイヤ・ウォール16は、addr3からの5001番ポートに対するTCPパケットの到着を発見する(ステップS11)。 Fire wall 16, to discover the arrival of the TCP packet to the 5001 port of from addr3 (step S11).
【0079】 [0079]
次いで、ファイヤ・ウォール16は、IP処理部15で保持している状態の中から、現在端末4でlistenされているポートの一覧を取得し(ステップS12)、その中に5001番があるかどうかを調べる(ステップS13)。 Then, whether fire wall 16, from the state held in the IP processing unit 15 obtains a list of ports that are currently listen at the terminal 4 (step S12), the therein is 5001 the check (step S13). このような動作は、例えばUnix系のオペレーティング・システムであれば、socktatコマンドを使って情報を取得することにより実現される。 Such an operation, for example if the Unix-like operating systems, is achieved by obtaining information using socktat command.
【0080】 [0080]
ここで、現在端末4でlistenされているポートの一覧の5001番がなかった場合には、パケットを破棄して(ステップS14)、RSTを返す(ステップS15)。 Here, if no 5001 of a list of ports that are currently listen on terminal 4, discards the packet (step S14), and returns the RST (step S15). その結果、ftpサーバ13からのTCP接続の試みは失敗する。 As a result, the attempt of the TCP connection from the ftp server 13 will fail.
【0081】 [0081]
また、5001番ポートが待ち受けられていた場合、そのポートを使用しているプロセスのプロセスID、及びその子プロセスのID一覧を取得する(ステップS16)。 Further, if the 5001 port had been waiting, the process ID of the process that is using the port, and acquires the ID list of the child (Step S16).
【0082】 [0082]
次いで、ファイヤ・ウォール16は、上記のプロセス又はその子プロセスのそれぞれについて、IDの一覧を使って、状態保持部16Bにaddr3との間で「通信中」状態である接続の情報があるかどうかを検索する(ステップS17)。 Then, fire wall 16, for each of the above processes or a child, with a list of ID, and whether there is information on the connection is "busy" state with the addr3 the state holding section 16B Search for (step S17).
【0083】 [0083]
もし存在しなければ(ステップS18)、ファイヤ・ウォール16は、パケットを破棄して(ステップS14)、RSTを返す(ステップS15)。 If not present (step S18), and fire wall 16 discards the packet (step S14), and returns the RST (step S15). その結果、ftpサーバ13からのTCP接続の試みは失敗する。 As a result, the attempt of the TCP connection from the ftp server 13 will fail.
【0084】 [0084]
一方、状態保持部16Bにaddr3との間で「通信中」状態である接続の情報が存在する場合には(ステップS18)、ファイヤ・ウォール16は、パケットの受信処理を続行すると同時に、5001番ポートに対するTCP接続の情報を「通信中」状態として登録し、パケットの通過を許可する(ステップS19)。 On the other hand, if there is information on the connection is "busy" state with the addr3 the state holding section 16B (step S18), and fire wall 16 and continues the receiving process of the packet at the same time, 5001 It registers information of TCP connection to port as a status "busy", to allow the passage of packets (step S19).
【0085】 [0085]
その後、子プロセスが待ち受けていた5001番へのTCP接続が確立すると(ステップS20)、子プロセスとftpサーバの間でデータ転送を実行する(ステップS21)。 Then, when the TCP connection to 5001 which has been waiting the child process is established (step S20), and performs data transfer between the child and the ftp server (step S21).
【0086】 [0086]
ファイヤ・ウォール16は、5001番ポートに対するFINパケットの到着を発見する(ステップS22)。 Fire wall 16, to discover the arrival of the FIN packet to the 5001 port (step S22).
【0087】 [0087]
ftpクライアント14は、TCPの終了処理として、FINに対するACKを送信する(ステップS23)。 ftp client 14, as the end process of TCP, sends an ACK for the FIN (step S23).
【0088】 [0088]
端末14上の子プロセスの終了により、closeが実行される(ステップS24)。 Upon termination of a child process of the terminal 14, close The is executed (step S24).
【0089】 [0089]
オペレーティング・システムは、closeシステム・コールの処理中に、closeで指定されたソケット・ディスクリプタから、該当するTCPコネクションの宛先アドレス、宛先ポート、送信先ポートの情報を得て、該当する(データ転送用ポートとしての)5001番ポートの接続の情報をファイヤ・ウォール16の状態保持部16Bより削除する(ステップS25)。 Operating system, during the processing of close system call, the socket descriptor designated by the close, to give the destination address of the TCP connection applicable, the destination port, the information of the destination port, corresponding (data transfer the information of the connection port as a) 5001 port to remove from the state holding section 16B of the fire wall 16 (step S25).
【0090】 [0090]
以上でデータ転送コネクションに関する処理が一通り終了する。 Processing relates to a data transfer connection is more than the end one way.
【0091】 [0091]
ftpクライアント14の終了時、ftpクライアント14がcloseシステム・コールを発行する(ステップS26)。 At the end of the ftp client 14, ftp client 14 issues a close system call (step S26).
【0092】 [0092]
オペレーティング・システムは、close処理中に、コマンド用ポートとしての21番ポートの接続の情報をファイヤ・ウォール16の状態保持部16Bから削除して(ステップS27)、パケットの通過を禁止する。 The operating system, in close processing, by deleting the information of the connection port 21 as the port for commands from the state holding section 16B of the fire wall 16 (step S27), and prohibits the passage of the packet.
【0093】 [0093]
以上の説明からも判るように、図2に示すような構成の端末4においては、あらかじめftpに特化した動作をするようなファイヤ・ウォールの機能がなくても、ファイヤ・ウォール越しに従来のftpプロトコルを変更することなく使用することが可能になる。 As understood from the above description, in the configuration of the terminal 4, as shown in FIG. 2, without the function of fire wall such that an operation dedicated to advance ftp, conventional in fire wall over it is possible to use without changing the ftp protocol. また、ftp以外に、例えばRTSP(Real Time Streaming Protocol)など動的に決定したポート番号を使って接続を新規に作成するようなプロトコルについても、図示の端末4を同様に適用することができる。 Besides ftp, for example for some protocols, such as to create a connection with the port number dynamically determined such RTSP (Real Time Streaming Protocol) to the new, can be applied to terminal 4 shown similarly.
【0094】 [0094]
図6には、端末機器4の他の機能構成例を模式的に示している。 Figure 6 is another functional configuration example of the terminal equipment 4 is schematically shown. 同図に示すよう、端末機器4は、ネットワークを利用して通信するアプリケーション・プログラムであるFTPクライアント14と、IP(Internet Protocol)プロトコルに従ったデータの受け渡し処理を行なうIP処理部15と、ネットワーク6経由でのパケットの通過の可否を制御するファイヤ・ウォール16とを備えている。 As shown in the figure, the terminal device 4, the FTP client 14 is an application program that communicates using a network, and IP IP processing unit 15 that performs transfer processing of data in accordance with the (Internet Protocol) protocol, the network and a fire wall 16 for controlling the propriety of passage of the packet through 6.
【0095】 [0095]
FTPクライアント14などのアプリケーションは、ネットワーク利用時に、オペレーティング・システム(OS)の機能であるシステム・コールを呼び出し、IP処理部15に指示を伝える。 Applications such as FTP client 14, when network use, called the system call is a function of the operating system (OS), conveys an instruction to the IP processing unit 15.
【0096】 [0096]
IP処理部15は、アプリケーションから渡されたデータを、IPパケットの形式に変換し、ファイヤ・ウォールで出力の可否を判定した上で出力する。 IP processing unit 15, the data passed from the application, into a format of the IP packet, and outputs on the determination whether the output fire wall. また、ネットワークから受信したIPパケットをファイヤ・ウォールで入力可否を判定し、形式変換してからアプリケーションに渡す。 Further, to determine the input whether the IP packet received from the network fire wall, and passes from the format conversion to the application.
【0097】 [0097]
ファイヤ・ウォール16は、ルールを設定するためのインターフェースとなる設定部16A及び通信の状態を保持する状態保持部16Bと、制御部16Cとを備えている。 Fire wall 16, a state holding unit 16B for holding the setting section 16A and the communication status as an interface for setting the rules, and a controller 16C. アプリケーションが通信時に呼び出すOSの機能であるシステム・コールから、設定部16Aを通じて設定を行なう。 Application system call is a function of the OS to be called when the communication, to set through the setting unit 16A.
【0098】 [0098]
状態保持部16Bには、通過するパケットの属するTCPなどの接続に関する情報として、発信元のアドレス及びポート、宛先アドレス及びポート、通信の状態、アプリケーションIDが記録される。 The state holding unit 16B, as the information about the connection such as TCP Field of packets passing through, source address and port, destination address and port, the communication state, the application ID is recorded. アプリケーションのIDは、ネットワーク接続を利用している各アプリケーションに関するIDが記録される。 ID applications, ID for each application that uses the network connection is recorded. 例えばUnix OSにおけるプロセスIDがアプリケーションIDとして利用可能である。 For example the process ID of Unix OS is available as an application ID. また、状態としては、「接続中」、「待ち受け」、「条件付待ち受け」、「通信中」、「終了待ち」という5通りの状態が用いられる。 In addition, as a state, "in connection", "waiting", "waiting conditional", "busy", the state of the 5 types of "Wait for end of" used.
【0099】 [0099]
ファイヤ・ウォール16内の制御部16Cは、状態保持部16Bの情報を利用して、パケット通過の可否を決定する。 Control unit 16C of the fire wall 16 utilizes the information of the state holding section 16B, determines whether the packet passes.
【0100】 [0100]
図6に示す実施形態に係る端末装置4における動作を、インターネット5を介して相互接続される端末3のFTPサーバ13に接続してファイル取得を行なう通信の手順を例に挙げて説明する。 The operation of the terminal apparatus 4 according to the embodiment shown in FIG. 6, will be described as an example of a communication procedure to connect to the FTP server 13 of the terminal 3 performs a file acquisition interconnected via the Internet 5. 図7及び図8には、このときの端末装置4の動作手順をフローチャートの形式で示している。 7 and 8 show an operation procedure of the terminal apparatus 4 in this case in the form of a flowchart. また、図9には、このときの端末装置4及び端末装置3間の動作シーケンスを示している。 Further, in FIG. 9 shows an operation sequence between terminal device 4 and terminal 3 in this case.
【0101】 [0101]
本実施形態では、端末4上のファイヤ・ウォール16は、当初、すべての通信を不許可とするように設定されている。 In this embodiment, the fire wall 16 on the terminal 4 is initially all communications are set to disallow. 但し、この初期設定は一例であり、インターネット5上で公衆に公開するような類のサーバ機能を持つ場合には、以下の説明と矛盾することなく、サーバがリクエスト受信に使用するポート番号の通信を許可するよう、適切な設定をすることが可能である。 However, the initial setting is an example, communication in the case with the kind server function, such as to expose to the public on the Internet 5, Consistent with the description below, the port number used by the server to the request received to allow, it is possible to make an appropriate setting.
【0102】 [0102]
ftpクライアント14がftpサーバ13に接続するために、端末3のIPアドレスaddr3のコマンド用ポートとしての21番ポートに対するconnectを実行する(ステップS31)。 ftp client 14 to connect to the ftp server 13, executes the connect against port 21 of the command port of the IP addresses addr3 of the terminal 3 (step S31).
【0103】 [0103]
端末4のOSは、connectシステム・コールの処理中に、その引数である接続先アドレスaddr3、ポート21番といったTCP接続の情報と、ftpクライアント14のプロセスIDを組にして、ファイヤ・ウォール16の状態保持部16Bに登録する(ステップS32)。 OS of the terminal 4, during the processing of a connect system call, the argument is a connection address addr3, and information of a TCP connection, such as port number 21, and a set of the process ID of the ftp client 14, the fire wall 16 registered in the state holding unit 16B (step S32). このとき、この接続に関する情報は「接続中」状態として、状態保持部16Bに登録される。 In this case, as a state "in connection" information on this connection are registered in the state holding section 16B.
【0104】 [0104]
ftpクライアント14とftpサーバ13でTCP接続が確立した後、ファイヤ・ウォール16は、状態保持部16Bのaddr3のポート21番に対する接続に関する情報を「通信中」状態に変更する(ステップS33)。 After establishing the TCP connection by ftp client 14 and the ftp server 13, fire wall 16, to change the information about the connection to the port number 21 addr3 state-holding portion 16B to the "busy" state (step S33).
【0105】 [0105]
ftpクライアント14は、子プロセスを立ち上げ、データ転送のために新たなTCP接続を準備する(ステップS34)。 ftp client 14, launched a child process, prepares a new TCP connection for data transfer (step S34). ここでは、データ転送用ポートとしてポート5001番を利用する場合を例に挙げる。 Here, the case of use of port 5001 as a port for data transfer as an example.
【0106】 [0106]
子プロセスは、5001番ポートでTCP接続を待つよう、listenを実行する(ステップS35)。 The child process to wait for TCP connections 5001 port, executes listen (step S35).
【0107】 [0107]
次に、子プロセスは、システム・コールacceptを実行して、5001番ポートに接続されるまでブロックする(ステップS36)。 Then, the child process then executes the system call accept, block until being connected to the 5001 port (step S36).
【0108】 [0108]
端末4のOSは、acceptシステム・コールの処理中に、TCP接続の情報と、子プロセスのプロセスIDを組にして、ファイヤ・ウォール16の状態保持部16Bに登録する。 OS of the terminal 4, during the processing of the accept system call, and the information of the TCP connection, the process ID of the child process the set is registered in the state holding unit 16B of the fire wall 16. この際、addr4の5001番に対する接続の情報が「条件付接続待ち」として登録される(ステップS37)。 In this case, the information of the connection to the 5001 number of addr4 is registered as a "conditional connection waiting" (step S37).
【0109】 [0109]
次に、ftpクライアント14は、データ転送のためのポートを指定するPORTコマンドを、制御のために既に21番ポートに対して確立したTCP接続を使って転送する(ステップS38)。 Next, ftp client 14, the PORT command to specify the port for data transfer, and transfers using TCP connection already established to port 21 for control (step S38).
【0110】 [0110]
これに対し、ftpサーバ13は、PORTコマンドを受信して、パラメータであるポート番号5001を記録する(ステップS39)。 In contrast, ftp server 13 receives the PORT command, records the port number 5001 is a parameter (step S39).
【0111】 [0111]
次いで、ftpクライアント14は、データ取得のため、RETRコマンドを送信する(ステップS40)。 Then, ftp client 14, for data acquisition, and transmits the RETR command (step S40).
【0112】 [0112]
ftpサーバ13は、RETRコマンドを受信すると、addr4の5001番ポートに対してデータを送信する(ステップS41)。 ftp server 13 receives the RETR command, sends the data to the 5001 port of addr4 (step S41).
【0113】 [0113]
ファイヤ・ウォール16は、addr3からの5001番ポートに対するTCPパケットの到着を発見する(ステップS42)。 Fire wall 16, to discover the arrival of the TCP packet to the 5001 port of from addr3 (step S42).
【0114】 [0114]
次いで、ファイヤ・ウォール16は、ファイヤ・ウォール16内の状態保持部16Bの中から5001番ポートに対する「待ち受け」又は「条件付き待ち受け」状態になっているものを検索する(ステップS43)。 Then, fire wall 16 retrieves what is "waiting" or "standby conditional" state for 5001 port from the state holding section 16B of the fire wall 16 (step S43).
【0115】 [0115]
ここで、5001番ポートに対する「待ち受け」又は「条件付き待ち受け」状態になっているものがなかった場合には(ステップS44)、パケットを破棄して(ステップS45)、RSTを返す(ステップS46)。 Here, if no one is "waiting" or "standby conditional" state for 5001 port to discard (step S44), the packet (step S45), returns the RST (step S46) . その結果、ftpサーバ13からのTCP接続の試みは失敗する。 As a result, the attempt of the TCP connection from the ftp server 13 will fail.
【0116】 [0116]
また、5001番ポートに対する「待ち受け」又は「条件付き待ち受け」状態になっているものがあった場合には(ステップS44)、既に通信を行なっているプログラムが動的に新たな接続をした場合のみ接続を許可する。 Also, if you find that it is "standby" or "standby conditional" state for 5001 port (step S44), only when the program has already performed communications and dynamically new connection allow the connection. そのために、まず、ファイヤ・ウォール16は、5001番で待ち受けているプロセスのプロセスIDからその親プロセスのIDを取得する(ステップS47)。 Therefore, firstly, fire wall 16 acquires the ID of its parent process from a process ID of a listening process 5001 (step S47).
【0117】 [0117]
次いで、ファイヤ・ウォール16は、上記のプロセス又はその親プロセスのそれぞれについて、状態保持部16Bにaddr3と「通信中」状態である情報があるかどうかを検索する(ステップS48)。 Then, fire wall 16, for each of the above processes or the parent process, searches whether the state holding unit 16B is information having the "busy" state and addr3 (step S48).
【0118】 [0118]
もし存在しなければ(ステップS49)、ファイヤ・ウォール16は、パケットを破棄して(ステップS45)、RSTを返す(ステップS46)。 If not present (step S49), fire wall 16 discards the packet (step S45), returns the RST (step S46). その結果、ftpサーバ13からのTCP接続の試みは失敗する。 As a result, the attempt of the TCP connection from the ftp server 13 will fail.
【0119】 [0119]
一方、状態保持部16Bにaddr3との間で「通信中」状態である接続の情報が存在する場合には(ステップS49)、ファイヤ・ウォール16は、パケットの受信処理を続行すると同時に、5001番ポートに対するTCP接続の情報を「通信中」状態として登録し、パケットの通過を許可する(ステップS50)。 On the other hand, if there is information on the connection is "busy" state with the addr3 the state holding section 16B (step S49), fire wall 16, you continue the reception process of the packets at the same time, 5001 It registers information of TCP connection to port as a status "busy", to allow the passage of packets (step S50).
【0120】 [0120]
その結果、子プロセスが待ち受けていた5001番へのTCP接続が確立する(ステップS51)と、子プロセスとftpサーバの間でデータ転送を実行する(ステップS52)。 As a result, TCP connections to 5001 which has been waiting the child process is established (step S51), and performs data transfer between the child and the ftp server (step S52).
【0121】 [0121]
データ転送が終了するとき、ftpサーバ13はFINパケットを送信する(ステップS53)。 When the data transfer is completed, ftp server 13 sends a FIN packet (step S53).
【0122】 [0122]
ファイヤ・ウォール16は、5001番ポートに対するFINパケットの到着を発見すると、状態保持部16Bの該当する情報を「終了待ち」状態に変更する。 Fire wall 16, and to discover the arrival of the FIN packet to the 5001 port, to change the relevant information of the state-holding section 16B to "end waiting" state. ftpクライアント14は、TCPの終了処理として、FINに対するACKパケットを送信する(ステップS54)。 ftp client 14, as the end process of TCP, and transmits an ACK packet for FIN (step S54). そして、端末14上の子プロセスの終了により、closeが実行される(ステップS55)。 By the end of the child on the terminal 14, close The is executed (step S55).
【0123】 [0123]
ファイヤ・ウォール16は、5001番ポートからのACKパケットの送信を発見すると、状態保持部16Bよりデータ転送用ポートとしての5001番ポートのコネクションの情報を削除する(ステップS56)。 Fire wall 16 deletes Upon finding the transmission of ACK packet from 5001 port, the information of 5001 connection port of the data transfer port from the state holding section 16B (step S56). そして、ファイヤ・ウォール16は、通信を不許可にするようにファイヤ・ウォール16の設定変更を行なう。 The fire wall 16 performs the setting change of fire wall 16 so as to communicate with non-permission.
【0124】 [0124]
以上でデータ転送コネクションに関する処理が一通り終了する。 Processing relates to a data transfer connection is more than the end one way. ftpクライアント14が新たにデータ転送用コネクションを生成する場合には、上述と同様の処理手順を繰り返し行なう。 If the ftp client 14 generates a connection for new data transfer repeats the same procedure as described above.
【0125】 [0125]
ftpクライアント14の終了時、ftpクライアント14はcloseシステム・コールを発行する(ステップS57)。 At the end of the ftp client 14, ftp client 14 issues a close system call (step S57).
【0126】 [0126]
オペレーティング・システムは、closeシステム・コールの処理中に、closeで指定されたソケット・ディスクリプタから、該当するTCPコネクションの宛先アドレス、宛先ポート、送信先ポートの情報を得て、該当するTCPセッションの通信を禁止するように、コマンド用ポートとしての21番ポートの接続の情報をファイヤ・ウォール16内の状態保持部16Bから削除して(ステップS58)、パケットの通過を禁止する。 Operating system, during the processing of close system call, the socket descriptor specified in close, the destination address of the TCP connection corresponding to obtain the destination port, the information of the destination port, the communication of the corresponding TCP session to prohibit, by deleting the information of the connection port 21 as the port for commands from the state holding section 16B of the fire wall 16 (step S58), to prohibit the passage of the packet.
【0127】 [0127]
以上の説明からも判るように、図6に示すような構成の端末4においては、あらかじめftpに特化した動作をするようなファイヤ・ウォールの機能がなくても、ファイヤ・ウォール越しに従来のftpプロトコルを変更することなく使用することが可能になる。 As understood from the above description, in the configuration of the terminal 4, as shown in FIG. 6, without the function of fire wall such that an operation dedicated to advance ftp, conventional in fire wall over it is possible to use without changing the ftp protocol. また、ftp以外に、例えばRTSP(Real Time Streaming Protocol)など動的に決定したポート番号を使って接続を新規に作成するようなプロトコルについても、図示の端末4を同様に適用することができる。 Besides ftp, for example for some protocols, such as to create a connection with the port number dynamically determined such RTSP (Real Time Streaming Protocol) to the new, can be applied to terminal 4 shown similarly.
【0128】 [0128]
図10には、本発明が適用された通信システムについての他の構成例を模式的に示している。 Figure 10 is another configuration example of a communication system to which the present invention is applied is schematically shown.
【0129】 [0129]
同図において、ネットワーク6は、例えば企業など特定の組織内あるいは家庭内に限定的に敷設されたネットワークなどのローカル・エリア・ネットワーク(LAN)であり、端末7が接続され、Ipv6アドレスaddr7が割り当てられている。 In the figure, the network 6 is, for example, a local area network, such as limiting laid networks within or in the home particular organization such as a company (LAN), the terminal 7 is connected, Ipv6 address addr7 allocation It is.
【0130】 [0130]
端末7は、ネットワークを利用するアプリケーションを搭載した機器であり、一例としてパーソナル・コンピュータ(PC)などの計算機で構成されるが、勿論、ネットワーク通信機能を備えた家電製品などの他の形態の情報機器であってもよい。 Terminal 7 is a device equipped with applications that use the network, is configured with computer such as a personal computer (PC) as an example, of course, information other forms, such as household appliances having a network communication function it may be a device. 本明細書では、端末機器7内にHTTPサーバ17を持つ機器を例として取り上げる。 In this specification, it is taken as an example a device having an HTTP server 17 in the terminal device 7.
【0131】 [0131]
ネットワーク6は、インターネットなどの広域ネットワークを経由して他のネットワーク5と相互接続されている。 Network 6, via a wide area network such as the Internet is interconnected with other networks 5. ネットワーク5には、IPv6プロトコルにより通信可能な端末8が接続されている。 The network 5, capable of communicating terminals 8 are connected by the IPv6 protocol.
【0132】 [0132]
端末8は、IPv6プロトコルにより通信可能な機器であり、アドレスaddr8が割り当てられている。 Terminal 8 is capable of communication equipment by IPv6 protocol, address addr8 is assigned. 端末8は、一例としてパーソナル・コンピュータ(PC)などの計算機で構成されるが、勿論、ネットワーク通信機能を備えた家電製品などの他の形態の情報機器であってもよい。 Terminal 8 is constituted by a computer such as a personal computer (PC) as an example, of course, may be information equipment other forms, such as household appliances having a network communication function. 本明細書では、端末機器8内にHTTPクライアント18を持つ機器を例として取り上げる。 In this specification, taken as an example a device with an HTTP client 18 in the terminal device 8.
【0133】 [0133]
図11には、図10に示したネットワークにおいて動作する端末機器7の機能構成を模式的に示している。 Figure 11 shows schematically the functional structure of the terminal device 7 which operates in the network shown in FIG. 10. 同図に示すよう、端末機器7は、ネットワークを利用して通信するアプリケーション・プログラムであるHTTPサーバ17と、IP(Internet Protocol)プロトコルに従ったデータの受け渡し処理を行なうIP処理部15と、ネットワーク6経由でのパケットの通過の可否を制御するファイヤ・ウォール16とを備えている。 As shown in the figure, the terminal device 7, the HTTP server 17 is an application program that communicates using a network, and IP IP processing unit 15 that performs transfer processing of data in accordance with the (Internet Protocol) protocol, the network and a fire wall 16 for controlling the propriety of passage of the packet through 6.
【0134】 [0134]
HTTPサーバ17などのアプリケーションは、ネットワーク利用時に、オペレーティング・システム(OS)の機能の一部であるシステム・コールを呼び出し、IP処理部15に指示を伝える。 Applications such as HTTP server 17, when network use, called the system call, which is part of the functionality of the operating system (OS), conveys an instruction to the IP processing unit 15.
【0135】 [0135]
IP処理部15は、アプリケーションから渡されたデータを、IPパケットの形式に変換し、ファイヤ・ウォールで出力の可否を判定した上で出力する。 IP processing unit 15, the data passed from the application, into a format of the IP packet, and outputs on the determination whether the output fire wall. また、ネットワークから受信したIPパケットをファイヤ・ウォールで入力可否を判定し、形式変換してからアプリケーションに渡す。 Further, to determine the input whether the IP packet received from the network fire wall, and passes from the format conversion to the application.
【0136】 [0136]
ファイヤ・ウォール16は、ルールを設定するためのインターフェースとなる設定部16A及び通信の状態を保持する状態保持部16Bと、制御部16Cとを備えている。 Fire wall 16, a state holding unit 16B for holding the setting section 16A and the communication status as an interface for setting the rules, and a controller 16C. アプリケーションが通信時に呼び出すOSの機能であるシステム・コールから、設定部16Aを通じてルールの設定を行なう。 Application system call is a function of the OS to be called when the communication, to set the rules through the setting unit 16A.
【0137】 [0137]
状態保持部16Bには、通過するパケットの属するTCPなどの接続に関する情報として、発信元のアドレス及びポート、宛先アドレス及びポート、通信の状態、アプリケーションIDが記録される。 The state holding unit 16B, as the information about the connection such as TCP Field of packets passing through, source address and port, destination address and port, the communication state, the application ID is recorded. アプリケーションのIDは、ネットワーク接続を利用している各アプリケーションに関するIDが記録される。 ID applications, ID for each application that uses the network connection is recorded. 例えばUnix OSにおけるプロセスIDがアプリケーションIDとして利用可能である。 For example the process ID of Unix OS is available as an application ID. また、状態としては、「接続中」、「待ち受け」、「条件付待ち受け」、「通信中」、「終了待ち」という5通りの状態が用いられる。 In addition, as a state, "in connection", "waiting", "waiting conditional", "busy", the state of the 5 types of "Wait for end of" used.
【0138】 [0138]
ファイヤ・ウォール16内の制御部16Cは、状態保持部16Bの情報を利用して、パケット通過の可否を決定する。 Control unit 16C of the fire wall 16 utilizes the information of the state holding section 16B, determines whether the packet passes.
【0139】 [0139]
図10に示す実施形態に係る端末装置7における動作を、インターネット5を介して相互接続される端末8のHTTPクライアント18に接続してファイル提供を行なう通信の手順を例に挙げて説明する。 The operation of the terminal apparatus 7 according to the embodiment shown in FIG. 10 will be described as an example procedure for communication by connecting to the HTTP client 18 of the terminal 8 to be interconnected perform file provided via the Internet 5. 図12には、このときの端末装置7の動作手順をフローチャートの形式で示している。 Figure 12 shows an operation procedure of the terminal device 7 in this case in the form of a flowchart. また、図13には、このときの端末装置7及び端末装置8間の動作シーケンスを示している。 Further, in FIG. 13 shows an operation sequence between the terminal device 7 and the terminal device 8 in this case.
【0140】 [0140]
本実施形態では、端末7上のファイヤ・ウォール16は、当初、すべての通信を不許可とするように設定されている。 In this embodiment, the fire wall 16 on the terminal 7, initially, all communications are set to disallow.
【0141】 [0141]
HTTPサーバ17は、80番ポートでTCPの接続を待つよう、listenを実行する(ステップS61)。 HTTP server 17, to wait for TCP connection at port 80, to perform a listen (step S61).
【0142】 [0142]
次いで、HTTPサーバ17は、acceptシステム・コールを実行する(ステップS62)。 Then, HTTP Servers 17 executes an accept system call (step S62).
【0143】 [0143]
端末7のOSは、acceptシステム・コールの処理として、80番ポートでのTCP接続を待ち受ける処理を行ない、さらに接続先ポート番号である80番に対する接続を「待ち受け」状態してファイヤ・ウォール16の状態保持部16Bに登録する(ステップS63)。 OS of the terminal 7, as the processing of the accept system call performs processing to wait for TCP connections on port 80, the connection to the further number 80 destination port number "standby" state of the fire wall 16 registered in the state holding unit 16B (step S63).
【0144】 [0144]
HTTPサーバ17はHTTPクライアント18からの80番ポートへの接続要求に応答して接続を行なう。 HTTP server 17 makes a connection in response to a connection request to port 80 from the HTTP client 18. HTTPクライアント18は、addr7の80番ポートに対してデータを送信する(ステップS64)。 HTTP client 18 transmits the data to the port 80 of Addr7 (step S64).
【0145】 [0145]
ファイヤ・ウォール16は、addr8からの80番ポートに対するTCPパケットの到着を発見する(ステップS65)。 Fire wall 16, to discover the arrival of the TCP packet to the port 80 from the addr8 (step S65).
【0146】 [0146]
次いで、ファイヤ・ウォール16は、状態保持部16Bより80番ポートに対する接続を待ち受けしているものを検索する(ステップS66)。 Then, fire wall 16 retrieves those listens connections to port 80 from the state holding section 16B (step S66).
【0147】 [0147]
80番ポートに対する接続を待ち受けしているものを発見できなかった場合には(ステップS67)、RSTを返して(ステップS68)、パケットを破棄する(ステップS69)。 If that did not find what you are listening for connection to port 80 (step S67), returns the RST (step S68), it discards the packet (step S69). その結果、HTTPサーバ17からのTCP接続の試みは失敗する。 As a result, the attempt of the TCP connection from the HTTP server 17 will fail.
【0148】 [0148]
一方、80番ポートに対する接続を待ち受けしているものを発見できた場合には(ステップS67)、パケットの通過を許可し、状態保持部16Bの接続に関する情報を「通信中」状態に変更する(ステップS70)。 On the other hand, if it can discover what are listening for connection to port 80 (step S67), to allow the packet to pass, it changes the information about the connection state holding portion 16B to the "busy" state ( step S70).
【0149】 [0149]
その結果、「待ち受け」状態であった80番ポートへのTCP接続が確立し(ステップS71)、HTTPサーバ17とHTTPクライアント18の間でデータ転送を実行する(ステップS72)。 As a result, "standby" TCP connection to the state in which was 80 port is established (step S71), executes the data transfer between the HTTP server 17 and the HTTP client 18 (step S72).
【0150】 [0150]
HTTPプロトコルによるデータ転送が終了するとき、HTTPサーバ17はFINパケットを送信する(ステップS73)。 When the data transfer is completed by the HTTP protocol, HTTP Servers 17 sends a FIN packet (step S73).
【0151】 [0151]
HTTPクライアント18は、TCPの終了処理として、FINに対するACKパケットを送信する(ステップS74)。 HTTP client 18, as the end process of TCP, and transmits an ACK packet for FIN (step S74).
【0152】 [0152]
ファイヤ・ウォール16は、80番ポートにおけるACKパケットの受信を発見することにより、HTTPクライアント18とのTCP接続の終了を検出する(ステップS75)。 Fire wall 16, by finding the reception of the ACK packet in port 80, to detect the end of a TCP connection with the HTTP client 18 (step S75).
【0153】 [0153]
次いで、ファイヤ・ウォール16は、状態保持部16Bにおける80番ポートに関する情報を「待ち受け」状態に戻して(ステップS76)、HTTPサーバ17に対して指定されている発信元からの接続を許す。 Then, fire wall 16 returns the information about the port 80 in the state holding section 16B to the "standby" state (step S76), allowing the connection from the source that is specified for the HTTP server 17.
【0154】 [0154]
図12及び図13を参照しながら説明したファイヤ・ウォール16の動作は、listen及びacceptシステム・コールを用いて接続を待ち受けるようなプログラム全般に対して同様に適用することが可能であり、ファイヤ・ウォール16の設定を動的に変更することが可能である。 12 and while referring to the operation of the fire wall 16 described with FIG. 13, it is possible to apply similarly for the overall program, such as listening for connections using listen and accept system call, fire- it is possible to dynamically change the settings of the wall 16.
【0155】 [0155]
図14には、図10に示したネットワークにおいて動作する端末機器7についての他の機能構成を模式的に示している。 14 shows schematically another functional configuration of the terminal device 7 which operates in the network shown in FIG. 10. 同図に示すよう、端末機器4は、ネットワークを利用して通信するアプリケーション・プログラムであるHTTPサーバ17と、IP(Internet Protocol)プロトコルに従ったデータの受け渡し処理を行なうIP処理部15と、ネットワーク6経由でのパケットの通過の可否を制御するファイヤ・ウォール16とを備えている。 As shown in the figure, the terminal device 4, the HTTP server 17 is an application program that communicates using a network, and IP IP processing unit 15 that performs transfer processing of data in accordance with the (Internet Protocol) protocol, the network and a fire wall 16 for controlling the propriety of passage of the packet through 6.
【0156】 [0156]
HTTPサーバ17などのアプリケーションは、ネットワーク利用時に、オペレーティング・システム(OS)の機能の一部であるシステム・コールを呼び出し、IP処理部15に指示を伝える。 Applications such as HTTP server 17, when network use, called the system call, which is part of the functionality of the operating system (OS), conveys an instruction to the IP processing unit 15.
【0157】 [0157]
IP処理部15は、アプリケーションから渡されたデータを、IPパケットの形式に変換し、ファイヤ・ウォールで出力の可否を判定した上で出力する。 IP processing unit 15, the data passed from the application, into a format of the IP packet, and outputs on the determination whether the output fire wall. また、ネットワークから受信したIPパケットをファイヤ・ウォールで入力可否を判定し、形式変換してからアプリケーションに渡す。 Further, to determine the input whether the IP packet received from the network fire wall, and passes from the format conversion to the application.
【0158】 [0158]
ファイヤ・ウォール16は、ルールを設定するためのインターフェースとなる設定部16A及び通信の状態を保持する状態保持部16Bと、制御部16Cとを備えている。 Fire wall 16, a state holding unit 16B for holding the setting section 16A and the communication status as an interface for setting the rules, and a controller 16C. アプリケーションが通信時に呼び出すOSの機能であるシステム・コールから、設定部16Aを通じてルールの設定を行なう。 Application system call is a function of the OS to be called when the communication, to set the rules through the setting unit 16A.
【0159】 [0159]
状態保持部16Bには、通過するパケットの属するTCPなどの接続に関する情報として、発信元のアドレス及びポート、宛先アドレス及びポート、通信の状態、アプリケーションIDが記録される。 The state holding unit 16B, as the information about the connection such as TCP Field of packets passing through, source address and port, destination address and port, the communication state, the application ID is recorded. アプリケーションのIDは、ネットワーク接続を利用している各アプリケーションに関するIDが記録される。 ID applications, ID for each application that uses the network connection is recorded. 例えばUnix系のオペレーティング・システムにおけるプロセスIDがアプリケーションIDとして利用可能である。 For example the process ID of the operating system of the Unix system is available as an application ID. また、状態としては、「接続中」、「待ち受け」、「条件付待ち受け」、「通信中」、「終了待ち」という5通りの状態が用いられる。 In addition, as a state, "in connection", "waiting", "waiting conditional", "busy", the state of the 5 types of "Wait for end of" used.
【0160】 [0160]
ファイヤ・ウォール16内の制御部16Cは、状態保持部16Bの情報を利用して、パケット通過の可否を決定する。 Control unit 16C of the fire wall 16 utilizes the information of the state holding section 16B, determines whether the packet passes.
【0161】 [0161]
図14に示した端末7と図11に示したものとの主な相違は、HTTPサーバ17が80番ポートでのTCP接続を待ち受けるプロセスが異なる点である。 The main difference from those shown on the terminal 7 and 11 shown in FIG. 14, the process of the HTTP server 17 listens for TCP connections on port 80 is different.
【0162】 [0162]
図14に示す実施形態に係る端末装置7における動作を、インターネット5を介して相互接続される端末8のHTTPクライアント18に接続してファイル提供を行なう通信の手順を例に挙げて説明する。 The operation of the terminal apparatus 7 according to the embodiment shown in FIG. 14 will be described as an example procedure for communication by connecting to the HTTP client 18 of the terminal 8 to be interconnected perform file provided via the Internet 5. 図15には、このときの端末装置7の動作手順をフローチャートの形式で示している。 Figure 15 shows an operation procedure of the terminal device 7 in this case in the form of a flowchart. また、図16には、このときの端末装置7及び端末装置8間の動作シーケンスを示している。 Further, in FIG. 16 shows an operation sequence between the terminal device 7 and the terminal device 8 in this case.
【0163】 [0163]
本実施形態では、端末7上のファイヤ・ウォール16は、当初、すべての通信を不許可とするように設定されている。 In this embodiment, the fire wall 16 on the terminal 7, initially, all communications are set to disallow.
【0164】 [0164]
HTTPサーバ17は、80番ポートでTCPの接続を待つよう、listenを実行する(ステップS81)。 HTTP server 17, to wait for TCP connection at port 80, to perform a listen (step S81).
【0165】 [0165]
次いで、HTTPサーバ17は、fw_acceptシステム・コールを実行する(ステップS82)。 Then, HTTP Servers 17 executes fw_accept system call (step S82). fw_acceptは、acceptシステム・コールの機能を拡張したものであり、fw_acceptの引数には、acceptの引数に加えて接続を許可するアドレスとしてaddr3を指定する。 Fw_accept is an extension of the capabilities of the accept system call, the argument of Fw_accept, specify the addr3 as an address to allow connections in addition to the argument of the accept.
【0166】 [0166]
従来のシステム・コールacceptは、 Conventional system call accept is,
int accept(int s, struct sockaddr *addr, socklen_t *addrlen); int accept (int s, struct sockaddr * addr, socklen_t * addrlen);
【0167】 [0167]
という呼び出し書式を持ち、引数addrは接続後に通信相手のアドレスを受け取るために用いている。 Have the call the format, the argument addr is used to receive the address of the communication after the connection partner. これに対し、fw_acceptは、 On the other hand, fw_accept is,
【0168】 [0168]
fw_accept(int s, struct sockaddr *accept_addr, struct sockaddr *accept_mask, socklen_t *addrlen, struct sockaddr *addr, socklen_t *addrlen); fw_accept (int s, struct sockaddr * accept_addr, struct sockaddr * accept_mask, socklen_t * addrlen, struct sockaddr * addr, socklen_t * addrlen);
【0169】 [0169]
という呼び出し書式を持ち、引数accept_addrで接続を許可するアドレスを指定する。 Have a call the format, to specify the address to allow connection with the argument accept_addr. そして、HTTPサーバ17は、fw_acceptの引数として、通常のaccept呼び出し時の引数に加えて、接続を許可するアドレスとしてaddr8を指定する。 Then, HTTP server 17, as an argument of fw_accept, in addition to the argument of the normal accept the call, specifying the addr8 as an address to allow connection.
【0170】 [0170]
端末7のOSは、fw_acceptシステム・コールの処理として、通常のacceptシステム・コールと同様の処理を行ない、さらにその引数として渡されたaddr3から、接続先ポート番号である80番に対する接続について「待ち受け」状態としてファイヤ・ウォール16の状態保持部16Bに登録する(ステップS83)。 OS of the terminal 7, as the processing of fw_accept system call, the same processing as in the conventional accept system call, further from addr3 passed as its argument, "waiting for the connection to the number 80 which is the connection destination port number registered in the state holding unit 16B of the fire wall 16 as "state (step S83).
【0171】 [0171]
HTTPクライアント18は、addr7の80番ポートに対してデータを送信する(ステップS84)。 HTTP client 18 transmits the data to the port 80 of Addr7 (step S84).
【0172】 [0172]
ファイヤ・ウォール16は、addr8からの80番ポートに対するTCPパケットの到着を発見する(ステップS85)。 Fire wall 16, to discover the arrival of the TCP packet to the port 80 from the addr8 (step S85).
【0173】 [0173]
次いで、ファイヤ・ウォール16は、状態保持部16Bを参照して、「待ち受け」状態となっている情報を、その中の発信元アドレスとして指定されているアドレスと、パケットを送ってきたアドレスを比較する(ステップS86)。 Then, comparison fire wall 16, with reference to the state holding section 16B, the information is "wait" state, the address specified as the source address therein, the address which sent the packet (step S86).
【0174】 [0174]
80番ポートに対する接続を待ち受けしているものを発見できなかった場合には(ステップS87)、RSTを返して(ステップS88)、パケットを破棄する(ステップS89)。 If that did not find what you are listening for connection to port 80 (step S87), returns the RST (step S88), it discards the packet (step S89). その結果、HTTPサーバ17からのTCP接続の試みは失敗する。 As a result, the attempt of the TCP connection from the HTTP server 17 will fail.
【0175】 [0175]
一方、addr8が指定されている場合には、80番ポートに対する接続を待ち受けしているものを発見される(ステップS87)。 On the other hand, if the addr8 is specified, it is discover what is waiting for connection to port 80 (step S87). この場合、さらに、発信元アドレスが許可されているかどうかを判別する(ステップS90)。 In this case, furthermore, the source address to determine whether it is allowed (step S90).
【0176】 [0176]
ファイヤ・ウォール16には、既にこの接続を許すような設定がなされているので、パケットの通過を許可し、状態保持部16Bの接続に関する情報を「通信中」状態に変更する(ステップS91)。 The fire wall 16, already since setting is made such as to allow the connection, to allow the packet to pass, changes the information about the connection state holding portion 16B to the "busy" state (step S91). その結果、「待ち受け」状態であった80番ポートへのTCP接続が確立し(ステップS92)、HTTPサーバ17とHTTPクライアント18の間でデータ転送を実行する(ステップS93)。 As a result, "standby" TCP connection to the state in which was 80 port is established (step S92), executes the data transfer between the HTTP server 17 and the HTTP client 18 (step S93).
【0177】 [0177]
データ転送が終了するとき、HTTPサーバ17はFINパケットを送信する(ステップS94)。 When the data transfer is completed, HTTP Servers 17 sends a FIN packet (step S94).
【0178】 [0178]
HTTPクライアント18は、TCPの終了処理として、FINに対するACKパケットを送信する(ステップS95)。 HTTP client 18, as the end process of TCP, and transmits an ACK packet for FIN (step S95).
【0179】 [0179]
ファイヤ・ウォール16は、80番ポートにおけるACKパケットの受信を発見することにより、HTTPクライアント18とのTCP接続の終了を検出する(ステップS96)。 Fire wall 16, by finding the reception of the ACK packet in port 80, to detect the end of a TCP connection with the HTTP client 18 (step S96).
【0180】 [0180]
次いで、ファイヤ・ウォール16は、状態保持部16Bにおける80番ポートに関する情報を「待ち受け」状態に戻して(ステップS97)、HTTPサーバ17に対して指定されている発信元からの接続を許す。 Then, fire wall 16 returns the information about the port 80 in the state holding section 16B to the "standby" state (step S97), allowing the connection from the source that is specified for the HTTP server 17.
【0181】 [0181]
図17には、図10に示したネットワークにおいて動作する端末機器8の機能構成を模式的に示している。 Figure 17 shows schematically the functional structure of the terminal device 8 to operate in the network shown in FIG. 10. 同図に示すように、端末機器8は、ネットワークを利用して通信するアプリケーション・プログラムであるHTTPクライアント18と、IP(Internet Protocol)プロトコルに従ったデータの受け渡し処理を行なうIP処理部15と、ネットワーク6経由でのパケットの通過の可否を制御するファイヤ・ウォール16とを備えている。 As shown in the figure, the terminal device 8, the HTTP client 18 is an application program that communicates using a network, and IP IP processing unit 15 that performs transfer processing of data in accordance with the (Internet Protocol) protocol, and a fire wall 16 for controlling the propriety of passage of the packets over the network 6.
【0182】 [0182]
HTTPクライアント18などのアプリケーションは、ネットワーク利用時に、オペレーティング・システム(OS)の機能の一部であるシステム・コールを呼び出し、IP処理部15に指示を伝える。 Applications such as HTTP client 18, when network use, called the system call, which is part of the functionality of the operating system (OS), conveys an instruction to the IP processing unit 15.
【0183】 [0183]
IP処理部15は、アプリケーションから渡されたデータを、IPパケットの形式に変換し、ファイヤ・ウォールで出力の可否を判定した上で出力する。 IP processing unit 15, the data passed from the application, into a format of the IP packet, and outputs on the determination whether the output fire wall. また、ネットワークから受信したIPパケットをファイヤ・ウォールで入力可否を判定し、形式変換してからアプリケーションに渡す。 Further, to determine the input whether the IP packet received from the network fire wall, and passes from the format conversion to the application.
【0184】 [0184]
ファイヤ・ウォール16は、ルールを設定するためのインターフェースとなる設定部16A及び通信の状態を保持する状態保持部16Bと、制御部16Cとを備えている。 Fire wall 16, a state holding unit 16B for holding the setting section 16A and the communication status as an interface for setting the rules, and a controller 16C. アプリケーションが通信時に呼び出すOSの機能であるシステム・コールから、設定部16Aを通じてルールの設定を行なう。 Application system call is a function of the OS to be called when the communication, to set the rules through the setting unit 16A.
【0185】 [0185]
状態保持部16Bには、通過するパケットの属するTCPなどの接続に関する情報として、発信元のアドレス及びポート、宛先アドレス及びポート、通信の状態、アプリケーションIDが記録される。 The state holding unit 16B, as the information about the connection such as TCP Field of packets passing through, source address and port, destination address and port, the communication state, the application ID is recorded. アプリケーションのIDは、ネットワーク接続を利用している各アプリケーションに関するIDが記録される。 ID applications, ID for each application that uses the network connection is recorded. 例えばUnix OSにおけるプロセスIDがアプリケーションIDとして利用可能である。 For example the process ID of Unix OS is available as an application ID. また、状態としては、「接続中」、「待ち受け」、「条件付待ち受け」、「通信中」、「終了待ち」という5通りの状態が用いられる。 In addition, as a state, "in connection", "waiting", "waiting conditional", "busy", the state of the 5 types of "Wait for end of" used.
【0186】 [0186]
ファイヤ・ウォール16内の制御部16Cは、状態保持部16Bの情報を利用して、パケット通過の可否を決定する。 Control unit 16C of the fire wall 16 utilizes the information of the state holding section 16B, determines whether the packet passes.
【0187】 [0187]
図17に示す実施形態に係る端末装置8における動作を、インターネット5を介して相互接続される端末8のHTTPサーバ17に接続してファイル取得を行なう通信の手順を例に挙げて説明する。 The operation in the terminal device 8 according to the embodiment shown in FIG. 17 will be described as an example communication procedure for performing by connecting file acquisition to the HTTP server 17 of the terminal 8 which are interconnected via the Internet 5. 図18には、このときの端末装置8の動作手順をフローチャートの形式で示している。 Figure 18 shows an operation procedure of a terminal device 8 in this case in the form of a flowchart. また、図19には、このときの端末装置7及び端末装置8間の動作シーケンスを示している。 Further, in FIG. 19 shows an operation sequence between the terminal device 7 and the terminal device 8 in this case.
【0188】 [0188]
本実施形態では、端末8上のファイヤ・ウォール16は、当初、すべての通信を不許可とするように設定されている。 In this embodiment, the fire wall 16 on the terminal 8, initially, all communications are set to disallow.
【0189】 [0189]
HTTPクライアント18は、HTTPサーバ17に接続するための端末7のIPv6アドレスaddr7の80番ポートに対するconnectを実行する(ステップS101)。 HTTP client 18 performs the connect against port 80 of the IPv6 address addr7 of the terminal 7 for connection to the HTTP server 17 (step S101).
【0190】 [0190]
端末8のOSは、connectシステム・コールの処理中に、その引数である接続先アドレスaddr7、ポート80番といったTCP接続の情報と、HTTPクライアント18のプロセスIDを組にして、ファイヤ・ウォール16の状態保持部16Bに登録する(ステップS102)。 OS of the terminal 8, during the processing of a connect system call, the argument is a connection address Addr7, and information of a TCP connection, such as port 80, and a set of the process ID of the HTTP client 18, the fire wall 16 registered in the state holding unit 16B (step S102). このとき、この接続に関する情報は「接続中」状態として、状態保持部16Bに登録される。 In this case, as a state "in connection" information on this connection are registered in the state holding section 16B.
【0191】 [0191]
HTTPクライアント18からaddr7のポート80番に対してSYNパケットが送信され、HTTPサーバ17が受信する。 SYN packet is transmitted from the HTTP client 18 with respect to port 80 of Addr7, it receives the HTTP server 17. HTTPサーバ17は、TCP接続を確立するため、ACKパケットを送信する(ステップS103)。 HTTP server 17 to establish a TCP connection, sends an ACK packet (step S103).
【0192】 [0192]
ファイヤ・ウォール16は、addr7のポート80番からのACKパケットを発見し(ステップS104)、状態保持部16Bから該当する状態を検索する(ステップS105)。 Fire wall 16, to discover the ACK packet from the port 80 of Addr7 (step S104), and searches for the corresponding state from the state holding section 16B (step S105).
【0193】 [0193]
80番ポートに対する接続を待ち受けしているものを発見できなかった場合には(ステップS106)、RSTを返して(ステップS107)、パケットを破棄する(ステップS108)。 If that did not find what you are listening for connection to port 80 (step S106), returns the RST (step S107), the packet is discarded (step S108). その結果、HTTPサーバ17へのTCP接続の試みは失敗する。 As a result, the attempt of the TCP connection to the HTTP server 17 will fail.
【0194】 [0194]
一方、80番ポートに対する接続を待ち受けしているものを発見できた場合には(ステップS106)、さらに、発信元アドレスが許可されているかどうかを判断する(ステップS109)。 On the other hand, if it can discover what are listening for connection to port 80 (step S106), further it determines whether the source address is permitted (step S109).
【0195】 [0195]
発信元アドレスが許可されていない場合には、RSTを返して(ステップS107)、パケットを破棄する(ステップS108)。 If the source address is not permitted, it returns the RST (step S107), the packet is discarded (step S108). その結果、HTTPサーバ17へのTCP接続の試みは失敗する。 As a result, the attempt of the TCP connection to the HTTP server 17 will fail.
【0196】 [0196]
発信元アドレスが許可されている場合には、パケットの通過を許可し、状態保持部16Bの接続に関する情報を「通信中」状態に変更する(ステップS110)。 If the source address is permitted, to allow the packet to pass, changes the information about the connection state holding portion 16B to the "busy" state (step S110).
【0197】 [0197]
続いて、HTTPクライアント18からACKパケットが送信され、HTTPサーバ17がこれを受信することにより、80番ポートへのTCP接続が確立し(ステップS111)、HTTPサーバ17とHTTPクライアント18の間でデータ転送を実行する(ステップS112)。 Then, ACK packet is transmitted from the HTTP client 18, by the HTTP server 17 receives this establishes a TCP connection to port 80 (step S 111), data between the HTTP server 17 and the HTTP client 18 executing the transfer (step S112).
【0198】 [0198]
HTTPプロトコルによるデータ転送が終了するとき、HTTPサーバ17はFINパケットを送信する(ステップS113)。 When the data transfer is completed by the HTTP protocol, HTTP Servers 17 sends a FIN packet (step S113).
【0199】 [0199]
ファイヤ・ウォール16は、80番ポートにおけるACKパケットの受信を発見することにより、HTTPクライアント18とのTCP接続の終了を検出すると、状態保持部16Bの80番ポートに関する情報を「終了待ち」状態に変更する(ステップS114)。 Fire wall 16, by finding the reception of the ACK packet in port 80, when detecting the end of a TCP connection with the HTTP client 18, the information about the port 80 of the state holding part 16B in the "end wait" state to change (step S114).
【0200】 [0200]
HTTPクライアント18は、TCPの終了処理として、FINに対するACKパケットをHTTPサーバ17に送信する(ステップS115)。 HTTP client 18, as the end process of TCP, and transmits an ACK packet for FIN to the HTTP server 17 (step S115).
【0201】 [0201]
続いて、HTTPクライアント18は、HTTPサーバ17にFINパケットを送信する(ステップS116)。 Subsequently, HTTP client 18 sends a FIN packet to the HTTP server 17 (step S116). これに対し、HTTPサーバ17はACKパケットを送信する(ステップS117)。 In contrast, HTTP Servers 17 transmits an ACK packet (step S117).
【0202】 [0202]
ファイヤ・ウォール16は、80番ポートにおけるACKパケットの受信を発見することにより、HTTPクライアント18とのTCP接続の終了を検出する(ステップS118)。 Fire wall 16, by finding the reception of the ACK packet in port 80, to detect the end of a TCP connection with the HTTP client 18 (step S118).
【0203】 [0203]
ファイヤ・ウォール16は、状態保持部16Bより80番ポートの接続の情報についての削除する(ステップS119)。 Fire wall 16 deletes the information of the connection port 80 from the state holding section 16B (step S119). そして、ファイヤ・ウォール16は、通信を不許可にするようにファイヤ・ウォール16の設定変更を行なう。 The fire wall 16 performs the setting change of fire wall 16 so as to communicate with non-permission.
【0204】 [0204]
図18及び図19を参照しながら説明したファイヤ・ウォール16の動作は、connectシステム・コールを用いて接続を待ち受けるようなプログラム全般に対して同様に適用することが可能であり、ファイヤ・ウォール16の設定を動的に変更することが可能である。 Operation of FIG. 18 and fire wall 16 described with reference to FIG. 19, it is possible to apply similarly for the overall program, such as listening for connections using the connect system call, fire wall 16 it is possible to change settings dynamically.
【0205】 [0205]
[追補] [Supplement]
以上、特定の実施形態を参照しながら、本発明について詳解してきた。 Above with reference to specific embodiments, the present invention has been described in detail. しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。 However, it is obvious that those skilled in the art without departing from the scope of the present invention can make modifications and substitutions of the embodiments. すなわち、例示という形態で本発明を開示してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。 In other words, the foregoing discloses the present invention in the form of illustration and should not be construed as limiting the contents of this specification. 本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。 In order to determine the scope of the invention it should be referred to the appended claims set forth at the outset.
【0206】 [0206]
【発明の効果】 【Effect of the invention】
以上詳記したように、本発明によれば、ネットワークの境界に配置されて通過するパケットを監視し、設定されたルールに従ってパケットを通過させるか破棄するかといったアクセス制御を好適に行なうことができる、優れたアクセス制御装置及びアクセス制御方法、並びにコンピュータ・プログラムを提供することができる。 As has been detailed above, according to the present invention, it monitors the packets passing placed on the boundary of the network, can be suitably performed a set access control such or discard the packet is passed according to the rules , it is possible to provide excellent access control device and an access control method, and a computer program.
【0207】 [0207]
また、本発明によれば、動的に決定したポート番号を使ってネットワーク接続を新規に行なうようなプロトコルでデータ通信を行なう場合であっても、好適にアクセス制御を行なうことができる、優れたアクセス制御装置及びアクセス制御方法、並びにコンピュータ・プログラムを提供することができる。 Further, according to the present invention, even when using a dynamically determined port number communicating data protocol such as performing network connection to the new, it can be performed suitably access control, excellent access control device and an access control method, as well as a computer program.
【0208】 [0208]
また、本発明によれば、ネットワークに接続された個々の端末装置に内蔵されたファイヤ・ウォールが、端末機器のアプリケーションと連携して適切なアクセス制御を行なうことができる、優れたアクセス制御装置及びアクセス制御方法、並びにコンピュータ・プログラムを提供することができる。 Further, according to the present invention, fire wall incorporated in each terminal device connected to the network, it is possible to perform proper access control in conjunction with the terminal device applications, superior access control device and access control method, as well as a computer program.
【0209】 [0209]
また、本発明によれば、初期状態のファイヤ・ウォールの設定では通信許可を与えない状態に設定し、アプリケーションが通信を行なうためにファイヤ・ウォールの設定変更が必要となった時点で動的に設定変更を行なうことができる、優れたアクセス制御装置及びアクセス制御方法、並びにコンピュータ・プログラムを提供することができる。 Further, according to the present invention, in the configuration of the fire wall in the initial state is set to a state which does not give communication permission dynamically when the application becomes necessary configuration changes fire wall to communicate can change the setting, it is possible to provide excellent access control device and an access control method, and a computer program.
【0210】 [0210]
本発明によれば、ネットワークを利用する際に、使用するシステム・コールのパラメータの内容を使ってファイヤ・ウォールの設定を動的に変更することで、あらかじめファイヤ・ウォールの設定をしなくても、安全を高めつつネットワークを利用することができる。 According to the present invention, when using the network, with the content of the parameters of the system calls used by dynamically changing the setting of the fire wall, without the setting of pre-fire wall it can utilize network while enhancing safety.
【0211】 [0211]
また、本発明によれば、ファイヤ・ウォールへ制御するための特殊なコードをアプリケーションに加えなくてもよい。 Further, according to the present invention may not add special code for controlling the fire wall on the application. また、ファイヤ・ウォールにftpなどのプロトコルに対応した固有の処理機構を組み込まなくてもよい。 Moreover, it is not incorporated a specific processing mechanism corresponding to protocols such as ftp to fire wall.
【図面の簡単な説明】 BRIEF DESCRIPTION OF THE DRAWINGS
【図1】本発明が適用された通信システムの構成例を模式的に示した図である。 [1] The configuration of a communication system to which the present invention is applied is a diagram schematically showing.
【図2】図1に示すネットワーク上で動作する端末機器4の機能構成を模式的に示した図である。 The functional configuration of FIG. 2 terminal device 4 operating on the network shown in FIG. 1 is a diagram schematically showing.
【図3】図2に示す実施形態に係る端末装置4における動作手順を示したフローチャートである。 3 is a flowchart illustrating an operation procedure in the terminal apparatus 4 according to the embodiment shown in FIG.
【図4】図2に示す実施形態に係る端末装置4における動作手順を示したフローチャートである。 4 is a flowchart illustrating an operation procedure in the terminal apparatus 4 according to the embodiment shown in FIG.
【図5】図2に示す実施形態に係る端末装置4と端末装置3間における動作を示したシーケンス図である。 5 is a sequence diagram showing an operation between the terminal device 4 and the terminal device 3 according to the embodiment shown in FIG.
【図6】図1に示すネットワーク上で動作する端末機器4についての他の機能構成を模式的に示した図である。 [6] The other functional configuration of the terminal device 4 operating on the network shown in FIG. 1 is a diagram schematically showing.
【図7】図6に示す実施形態に係る端末装置4における動作手順を示したフローチャートである。 7 is a flowchart illustrating an operation procedure in the terminal apparatus 4 according to the embodiment shown in FIG.
【図8】図6に示す実施形態に係る端末装置4における動作手順を示したフローチャートである。 8 is a flowchart illustrating an operation procedure in the terminal apparatus 4 according to the embodiment shown in FIG.
【図9】図6に示す実施形態に係る端末装置4と端末装置3間における動作を示したシーケンス図である。 9 is a sequence diagram showing an operation between the terminal device 4 and the terminal device 3 according to the embodiment shown in FIG.
【図10】本発明が適用された通信システムについての他の構成例を模式的に示した図まである。 [10] Another example of the configuration of the present invention has been applied the communication system is to view schematically showing.
【図11】図10に示すネットワーク上で動作する端末機器7の機能構成を模式的に示した図である。 11 is a diagram schematically illustrating a functional configuration of the terminal device 7 operating on the network shown in FIG. 10.
【図12】図10に示す実施形態に係る端末機器7における動作手順を示したフローチャートである。 12 is a flowchart illustrating an operation procedure in the terminal apparatus 7 according to the embodiment shown in FIG. 10.
【図13】図10に示す実施形態に係る端末装置7と端末装置8間における動作を示したシーケンス図である。 13 is a sequence diagram showing an operation between the terminal device 7 and the terminal 8 according to the embodiment shown in FIG. 10.
【図14】図10に示すネットワーク上で動作する端末機器7についての機能構成を模式的に示した図である。 14 is a diagram schematically illustrating a functional configuration of the terminal device 7 operating on the network shown in FIG. 10.
【図15】図14に示す実施形態に係る端末機器7における動作手順を示したフローチャートである。 15 is a flowchart illustrating an operation procedure in the terminal apparatus 7 according to the embodiment shown in FIG. 14.
【図16】図10に示す実施形態に係る端末装置7と端末装置8間における動作を示したシーケンス図である。 16 is a sequence diagram showing an operation between the terminal device 7 and the terminal 8 according to the embodiment shown in FIG. 10.
【図17】図10に示すネットワーク上で動作する端末機器8についての機能構成を模式的に示した図である。 17 is a diagram schematically illustrating a functional configuration of the terminal device 8 operating on the network shown in FIG. 10.
【図18】図17に示す実施形態に係る端末機器8における動作手順を示したフローチャートである。 18 is a flowchart illustrating an operation procedure in the terminal apparatus 8 according to the embodiment shown in FIG. 17.
【図19】図10に示す実施形態に係る端末装置7と端末装置8間における動作を示したシーケンス図である。 19 is a sequence diagram showing an operation between the terminal device 7 and the terminal 8 according to the embodiment shown in FIG. 10.
【図20】パケット・フィルタリング・ソフトウェアをインストールした端末機器の機能構成(従来例)を示した図である。 20 is a diagram showing functional structure of the (conventional example) of a terminal device that has installed the packet filtering software.
【図21】通常のftpクライアントの動作(従来例)を示したシーケンス図である。 FIG. 21 is a sequence diagram showing a conventional ftp client behavior (conventional example).
【符号の説明】 DESCRIPTION OF SYMBOLS
3…端末機器(FTPサーバ) 3 ... terminal equipment (FTP server)
4…端末機器(FTPクライアント) 4 ... terminal equipment (FTP client)
5…ネットワーク(インターネット) 5 ... network (the Internet)
6…ネットワーク(LAN) 6 ... network (LAN)
13…FTPサーバ14…FTPクライアント 13 ... FTP server 14 ... FTP client

Claims (27)

  1. ネットワークに接続された機器に対するアクセスを制御するアクセス制御装置であって、 An access controller for controlling access to devices connected to the network,
    ネットワーク・インターフェースへの入出力パケットを監視して、所定の制御ルールに基づいてパケットの通過の可否を制御するファイヤ・ウォールと、 It monitors the input and output packets to the network interface, and fire wall for controlling the propriety of passage of the packets based on a predetermined control rule,
    アプリケーション・プログラムが通信時に呼び出す呼び出しパラメータを解釈して前記制御ルールを変更する設定部を備えたシステム・コールと、 And system calls the application program interprets the call parameters to call when communicating with a setting unit for changing the control rules,
    を具備することを特徴とするアクセス制御装置。 Access control apparatus characterized by comprising a.
  2. 前記ファイヤ・ウォールは、通過するパケットの属するネットワーク接続に関する通信の状態を保持する状態保持部と、前記状態保持部に保持されている通信の状態に応じてパケット通過の可否を決定する制御部と、 The fire wall has a state holding unit that holds the state of the communication for the network the packet belongs to through-connection, a control unit for determining whether the packet transit in accordance with the state of communication retained in the state holding unit ,
    をさらに備えることを特徴とする請求項1に記載のアクセス制御装置。 Access control device according to claim 1, further comprising a.
  3. 前記状態保持部は、通過するパケットの属するネットワーク接続に関する発信元のアドレス及びポート、宛先アドレス及びポート、通信の状態、アプリケーションIDを記録し、 The state holding unit, source address and port of network connection the packet belongs to pass, destination address and port, the communication state, records the application ID,
    前記制御部は、受信したパケットの宛先となるアプリケーションのIDの状態を参照してパケットの通過の可否を決定する、 Wherein the control unit determines whether to pass the packet with reference to the state of the ID of the destination of the received packet application,
    ことを特徴とする請求項2に記載のアクセス制御装置。 Access control device according to claim 2, characterized in that.
  4. 前記制御部は、受信したパケットの宛先となるアプリケーションのIDから該アプリケーションと関連するアプリケーションIDの一覧を参照し、関連するアプリケーションIDによってセッション情報を検索し、該セッションの宛先とパケットの送信元が一致するかどうかを判定し、一致した場合にパケットの通過を許可する、 Wherein the control unit refers to the list of applications ID associated the ID of the destination of the received packet application with the application, searches the session information by the associated application ID, transmission source address and the packet of the session to determine if they match, to allow the packet to pass if they match,
    ことを特徴とする請求項2に記載のアクセス制御装置。 Access control device according to claim 2, characterized in that.
  5. 前記設定部は、外部からの接続要求時に元のアプリケーションから立ち上げられる子プロセスの状態を前記状態保持部に登録する、 The setting unit registers the state of the child to be raised from the original application when a connection request from the outside to the state holding unit,
    ことを特徴とする請求項2に記載のアクセス制御装置。 Access control device according to claim 2, characterized in that.
  6. 前記設定部は、元のアプリケーションから子プロセスを生成するときにその状態を前記状態保持部に登録する、 The setting unit registers its state when generating the original application child process the status holding unit,
    ことを特徴とする請求項2に記載のアクセス制御装置。 Access control device according to claim 2, characterized in that.
  7. ネットワーク接続を開始するシステム・コールにおいて、アプリケーション・プログラムが通信時に呼び出す呼び出しパラメータにファイヤ・ウォールの制御ルールを記述するパラメータを含む、 In system call for starting the network connection, including the parameters describing the control rules of the fire wall in the call parameter the application program calls during communication,
    ことを特徴とする請求項1に記載のアクセス制御装置。 Access control device according to claim 1, characterized in that.
  8. 接続を待ち受けるためのシステム・コールにおいて、アプリケーション・プログラムが通信時に呼び出す呼び出しパラメータにファイヤ・ウォールの制御ルールを記述するパラメータを含む、 In system call for listening for connections, including parameters that describe the control rules of the fire wall in the call parameter the application program calls during communication,
    ことを特徴とする請求項1に記載のアクセス制御装置。 Access control device according to claim 1, characterized in that.
  9. 前記ファイヤ・ウォールは、通過するパケットの属するネットワーク接続に関する通信の状態が接続中である場合、アプリケーションから指定された宛先へ接続を開始するためのパケットの通過を許す、 The fire wall in the case of communication for network connection belongs packets passing through the state is connecting, allow the passage of a packet to initiate a connection to the specified destination from the application,
    ことを特徴とする請求項1に記載のアクセス制御装置。 Access control device according to claim 1, characterized in that.
  10. 前記ファイヤ・ウォールは、通過するパケットの属するネットワーク接続に関する通信の状態が通信中である場合、指定されている発信元から宛先への双方向の通信を許可する、 The fire wall in the case of communication for network connection belongs packets passing through state is communicating, to permit two-way communication from source to destination specified,
    ことを特徴とする請求項1に記載のアクセス制御装置。 Access control device according to claim 1, characterized in that.
  11. 前記ファイヤ・ウォールは、通過するパケットの属するネットワーク接続に関する通信の状態が待ち受けである場合、アプリケーションに対して指定されている発信元からの接続を許す、 The fire wall, if it is waiting is communication for network connection the packet belongs to the pass state, allowing the connection from the source that is specified for the application,
    ことを特徴とする請求項1に記載のアクセス制御装置。 Access control device according to claim 1, characterized in that.
  12. 前記ファイヤ・ウォールは、通過するパケットの属するネットワーク接続に関する通信の状態が条件付待ち受けである場合、既に通信中状態にあるプログラムが動的に新たな接続をした場合のみ接続を許可する、 The fire wall, when the communication for network connection belongs packets passing through state is waiting conditional only allow connections when a program that is already in the communication state is dynamically new connection,
    ことを特徴とする請求項1に記載のアクセス制御装置。 Access control device according to claim 1, characterized in that.
  13. 前記ファイヤ・ウォールは、通過するパケットの属するネットワーク接続に関する通信の状態が終了待ちの場合、接続を終了させる手順の途中であることを示す、 The fire wall shows that the communication for network connection belongs packets passing through state when the termination waiting, is in the middle of the procedure for terminating the connection,
    ことを特徴とする請求項1に記載のアクセス制御装置。 Access control device according to claim 1, characterized in that.
  14. ネットワークに接続された機器に対するアクセスを制御するアクセス制御方法であって、 An access control method for controlling access to devices connected to the network,
    ネットワーク・インターフェースへの入出力パケットを監視して、所定の制御ルールに基づいてパケットの通過の可否を制御するパケット通過制御ステップと、 Monitors the input and output packets to the network interface, the packet transmission control step of controlling whether the passage of the packets based on a predetermined control rule,
    アプリケーション・プログラムが通信時に呼び出す呼び出しパラメータを解釈して前記制御ルールを変更する制御ルール変更ステップと、 A control rule changing step of changing the control rule application program interprets the call parameters to invoke when a communication,
    を具備することを特徴とするアクセス制御方法。 Access control method characterized by comprising the.
  15. 前記パケット通過制御ステップでは、通過するパケットの属するネットワーク接続に関する通信の状態を保持するとともに、該保持されている通信の状態に応じてパケット通過の可否を決定する、 In the packet transmission control step holds the state of the communication for the network the packet belongs to through-connection, to determine whether the packet transit in accordance with the state of communication being the holding,
    ことを特徴とする請求項14に記載のアクセス制御方法。 Access control method according to claim 14, characterized in that.
  16. 通信の状態として、通過するパケットの属するネットワーク接続に関する発信元のアドレス及びポート、宛先アドレス及びポート、通信の状態、アプリケーションIDを記録し、 As the state of communication, the source address and port of network connection the packet belongs to pass, destination address and port, the communication state, the application ID is recorded,
    受信したパケットの宛先となるアプリケーションのIDの状態を参照してパケットの通過の可否を決定する、 Determining whether the passage of packets by referring to the state of the ID of the destination of the received packet application,
    ことを特徴とする請求項15に記載のアクセス制御方法。 Access control method according to claim 15, characterized in that.
  17. 保持されている通信の状態に関する情報の中から、受信したパケットの宛先となるアプリケーションのIDから該アプリケーションと関連するアプリケーションIDの一覧を参照し、関連するアプリケーションIDによってセッション情報を検索し、該セッションの宛先とパケットの送信元が一致するかどうかを判定し、一致した場合にパケットの通過を許可する、 From the information about the state of communication retained, with reference to the list of application ID associated with the application from the ID of the destination of the received packet application searches the session information by the associated application ID, the session determining whether the source destination and the packet matches, permits the passage of packets if they match,
    ことを特徴とする請求項15に記載のアクセス制御方法。 Access control method according to claim 15, characterized in that.
  18. 通信の状態として、外部からの接続要求時に元のアプリケーションから立ち上げられる子プロセスの状態を保持する、 As the state of communication, to hold the state of the child to be raised from the original application when a connection request from outside,
    ことを特徴とする請求項15に記載のアクセス制御方法。 Access control method according to claim 15, characterized in that.
  19. 通信の状態として、元のアプリケーションから子プロセスを生成するときにその状態を保持する、 As the state of communication, to hold its state when generating the original application child process,
    ことを特徴とする請求項15に記載のアクセス制御方法。 Access control method according to claim 15, characterized in that.
  20. ネットワーク接続を開始するシステム・コールにおいて、アプリケーション・プログラムが通信時に呼び出す呼び出しパラメータにファイヤ・ウォールの制御ルールを記述するパラメータを含む、 In system call for starting the network connection, including the parameters describing the control rules of the fire wall in the call parameter the application program calls during communication,
    ことを特徴とする請求項14に記載のアクセス制御方法。 Access control method according to claim 14, characterized in that.
  21. 接続を待ち受けるためのシステム・コールにおいて、アプリケーション・プログラムが通信時に呼び出す呼び出しパラメータにファイヤ・ウォールの制御ルールを記述するパラメータを含む、 In system call for listening for connections, including parameters that describe the control rules of the fire wall in the call parameter the application program calls during communication,
    ことを特徴とする請求項14に記載のアクセス制御方法。 Access control method according to claim 14, characterized in that.
  22. 前記パケット通過制御ステップでは、通過するパケットの属するネットワーク接続に関する通信の状態が接続中である場合、アプリケーションから指定された宛先へ接続を開始するためのパケットの通過を許す、 In the packet transmission control step, when a communication regarding network connection belongs packets passing through the state is connecting, allow the passage of a packet to initiate a connection to the specified destination from the application,
    ことを特徴とする請求項14に記載のアクセス制御方法。 Access control method according to claim 14, characterized in that.
  23. 前記パケット通過制御ステップでは、通過するパケットの属するネットワーク接続に関する通信の状態が通信中である場合、指定されている発信元から宛先への双方向の通信を許可する、 In the packet transmission control step, when a communication regarding network connection belongs packets passing through state is communicating, to permit two-way communication from source to destination specified,
    ことを特徴とする請求項14に記載のアクセス制御方法。 Access control method according to claim 14, characterized in that.
  24. 前記パケット通過制御ステップでは、通過するパケットの属するネットワーク接続に関する通信の状態が待ち受けである場合、アプリケーションに対して指定されている発信元からの接続を許す、 In the packet transmission control step, if it is waiting it is communication for network connection the packet belongs to the pass state, allowing the connection from the source that is specified for the application,
    ことを特徴とする請求項14に記載のアクセス制御方法。 Access control method according to claim 14, characterized in that.
  25. 前記パケット通過制御ステップでは、通過するパケットの属するネットワーク接続に関する通信の状態が条件付待ち受けである場合、既に通信中状態にあるプログラムが動的に新たな接続をした場合のみ接続を許可する、 In the packet transmission control step, if the communication for network connection belongs packets passing through state is waiting conditional only allow connections when a program that is already in the communication state is dynamically new connection,
    ことを特徴とする請求項14に記載のアクセス制御方法。 Access control method according to claim 14, characterized in that.
  26. 前記パケット通過制御ステップでは、通過するパケットの属するネットワーク接続に関する通信の状態が終了待ちの場合、接続を終了させる手順の途中であることを示す、 In the packet transmission control step indicates that the communication for network connection belongs packets passing through state when the termination waiting, is in the middle of the procedure for terminating the connection,
    ことを特徴とする請求項14に記載のアクセス制御方法。 Access control method according to claim 14, characterized in that.
  27. ネットワークに接続された機器に対するアクセスを制御するための処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、 A computer program described in a computer readable format so as to execute a process for controlling access to devices connected to the network on a computer system,
    ネットワーク・インターフェースへの入出力パケットを監視して、所定の制御ルールに基づいてパケットの通過の可否を制御するパケット通過制御ステップと、 Monitors the input and output packets to the network interface, the packet transmission control step of controlling whether the passage of the packets based on a predetermined control rule,
    アプリケーション・プログラムが通信時に呼び出す呼び出しパラメータを解釈して前記制御ルールを変更する制御ルール変更ステップと、 A control rule changing step of changing the control rule application program interprets the call parameters to invoke when a communication,
    を具備することを特徴とするコンピュータ・プログラム。 Computer program characterized by comprising a.
JP2002237259A 2002-08-16 2002-08-16 Access control device, access control method and computer program Pending JP2004078507A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002237259A JP2004078507A (en) 2002-08-16 2002-08-16 Access control device, access control method and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002237259A JP2004078507A (en) 2002-08-16 2002-08-16 Access control device, access control method and computer program

Publications (1)

Publication Number Publication Date
JP2004078507A true JP2004078507A (en) 2004-03-11

Family

ID=32021070

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002237259A Pending JP2004078507A (en) 2002-08-16 2002-08-16 Access control device, access control method and computer program

Country Status (1)

Country Link
JP (1) JP2004078507A (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8126444B2 (en) 2005-09-21 2012-02-28 Nec Corporation Communication system and method for executing application program that specifies no communication parameter
JP2015222961A (en) * 2010-07-28 2015-12-10 マカフィー, インコーポレイテッド System and method for network level protection against malicious software
US9578052B2 (en) 2013-10-24 2017-02-21 Mcafee, Inc. Agent assisted malicious application blocking in a network environment
US9576142B2 (en) 2006-03-27 2017-02-21 Mcafee, Inc. Execution environment file inventory
US9594881B2 (en) 2011-09-09 2017-03-14 Mcafee, Inc. System and method for passive threat detection using virtual memory inspection
US9602515B2 (en) 2006-02-02 2017-03-21 Mcafee, Inc. Enforcing alignment of approved changes and deployed changes in the software change life-cycle
US9866528B2 (en) 2011-02-23 2018-01-09 Mcafee, Llc System and method for interlocking a host and a gateway
US9864868B2 (en) 2007-01-10 2018-01-09 Mcafee, Llc Method and apparatus for process enforced configuration management
US9882876B2 (en) 2011-10-17 2018-01-30 Mcafee, Llc System and method for redirected firewall discovery in a network environment
US10171611B2 (en) 2012-12-27 2019-01-01 Mcafee, Llc Herd based scan avoidance system in a network environment
US10360382B2 (en) 2017-01-27 2019-07-23 Mcafee, Llc Execution environment file inventory

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8126444B2 (en) 2005-09-21 2012-02-28 Nec Corporation Communication system and method for executing application program that specifies no communication parameter
US9602515B2 (en) 2006-02-02 2017-03-21 Mcafee, Inc. Enforcing alignment of approved changes and deployed changes in the software change life-cycle
US9576142B2 (en) 2006-03-27 2017-02-21 Mcafee, Inc. Execution environment file inventory
US9864868B2 (en) 2007-01-10 2018-01-09 Mcafee, Llc Method and apparatus for process enforced configuration management
JP2015222961A (en) * 2010-07-28 2015-12-10 マカフィー, インコーポレイテッド System and method for network level protection against malicious software
US9832227B2 (en) 2010-07-28 2017-11-28 Mcafee, Llc System and method for network level protection against malicious software
US9866528B2 (en) 2011-02-23 2018-01-09 Mcafee, Llc System and method for interlocking a host and a gateway
US9594881B2 (en) 2011-09-09 2017-03-14 Mcafee, Inc. System and method for passive threat detection using virtual memory inspection
US9882876B2 (en) 2011-10-17 2018-01-30 Mcafee, Llc System and method for redirected firewall discovery in a network environment
US10171611B2 (en) 2012-12-27 2019-01-01 Mcafee, Llc Herd based scan avoidance system in a network environment
US9578052B2 (en) 2013-10-24 2017-02-21 Mcafee, Inc. Agent assisted malicious application blocking in a network environment
US10205743B2 (en) 2013-10-24 2019-02-12 Mcafee, Llc Agent assisted malicious application blocking in a network environment
US10360382B2 (en) 2017-01-27 2019-07-23 Mcafee, Llc Execution environment file inventory

Similar Documents

Publication Publication Date Title
US8255496B2 (en) Method and apparatus for determining a network topology during network provisioning
US8117639B2 (en) System and method for providing access control
RU2370916C1 (en) Local network intermediator used for remote connected mobile device operating in reduced power consumption mode
KR101213870B1 (en) Computer-executable by a computer readable medium storing instructions for performing the detection and method for configuring a wireless device,
CN1578215B (en) System and method for automatic negotiation of a security protocol
US7185070B2 (en) Generic quality of service protocol and architecture for user applications in multiple transport protocol environments
CN100531229C (en) Generic external proxy
RU2414052C2 (en) Initiating possibility of wireless connection for devices using wireless communication line
KR100949808B1 (en) Apparatus and method for managing p2p traffic
US9332089B2 (en) Data communication coordination with sequence numbers
JP4081472B2 (en) Cluster management method and apparatus of the network device
CN1813454B (en) System and method for mobile unit session management across a wireless communication network
KR100681625B1 (en) A method to realize dynamic networking and resource sharing among equipments
JP4327575B2 (en) Dynamic firewall system
EP2448185B1 (en) Internet connection system and server for routing connections to client device
CN100390743C (en) Method and apparatus for router port configuration
JP5040087B2 (en) Security setting method for a wireless communication network, the security setting program and a wireless communication network system
US6748543B1 (en) Validating connections to a network system
Hwang et al. Middleware services for P2P computing in wireless grid networks
CN1166124C (en) Equipment peer-to-peer connection method in realizing dynamic network connection in home network
KR20040103441A (en) Controlled relay of media streams across network perimeters
US20060129677A1 (en) Communication device and setting method therefor
JP2006074769A (en) Port-mapping system of network
US20030065799A1 (en) Communication device
CN100401289C (en) Arranging synchronization session