ネットワーク接続制御装置、ネットワークシステム、ネットワーク接続制御方法及びネットワーク接続制御プログラム
【課題】極めて簡素な導入作業で、企業のネットワークに強力なセキュリティを実現する、新規なネットワーク接続制御装置、及びこれを用いるネットワークシステムを提供する。
【解決手段】端末と社内LANとの間にネットワーク接続制御装置を挟み込み、端末を社内LANから分離する。ネットワーク接続制御装置は、個人認証情報を生成する装置から個人認証情報を受け取ると、これを認証サーバに送信して認証を受ける。認証を受けたら、内部のファイアウォールの機能を起動する。
【解決手段】端末と社内LANとの間にネットワーク接続制御装置を挟み込み、端末を社内LANから分離する。ネットワーク接続制御装置は、個人認証情報を生成する装置から個人認証情報を受け取ると、これを認証サーバに送信して認証を受ける。認証を受けたら、内部のファイアウォールの機能を起動する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワーク接続制御装置、そしてこのネットワーク接続制御装置を用いたネットワークシステム、ネットワーク接続制御方法及びネットワーク接続制御プログラムに適用して好適な技術に関する。
より詳細には、既存の企業の社内ネットワークに対し、容易にセキュリティ対策を導入できる、ネットワーク接続制御装置と、これを用いるネットワークシステムに関する。
【背景技術】
【0002】
今日、情報を迅速且つ有効に活用するために、社内のコンピュータ及び外部のコンピュータを結ぶネットワークは、企業活動に必要不可欠な存在になっている。その一方で、企業活動を脅かすネットワーク上の脅威が多く台頭している。すなわち、コンピュータウイルス、DoS攻撃、情報漏えい等、企業のネットワークは様々な脅威に晒されている。このため、企業のネットワークには様々なセキュリティ対策が施されてきている。そのセキュリティ対策は、ソフトウェア或はハードウェアの製品として導入され、その数は徐々に増えてきている。例えば、端末利用者の個人認証を行う装置、ネットワーク上の通信を監視する装置、端末の挙動を監視する装置等、様々である。
【0003】
なお、本発明に類似すると思われる先行技術文献を特許文献1に示す。
【特許文献1】特開2007−293719号公報
【非特許文献1】Rusty Russell, mailing list netfilter@lists.samba.org, 訳:山森 浩幸“Linux 2.4 Packet Filtering HOWTO”、[2008年4月14日検索]、インターネット<URL:http://www.linux.or.jp/JF/JFdocs/packet-filtering-HOWTO.html>
【発明の開示】
【発明が解決しようとする課題】
【0004】
ネットワーク及びこれに接続される端末のセキュリティを確保するために導入される製品が増えれば増えるほど、製品の導入作業やメンテナンス作業等により、ネットワーク管理者の負担は増大する。また、端末の動作速度も低下し、一部ではこれらセキュリティ製品の導入によって、迅速な企業活動を却って阻害する状況も生じている。
【0005】
本発明はかかる点に鑑みてなされたものであり、極めて簡素な導入作業で、企業の社内ネットワークに強力なセキュリティを実現することができる、新規なネットワーク接続制御装置、そしてこれを用いるネットワークシステム、ネットワーク接続制御方法及びネットワーク接続制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明のネットワーク接続制御装置は、認証サーバと接続される第一ネットワークインターフェースと、第一ネットワークインターフェースと認証サーバとの通信を確立するDHCPクライアントと、第一ネットワークインターフェースとは異なるサブネットを構成して端末と接続される第二ネットワークインターフェースと、ネットワーク構成情報を生成して第二ネットワークインターフェースと端末との通信を確立するDHCPサーバと、第一ネットワークインターフェースと第二ネットワークインターフェースとの通信のオン・オフを制御する接続制御部と、外部から得られる個人認証情報を認証サーバに送信し、認証サーバから正常な個人認証情報である旨の認証結果を受信すると接続制御部をオン制御する個人認証部とを備えるものである。
【0007】
端末と社内LANとの間にネットワーク接続制御装置を挟み込み、端末を社内LANから分離する。ネットワーク接続制御装置は、個人認証情報を生成する装置から個人認証情報を受け取ると、これを認証サーバに送信して認証を受ける。認証を受けたら、内部のファイアウォールの機能を起動する。
【発明の効果】
【0008】
本発明により、極めて簡素な導入作業で、企業のネットワークに強力なセキュリティを実現する、新規なネットワーク接続制御装置、及びこれを用いるネットワークシステムを提供できる。
【発明を実施するための最良の形態】
【0009】
以下、本発明の実施の形態を、図1〜図7を参照して説明する。
【0010】
図1は、本発明の実施形態の例であるネットワークシステムの概略図である。
本発明のネットワークシステム101には、従来の端末及び社内サーバの他に、端末側ネットワーク接続制御装置と上流側ネットワーク接続制御サーバが追加されている。
周知のパソコンよりなる端末102には、端末側ネットワーク接続制御装置(以下「ローカルマスタ」)103が、USBインターフェースを介して接続されている。
ローカルマスタ103には個人認証情報生成装置104がUSBインターフェースを介して接続されている。
ローカルマスタ103はLAN105を通じて上流側ネットワーク接続制御サーバ(以下「ネットワークセンタ」)106に接続されている。
ネットワークセンタ106には複数の社内サーバ107とインターネット108が接続されている。
【0011】
個人認証情報生成装置104は任意のものが利用可能である。一例としては、指紋読取装置、虹彩読取装置、静脈読取装置等の生体認証技術を用いた装置の他、暗証番号或はパスワードを入力するテンキー或はASCII配列キーボードでもよい。
この実施形態では、指紋読取装置であるものとして説明する。
【0012】
ローカルマスタ103は個人認証情報生成装置104である指紋読取装置から指紋特徴データを受信すると、これをネットワークセンタ106に送信し、個人認証を試みる。
ネットワークセンタ106は受信した指紋特徴データを内部の個人認証マスタ(図5にて後述)と照合して、一定割合以上の特徴量の一致を確認すると、ユーザ認証を許可する旨のメッセージをローカルマスタ103に返信する。
ローカルマスタ103はこのメッセージを受け取ると、端末102とネットワークセンタ106側とのLAN105の接続を行う。
【0013】
図2(a)及び(b)はローカルマスタ103の外観斜視図である。
図2(a)はローカルマスタ103を斜め正面から見た外観斜視図である。前面にはUSB−Aコネクタ202が二つ設けられている。このUSB−Aコネクタ202には、個人認証情報生成装置104が接続される。
図2(b)はローカルマスタ103を斜め裏面から見た外観斜視図である。前面にはUSB−Bコネクタ203が一つと、ネットワークコネクタ204が一つ設けられている。USB−Bコネクタ203は、図示しないUSB−Bケーブルを通じて端末102が接続される。ネットワークコネクタ204はLAN105ケーブルが接続され、その先にはネットワークセンタ106が接続される。
【0014】
図3はローカルマスタ103のハードウェア構成を示すブロック図である。
マイクロコンピュータよりなるローカルマスタ103は、CPU302、ROM303、RAM304、不揮発性ストレージとしてのフラッシュメモリ305、第一USBインターフェース306、第二USBインターフェース307、そしてNIC(Network Interface Card)308が、バス309に接続されている。
ROM303にはBIOSの他に、OSのカーネルやライブラリ、そして管理用コマンド等の主要部分が格納されている。OSは例えばLinux(登録商標)である。
ローカルマスタ103はパソコンである端末102からUSBケーブルを介して、電源供給を受ける。つまり、ローカルマスタ103はバスパワードデバイスである。
【0015】
図4はローカルマスタ103の機能ブロック図である。OSが起動して定常状態に落ち着くと、図4に示す機能ブロックが構成される。
ローカルマスタ103の内部は、二つのネットワークインターフェースが設定される。第一ネットワークインターフェースともいえる第一NIC402は、図3のNIC308である。
第一NIC402には、DHCP(Dynamic Host Configuration Protocol)クライアント403、個体認証部404と個人認証部405が稼動状態で接続されている。
DHCPクライアント403は、ネットワークセンタ106に備わっているDHCPサーバから、IPアドレス、ネットマスク、デフォルトゲートウェイ、ネームリゾルバ等のネットワーク構成情報を受けて、第一NIC402がネットワークに接続できるようにする。
個体認証部404はローカルマスタ103自身のIDとパスワードを用いて、ネットワークセンタ106に認証を行うと共に、NFS(Network File System)マウントを要求する。個体認証部404の実体はNFSクライアントである。
個体認証部404が認証に成功すると、ネットワークセンタ106の所定のディスク資源にNFSマウントを行う。これは後述するパケットモニタ410の、第一NIC402側のパケットをログ記録するためである。
【0016】
個人認証部405は、個人認証情報生成装置104から出力される個人認証情報をネットワークセンタ106に送信し、認証結果を受信する。個人認証部405の実体はLDAP(Lightweight Directory Access Protocol)クライアントとNFSクライアントである。
個人認証部405が認証に成功すると、ネットワークセンタ106の所定のディスク資源にNFSマウントを行う。これは後述するパケットモニタ410の、第二ネットワークインターフェースともいえる第二NIC406側のパケットをログ記録するためである。そして、後述する接続制御部407を制御し、第一NIC402と第二NIC406との間の通信を許可する。
【0017】
ホスト情報408は、ネットワークセンタ106の名前(FQDN:Fully Qualified Domain Name:完全修飾ドメイン名)或はIPアドレスが記述された定義ファイルである。個人認証部405及び個体認証部404はこれを頼りにネットワークセンタ106へ接続する。なお、第一NIC402側のネットワーク上にDNS(Domain Name System)サーバが存在すれば、定義ファイルにIPアドレスを記述せずとも、FQDNから名前解決(name resolution:DNSサーバ或はhostsファイルに問い合わせを行い、ネットワーク上の機器に付されているホスト名或はFQDNからIPアドレスに変換すること。)ができる。そうでない場合、或はDNSサーバにネットワークセンタ106のIPアドレスを登録していない場合は、ネットワークセンタ106のホスト名とIPアドレスを/etc/hostsに記述することで、DNSサーバの機能を代用できる。
【0018】
第二NIC406には、DHCPサーバ409が稼動状態で接続されている。DHCPサーバ409は、端末102で稼動するDHCPクライアント403から発されるネットワーク構成情報の要求を受けて、ネットワーク構成情報を送信し、端末102が第二NIC406とネットワーク接続ができるようにする。
【0019】
ここで、第一NIC402が接続されるネットワークと、第二NIC406が接続されるネットワークとは、全く異なるサブネットで構成されている。このため、接続制御部407で経路制御を行わない限り、第一NIC402側に存在するネットワーク機器からは、端末102のIPアドレスの存在はわからない。
【0020】
第二NIC406は端末102のNICとして端末102側から認識される、ソフトウェアによって仮想的に構成されるNICである。Linux(登録商標)カーネルにはUSB−etherドライバという名称で存在する。つまり、第二NIC406は端末102のNICである。端末102から見ると、ローカルマスタ103はUSBインターフェースで接続されるNICとして認識される。
このため、第二NIC406にIPアドレスを付与し、TCP/IPネットワークを構成する作業は端末102の役目である。
したがって、端末102のOSが内包するDHCPクライアントを稼動させる必要がある。このため、ローカルマスタ103にはDHCPサーバ409が存在する。
【0021】
接続制御部407は、第一NIC402と第二NIC406との間に介在し、通過するパケットのヘッダに付されているIPアドレスを付け替える機能を備える。これは、Linux(登録商標)のカーネルに備わっている、netfilterというモジュールによって実現する、パケットフィルタリングの機能であり、IPマスカレード或はNAPT(Network Address Port Translation)等と呼ばれる。
実体がnetfilterである接続制御部407を制御する手段が、iptablesというコマンドである。iptablesは、RAM304内に読み込まれているカーネルの所定の領域に、ネットワークインターフェースを出入りするパケットをどう取り扱うかを記す「ルール」を列挙するためのコマンドである。
また、iptablesによって記述されるルールによって、異常な挙動と思しきパケットをログ記録することができる。
接続制御部407とパケットモニタ410は、その実体はnetfilterであり、iptablesによって設定されるものである。
【0022】
個人認証部405は、ネットワークセンタ106から認証が正常である旨のメッセージを受けると、接続制御部407に対して制御を実行する。具体的には、一例として以下のようなシェルスクリプトを実行することにより、iptablesを実行し、第一NIC402と第二NIC406との間においてパケットを通過可能にする。なお、行頭に「#」が付されている行は説明のためのコメントであり、シェルによって実行されない。
【0023】
# filterターゲットに対するルール:
# INPUT/FORWARDチェインのポリシーの設定を「DROP」(破棄)に設定する。
/sbin/iptables -t filter -P INPUT DROP
/sbin/iptables -t filter -P FORWARD DROP
# 第一NIC402に来る、TCPポート22番のパケットだけは入来を許可する。
/sbin/iptables -t filter -A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
# 第一NIC402に来る、内部から発された接続要求に由来するパケットは入来を許可する。
/sbin/iptables -t filter -A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
# 第一NIC402に来る、それ以外のパケットの一部をログ記録する。
/sbin/iptables -t filter -A INPUT -i eth0 -m limit -j LOG
# 第一NIC402に来る、それ以外のパケットを破棄する。
/sbin/iptables -t filter -A INPUT -i eth0 -j DROP
# 第一NIC402に来る、端末102から発された接続要求に由来するパケットは入来を許可する。
/sbin/iptables -t filter -A FORWARD -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
# 第一NIC402に来る、それ以外のパケットをログ記録する。
/sbin/iptables -t filter -A FORWARD -i eth0 -m limit -j LOG
# 第一NIC402に来る、それ以外のパケットを破棄する。
/sbin/iptables -t filter -A FORWARD -i eth0 -j DROP
# 第二NIC406から来たパケットの一部をログ記録する。
/sbin/iptables -t filter -A FORWARD -i eth1 -m limit -j LOG
# 第二NIC406から来たパケットの一部を解析用にネットワークセンタ106に送る。
/sbin/iptables -t filter -A FORWARD -i eth1 -m limit -j QUEUE
# 第二NIC406から来たパケットの全ての転送を許容する。
/sbin/iptables -t filter -A FORWARD -i eth1 -j ACCEPT
# natターゲットに対するルール:
# 第二NIC406から来たパケットのIPアドレスを書き換える(IPマスカレード)。
/sbin/iptables -t nat -A POSTROUTING -i eth1 -o eth0 -j MASQUERADE
【0024】
上述のシェルスクリプト中、「eth0」はカーネルが認識する第一NIC402であり、「eth1」はカーネルが認識する第二NIC406である。
iptablesによってもたらされるこれらルールは、典型的なパケットフィルタリングファイアウォールを実現する。
なお、TCPポート22番だけを開けているのは、ネットワークセンタ106からSSH(Secure SHell)による接続を許容するためである。
【0025】
上述のシェルスクリプトに記述される、iptablesのルールを工夫するだけで、DoS(Denial of Services)攻撃を始めとする様々な外部からの不正アクセス等から端末102を防御することができる。
【0026】
上述のシェルスクリプト中、iptablesの「QUEUE」ターゲットが指定されているコマンド行では、端末102から発され第二NIC406から来たパケットの一部が取り出され、ip_queueモジュールに渡される。パケットモニタ410には、その内部にip_queueモジュールからパケットを取り出して、解析用にネットワークセンタ106に送るプログラムが組み込まれている。ネットワークセンタ106は、図5で後述するアクセス解析部511にてパケットの解析を行い、不正なアクセスであると判断した時には、アクセス制御部512からパケットモニタ410を介して、接続制御部407をオフ制御する。
以上より、ネットワークセンタ106は、端末102に対する通信を監視するモニタ装置でもある。
【0027】
また、パケットモニタ410が異常なパケットを検出した時に接続を遮断する際には、一例として以下のようなシェルスクリプトを実行する。
【0028】
# IPマスカレードの設定を消去する。
/sbin/iptables -t nat -F POSTROUTING
# フィルタリングの設定を消去する。
/sbin/iptables -t filter -F INPUT
/sbin/iptables -t filter -F FORWARD
# 第一NIC402に来る、TCPポート22番のパケットだけは入来を許可する。
/sbin/iptables -t filter -A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
【0029】
以上のようなフィルタリングのルールは、非特許文献1にルールを作成するための技術内容が開示されている。
【0030】
ログ記録は、パケットモニタ410が構成する、ごく小容量の記憶領域に書き出された後、第一NIC402のNFSマウントされているネットワークディスク資源に、第一NIC402と第二NIC406の記録に分けて書き出される。
【0031】
図5はネットワークセンタ106の機能ブロック図である。ネットワークセンタ106のハードウェア構成も、周知のパソコン等と同じ、サーバ機器であるので、ハードウェア構成の図示は省略する。
ネットワークセンタ106も、Linux(登録商標)が稼動する。勿論、BSD系等、他のPOSIX系OSでもよい。
NIC502には、DHCPサーバ503が接続され、稼動する。DHCPサーバ503は複数のローカルマスタ103にネットワーク構成情報を提供する。
個体ログ記録部504はNFSサーバである。個体認証マスタ505の実体は「/etc/passwd」である。つまり、ローカルマスタ103の個体認証部404に格納されているユーザIDは、ネットワークセンタ106に登録されているユーザアカウントと等しい。個体ログ領域506は各ユーザアカウントのホームディレクトリ配下に設けられた、NFSマウントポイントである。
ここに、ローカルマスタ103の第一NIC402にて採取される異常パケットがパケットモニタ410によって検出され、ログ記録が行われる。
【0032】
個人認証部507の実体は、LDAPサーバである。個人認証マスタ508は、個人認証情報生成装置104が発する個人認証情報に対応するデータが格納されている。
個人ログ記録部509はNFSサーバである。個人ログ領域510は個人認証マスタ508に登録されている各ユーザアカウントに向けて設けられた、NFSマウントポイントである。ここに、ローカルマスタ103の第二NIC406にて採取される異常パケットがパケットモニタ410によって検出され、ログ記録が行われる。
また、パケットモニタ410によって採取される、端末102から発され第二NIC406から来たパケットの一部も個人ログ記録部509を通じて個人ログ領域510に記録される。そして、これら記録されたパケットの中身がアクセス解析部511によって解析される。
【0033】
ここで、パケットモニタ410によって採取される、端末102から発され第二NIC406から来たパケットの一部を「異常パケット」と記さないのには理由がある。第二NIC406から発されるパケットのどれが異常或は悪意あるアクセスなのかを特定することは、ローカルマスタ103内のiptablesのルールだけでは判別が困難である。そこで、先のシェルスクリプトでは、端末102から発される、外部へ発されるパケットの一部に限定して記録する。これがiptablesの「-m limit」オプションである。このオプションが指定されると、最初のアクセス要求から5パケット分だけを指定することとなる。アクセス解析部511は、このパケットを解析して、異常或は悪意あるアクセスであるのかを判別する。
【0034】
アクセス制御部512は、アクセス解析部511が異常或は悪意あるアクセスであると判別した結果を受けて、対象となるローカルマスタ103のパケットモニタ410に、接続を遮断する命令を発する。具体的には、SSHクライアントであり、対象となるローカルマスタ103にSSHログインして、iptablesを実行する。
【0035】
図6と図7は、ネットワーク内の各機器の動作を記したシーケンス図である。
端末102の電源を投入すると(S601)、端末102はOSを読み込み、ブートを開始する(S602)。程なくして、端末102のUSBインターフェース306が活性化され、USBインターフェース306からバスパワーが供給されるようになる(S603)。すると、USBケーブルを通じて端末102に接続されているローカルマスタ103に、USBケーブルのバスパワーが供給され、電源が投入される(S604)。すると、ローカルマスタ103も端末102と同様にOSを読み込み、ブートを開始する(S605)。
【0036】
ローカルマスタ103のOSがブートを開始すると、図示しない不揮発性ストレージに構成されているファイルシステムの/etc/init.d/ディレクトリ以下に格納されている、種々のシェルスクリプトを所定の順番に起動する。それらシェルスクリプト群の中には、DHCPサーバ409とDHCPクライアント403を起動するシェルスクリプトも存在しており、それぞれ他のプログラムと共に起動される(S606、S607)。なお、iptablesによる接続制御部407のルーティング機能は、これらには含まれていないので、初期状態の時点ではルーティングオフとなっている(S608)。
【0037】
一方、端末102ではOSのブート(S602)の後、DHCPクライアント403が起動する(S609)。端末102の図示しないDHCPクライアントはブロードキャストパケットを発して、ネットワーク上に存在するであろうDHCPサーバに対してネットワーク構成情報を要求する(S610)。ローカルマスタ103のDHCPサーバ409が起動していないうちは、構成情報の取得に失敗する(S611)。しかし、DHCPサーバ409が起動した後では(S612)、DHCPサーバ409は端末102のDHCPクライアントが発したブロードキャストパケットを受信すると、ネットワーク構成情報を端末102のDHCPクライアントへ送信する(S613)。DHCPクライアント403がネットワーク構成情報を受信すると、ネットワークの構成が完了する(S614)。これ以降は端末102とローカルマスタ103間の通信が可能になる。しかし、この時点ではルーティングがオフになっている(S608)ので、ローカルマスタ103を経由して社内サーバ107へ接続を試みようとしても(S615)失敗する(S616)。
【0038】
ステップS605にて、ローカルマスタ103のOSがブートし、初期動作のための/etc/init.d/ディレクトリ配下にあるシェルスクリプトが起動されると、DHCPクライアント403も起動する(S607)。すると、DHCPクライアント403はブロードキャストパケットを発して、ネットワーク上に存在するであろうDHCPサーバに対してネットワーク構成情報を要求する(S617)。ネットワークセンタ106のDHCPサーバ503はこのブロードキャストパケットを受信すると、DHCPクライアント403に対してネットワーク構成情報を送信する(S618)。DHCPクライアント403がネットワーク構成情報を受信すると、第一NIC402にIPアドレスが付与され、ネットワークの構成が完了する(S619)。これ以降、ローカルマスタ103はネットワークセンタ106や社内サーバ107、或はインターネット108等との通信が可能になる。
【0039】
ローカルマスタ103の第一NIC402側のネットワークの構成が完了すると(S619)、個体認証部404が起動し、ネットワークセンタ106へ個体認証とNFSマウントを要求する(S620)。ネットワークセンタ106の個体ログ記録部504はその要求を受け取り、個体認証の後NFSマウントを許可する(S621)。ローカルマスタ103はこれを受けて、ネットワークセンタ106の個体ログ領域506をNFSマウントする(S622)。これ以降、個体ログ領域506へログ記録が可能になる(図7のS723)。
【0040】
ローカルマスタ103に接続されている、個人認証情報生成装置104である指紋読取装置に指紋を読み取らせると、指紋読取装置は指紋特徴データを生成する。そして、指紋特徴データは個人認証部405に送られる。個人認証部405はこの指紋特徴データをLDAPプロトコルを用いてネットワークセンタ106に送信し、個人認証を要求すると共に、NFSマウントも要求する(S724)。
ネットワークセンタ106の個人認証部507は指紋特徴データを受信すると、その認証を行う。そして、個人ログ記録部509を制御してNFSマウントを許可する(S725)。
個人認証が正常に行われた旨のメッセージはローカルマスタ103の個人認証部405に返信され、NFSマウントも実行される(S726)。
【0041】
その後、個人認証部405は接続制御部407に対し、ルーティングを有効にするべく命ずる。実際は、先に示したシェルスクリプトにてiptablesを実行し、netfilterのIPマスカレード機能を有効にする(S727)。
【0042】
これ以降は、端末102がローカルマスタ103を経由して社内サーバ107へ接続を試みると(S728)、接続制御部407内でパケットに付されている送信元IPアドレスの書き換えが行われ(S729)、社内サーバ107に接続要求が送信できる。社内サーバ107は、接続要求を受信すると、当該端末102を使用しているユーザは個人認証済みであるか否かを、ネットワークセンタ106の個人認証部507に問い合わせる(S730)。ネットワークセンタ106の個人認証部507は個人認証結果の情報を社内サーバ107へ返信する(S731)。社内サーバ107は当該ユーザが正常に個人認証を済ませていることを確認すると、アクセスを許可し、端末102から要求された内容(コンテンツ)を返信する(S732)。コンテンツが格納されているパケットの送信先IPアドレスはローカルマスタ103の接続制御部407で再び変換されて(S733)、端末102に届く(S734)。
【0043】
本実施形態には、以下のような応用例が考えられる。
(1)上述の実施形態では、ネットワークセンタ106は一種の認証サーバの機能を提供しているが、更にルータとしての機能を持たせることもできる。つまり、端末102が社内サーバ107やインターネット108へアクセスする際には、必ずルータであるネットワークセンタ106を通過しなければならない、という実装にすることもできる。
【0044】
(2)ネットワークセンタ106にはLDAPサーバである個人認証部507と共にDHCPサーバ503も内包しているが、DHCPサーバ503は外部に存在していてもよい。特に、既にDHCPサーバが存在する既存の社内LANにネットワークセンタ106を設置する場合、DHCPサーバ503の機能は無効にすることが必要になる。
【0045】
(3)端末とローカルマスタをUSBケーブルで接続する代わりに、LANケーブルで接続することもできる。
前述の実施形態では、端末102とローカルマスタ103の間はUSBケーブルで接続されていた。このため、第二NIC406はソフトウェアNICで構成されていた。これが、LANケーブルで接続する場合には、第二NICをハードウェアNICで構成することとなる。
図8(a)及び(b)は、端末とローカルマスタとの間の接続形態の違いを説明するためのブロック図である。
図8(a)は、前述のローカルマスタ103の接続形態を示す図である。但し、ローカルマスタ103内のネットワーク構成に直接関係しない部分の図示は省略している。
図8(a)において、ローカルマスタ103は端末102とUSBケーブル808で接続されている。このローカルマスタ103内のDHCPサーバ409は、端末102内のDHCPクライアント802から発されるネットワーク構成情報の要求を受けると、DHCPクライアント802にネットワーク構成情報を提供する。すると、DHCPクライアント802はローカルマスタ103内の第二NIC406に、DHCPサーバ409から貸与されたIPアドレスを割り当てる。
【0046】
図8(b)は、端末102とLANケーブルで接続される別のローカルマスタ803の接続形態を示す図である。ローカルマスタ803はローカルマスタ103と実質的に殆ど同じ構成である。唯一、第二NICがハードウェアNICで構成されており、端末102に装備されているNIC804とLANケーブル809を介して接続されている点が異なる。
ローカルマスタ803内のDHCPサーバ409は、端末102のDHCPクライアント802から発されるネットワーク構成情報の要求を受けると、DHCPクライアント802にネットワーク構成情報を提供する。すると、DHCPクライアント802は端末102内部のNIC804にDHCPサーバ409から貸与されたIPアドレスを割り当てる。
ここで、図8(a)のローカルマスタ103と図8(b)のローカルマスタ803とでは、第二NICの役割が異なる。
図8(a)のローカルマスタ103の第二NIC406は、端末102のNICとして用いられる。
図8(b)のローカルマスタ803の第二NIC805は、端末102のNICとしてではなく、端末102に装備されているNICと通信するためのものである。このため、第二NIC805は、予め固定のプライベートIPアドレス806が設定されている。
以上のように、図8(a)と(b)とでは、ネットワークの構成は若干変わる。しかし、いずれの場合でも、DHCPサーバ409が必要であることに変わりはない。
【0047】
(4)ローカルマスタをパソコン用拡張ボードとして形成することができる。
図9は端末とパソコン用拡張ボードとして形成したローカルマスタを示す概略図である。
パソコンである端末102を開けると、内部のマザーボード904にはPCIスロット902が設けられている。ローカルマスタ903は、このPCIスロット902に装着できるPCI拡張ボードとして形成されている。
図10はローカルマスタ903のネットワーク構成を示す概略ブロック図である。
図10に示す機能ブロックの構成は、図8(a)で示した構成と殆ど変わらない。図8(a)のローカルマスタ103は、端末102とはUSBインターフェース306を用いて接続されていた。一方、図10では、図8(a)のUSBインターフェース306の代わりに、PCIインターフェース1002が置き換わっている。つまり、ローカルマスタ903と端末102は、PCIスロット902及び1004を通じて、図示しない端末102のPCIバスとPCIインターフェース1002が接続されることによって相互通信を確立する。
図9に示すローカルマスタ903は、図2に示すローカルマスタ103と異なり、ケース等を用いないので製造コストの面で有利である。
【0048】
(5)ネットワークはIPv4であってもIPv6であってもよい。
【0049】
本実施形態では、ネットワークシステム、及びこれに用いられる端末側ネットワーク接続制御装置と上流側ネットワーク接続制御サーバを開示した。
従来、端末であるパソコンは社内LANに直接接続されていた。このため、ネットワーク及び端末自身のセキュリティを確保するためのソフトウェアを、端末に導入しなければならなかった。
本実施形態のネットワークシステムは、端末側ネットワーク接続制御装置を用いて、端末を社内LANから分離した。そして、上流側ネットワーク接続制御サーバと協調動作することで、端末側ネットワーク接続制御装置に個人認証の仕組みと、これによって起動されるファイアウォールの機能を導入した。
この、個人認証機能を導入することにより、第三者による端末の不正使用を防止できる。仮に端末を不正利用できたとしても、個人認証が完遂されない限り、端末は社内LANへ接続できないので、社内サーバ等を含む社内LAN全体の安全を確保できる。
また、パケットフィルタリングファイアウォール機能により、端末に対する不正アクセスに対して端末を防御できる。
更に、端末と社内LANとの間を通過するパケットの監視ができるので、端末から不用意なサイトへのアクセスを遮断することもできる。
【0050】
以上に列挙した機能は、従来では端末にソフトウェアを沢山インストールする必要があった。本実施形態では、端末側ネットワーク接続制御装置がそれを肩代わりする形態となる。つまり、端末側にセキュリティのためのソフトウェアをインストールする手間が省けるので、ネットワーク管理が極めて容易になる。
【0051】
以上、本発明の実施形態例について説明したが、本発明は上記実施形態例に限定されるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りにおいて、他の変形例、応用例を含むことは言うまでもない。
【図面の簡単な説明】
【0052】
【図1】本発明の実施形態の例であるネットワークシステムの概略図である。
【図2】ローカルマスタの外観斜視図である。
【図3】ローカルマスタのハードウェア構成を示すブロック図である。
【図4】ローカルマスタの機能ブロック図である。
【図5】ネットワークセンタの機能ブロック図である。
【図6】ネットワーク内の各機器の動作を記したシーケンス図である。
【図7】ネットワーク内の各機器の動作を記したシーケンス図である。
【図8】端末とローカルマスタとの間の接続形態の違いを説明するブロック図である。
【図9】端末とパソコン用拡張ボードとして形成したローカルマスタを示す概略図である。
【図10】ローカルマスタのネットワーク構成を示す概略ブロック図である。
【符号の説明】
【0053】
101…ネットワークシステム、102…端末、103…ローカルマスタ、104…個人認証情報生成装置、105…LAN、106…ネットワークセンタ、107…社内サーバ、108…インターネット、202…USB−Aコネクタ、203…USB−Bコネクタ、204…ネットワークコネクタ、302…CPU、303…ROM、304…RAM、305…フラッシュメモリ、306…第一USBインターフェース、307…第二USBインターフェース、308…NIC、309…バス、402…第一NIC、403…DHCPクライアント、404…個体認証部、405…個人認証部、406…第二NIC、407…接続制御部、408…ホスト情報、409…DHCPサーバ、410…パケットモニタ、502…NIC、503…DHCPサーバ、504…個体ログ記録部、505…個体認証マスタ、506…個体ログ領域、507…個人認証部、508…個人認証マスタ、509…個人ログ記録部、510…個人ログ領域、511…アクセス解析部、512…アクセス制御部、802…DHCPクライアント、803…ローカルマスタ、804…NIC、805…第二NIC、806…プライベートIPアドレス、808…USBケーブル、809…LANケーブル、902…PCIスロット、903…ローカルマスタ、904…マザーボード、1002…PCIインターフェース、1004…PCIスロット
【技術分野】
【0001】
本発明は、ネットワーク接続制御装置、そしてこのネットワーク接続制御装置を用いたネットワークシステム、ネットワーク接続制御方法及びネットワーク接続制御プログラムに適用して好適な技術に関する。
より詳細には、既存の企業の社内ネットワークに対し、容易にセキュリティ対策を導入できる、ネットワーク接続制御装置と、これを用いるネットワークシステムに関する。
【背景技術】
【0002】
今日、情報を迅速且つ有効に活用するために、社内のコンピュータ及び外部のコンピュータを結ぶネットワークは、企業活動に必要不可欠な存在になっている。その一方で、企業活動を脅かすネットワーク上の脅威が多く台頭している。すなわち、コンピュータウイルス、DoS攻撃、情報漏えい等、企業のネットワークは様々な脅威に晒されている。このため、企業のネットワークには様々なセキュリティ対策が施されてきている。そのセキュリティ対策は、ソフトウェア或はハードウェアの製品として導入され、その数は徐々に増えてきている。例えば、端末利用者の個人認証を行う装置、ネットワーク上の通信を監視する装置、端末の挙動を監視する装置等、様々である。
【0003】
なお、本発明に類似すると思われる先行技術文献を特許文献1に示す。
【特許文献1】特開2007−293719号公報
【非特許文献1】Rusty Russell, mailing list netfilter@lists.samba.org, 訳:山森 浩幸“Linux 2.4 Packet Filtering HOWTO”、[2008年4月14日検索]、インターネット<URL:http://www.linux.or.jp/JF/JFdocs/packet-filtering-HOWTO.html>
【発明の開示】
【発明が解決しようとする課題】
【0004】
ネットワーク及びこれに接続される端末のセキュリティを確保するために導入される製品が増えれば増えるほど、製品の導入作業やメンテナンス作業等により、ネットワーク管理者の負担は増大する。また、端末の動作速度も低下し、一部ではこれらセキュリティ製品の導入によって、迅速な企業活動を却って阻害する状況も生じている。
【0005】
本発明はかかる点に鑑みてなされたものであり、極めて簡素な導入作業で、企業の社内ネットワークに強力なセキュリティを実現することができる、新規なネットワーク接続制御装置、そしてこれを用いるネットワークシステム、ネットワーク接続制御方法及びネットワーク接続制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明のネットワーク接続制御装置は、認証サーバと接続される第一ネットワークインターフェースと、第一ネットワークインターフェースと認証サーバとの通信を確立するDHCPクライアントと、第一ネットワークインターフェースとは異なるサブネットを構成して端末と接続される第二ネットワークインターフェースと、ネットワーク構成情報を生成して第二ネットワークインターフェースと端末との通信を確立するDHCPサーバと、第一ネットワークインターフェースと第二ネットワークインターフェースとの通信のオン・オフを制御する接続制御部と、外部から得られる個人認証情報を認証サーバに送信し、認証サーバから正常な個人認証情報である旨の認証結果を受信すると接続制御部をオン制御する個人認証部とを備えるものである。
【0007】
端末と社内LANとの間にネットワーク接続制御装置を挟み込み、端末を社内LANから分離する。ネットワーク接続制御装置は、個人認証情報を生成する装置から個人認証情報を受け取ると、これを認証サーバに送信して認証を受ける。認証を受けたら、内部のファイアウォールの機能を起動する。
【発明の効果】
【0008】
本発明により、極めて簡素な導入作業で、企業のネットワークに強力なセキュリティを実現する、新規なネットワーク接続制御装置、及びこれを用いるネットワークシステムを提供できる。
【発明を実施するための最良の形態】
【0009】
以下、本発明の実施の形態を、図1〜図7を参照して説明する。
【0010】
図1は、本発明の実施形態の例であるネットワークシステムの概略図である。
本発明のネットワークシステム101には、従来の端末及び社内サーバの他に、端末側ネットワーク接続制御装置と上流側ネットワーク接続制御サーバが追加されている。
周知のパソコンよりなる端末102には、端末側ネットワーク接続制御装置(以下「ローカルマスタ」)103が、USBインターフェースを介して接続されている。
ローカルマスタ103には個人認証情報生成装置104がUSBインターフェースを介して接続されている。
ローカルマスタ103はLAN105を通じて上流側ネットワーク接続制御サーバ(以下「ネットワークセンタ」)106に接続されている。
ネットワークセンタ106には複数の社内サーバ107とインターネット108が接続されている。
【0011】
個人認証情報生成装置104は任意のものが利用可能である。一例としては、指紋読取装置、虹彩読取装置、静脈読取装置等の生体認証技術を用いた装置の他、暗証番号或はパスワードを入力するテンキー或はASCII配列キーボードでもよい。
この実施形態では、指紋読取装置であるものとして説明する。
【0012】
ローカルマスタ103は個人認証情報生成装置104である指紋読取装置から指紋特徴データを受信すると、これをネットワークセンタ106に送信し、個人認証を試みる。
ネットワークセンタ106は受信した指紋特徴データを内部の個人認証マスタ(図5にて後述)と照合して、一定割合以上の特徴量の一致を確認すると、ユーザ認証を許可する旨のメッセージをローカルマスタ103に返信する。
ローカルマスタ103はこのメッセージを受け取ると、端末102とネットワークセンタ106側とのLAN105の接続を行う。
【0013】
図2(a)及び(b)はローカルマスタ103の外観斜視図である。
図2(a)はローカルマスタ103を斜め正面から見た外観斜視図である。前面にはUSB−Aコネクタ202が二つ設けられている。このUSB−Aコネクタ202には、個人認証情報生成装置104が接続される。
図2(b)はローカルマスタ103を斜め裏面から見た外観斜視図である。前面にはUSB−Bコネクタ203が一つと、ネットワークコネクタ204が一つ設けられている。USB−Bコネクタ203は、図示しないUSB−Bケーブルを通じて端末102が接続される。ネットワークコネクタ204はLAN105ケーブルが接続され、その先にはネットワークセンタ106が接続される。
【0014】
図3はローカルマスタ103のハードウェア構成を示すブロック図である。
マイクロコンピュータよりなるローカルマスタ103は、CPU302、ROM303、RAM304、不揮発性ストレージとしてのフラッシュメモリ305、第一USBインターフェース306、第二USBインターフェース307、そしてNIC(Network Interface Card)308が、バス309に接続されている。
ROM303にはBIOSの他に、OSのカーネルやライブラリ、そして管理用コマンド等の主要部分が格納されている。OSは例えばLinux(登録商標)である。
ローカルマスタ103はパソコンである端末102からUSBケーブルを介して、電源供給を受ける。つまり、ローカルマスタ103はバスパワードデバイスである。
【0015】
図4はローカルマスタ103の機能ブロック図である。OSが起動して定常状態に落ち着くと、図4に示す機能ブロックが構成される。
ローカルマスタ103の内部は、二つのネットワークインターフェースが設定される。第一ネットワークインターフェースともいえる第一NIC402は、図3のNIC308である。
第一NIC402には、DHCP(Dynamic Host Configuration Protocol)クライアント403、個体認証部404と個人認証部405が稼動状態で接続されている。
DHCPクライアント403は、ネットワークセンタ106に備わっているDHCPサーバから、IPアドレス、ネットマスク、デフォルトゲートウェイ、ネームリゾルバ等のネットワーク構成情報を受けて、第一NIC402がネットワークに接続できるようにする。
個体認証部404はローカルマスタ103自身のIDとパスワードを用いて、ネットワークセンタ106に認証を行うと共に、NFS(Network File System)マウントを要求する。個体認証部404の実体はNFSクライアントである。
個体認証部404が認証に成功すると、ネットワークセンタ106の所定のディスク資源にNFSマウントを行う。これは後述するパケットモニタ410の、第一NIC402側のパケットをログ記録するためである。
【0016】
個人認証部405は、個人認証情報生成装置104から出力される個人認証情報をネットワークセンタ106に送信し、認証結果を受信する。個人認証部405の実体はLDAP(Lightweight Directory Access Protocol)クライアントとNFSクライアントである。
個人認証部405が認証に成功すると、ネットワークセンタ106の所定のディスク資源にNFSマウントを行う。これは後述するパケットモニタ410の、第二ネットワークインターフェースともいえる第二NIC406側のパケットをログ記録するためである。そして、後述する接続制御部407を制御し、第一NIC402と第二NIC406との間の通信を許可する。
【0017】
ホスト情報408は、ネットワークセンタ106の名前(FQDN:Fully Qualified Domain Name:完全修飾ドメイン名)或はIPアドレスが記述された定義ファイルである。個人認証部405及び個体認証部404はこれを頼りにネットワークセンタ106へ接続する。なお、第一NIC402側のネットワーク上にDNS(Domain Name System)サーバが存在すれば、定義ファイルにIPアドレスを記述せずとも、FQDNから名前解決(name resolution:DNSサーバ或はhostsファイルに問い合わせを行い、ネットワーク上の機器に付されているホスト名或はFQDNからIPアドレスに変換すること。)ができる。そうでない場合、或はDNSサーバにネットワークセンタ106のIPアドレスを登録していない場合は、ネットワークセンタ106のホスト名とIPアドレスを/etc/hostsに記述することで、DNSサーバの機能を代用できる。
【0018】
第二NIC406には、DHCPサーバ409が稼動状態で接続されている。DHCPサーバ409は、端末102で稼動するDHCPクライアント403から発されるネットワーク構成情報の要求を受けて、ネットワーク構成情報を送信し、端末102が第二NIC406とネットワーク接続ができるようにする。
【0019】
ここで、第一NIC402が接続されるネットワークと、第二NIC406が接続されるネットワークとは、全く異なるサブネットで構成されている。このため、接続制御部407で経路制御を行わない限り、第一NIC402側に存在するネットワーク機器からは、端末102のIPアドレスの存在はわからない。
【0020】
第二NIC406は端末102のNICとして端末102側から認識される、ソフトウェアによって仮想的に構成されるNICである。Linux(登録商標)カーネルにはUSB−etherドライバという名称で存在する。つまり、第二NIC406は端末102のNICである。端末102から見ると、ローカルマスタ103はUSBインターフェースで接続されるNICとして認識される。
このため、第二NIC406にIPアドレスを付与し、TCP/IPネットワークを構成する作業は端末102の役目である。
したがって、端末102のOSが内包するDHCPクライアントを稼動させる必要がある。このため、ローカルマスタ103にはDHCPサーバ409が存在する。
【0021】
接続制御部407は、第一NIC402と第二NIC406との間に介在し、通過するパケットのヘッダに付されているIPアドレスを付け替える機能を備える。これは、Linux(登録商標)のカーネルに備わっている、netfilterというモジュールによって実現する、パケットフィルタリングの機能であり、IPマスカレード或はNAPT(Network Address Port Translation)等と呼ばれる。
実体がnetfilterである接続制御部407を制御する手段が、iptablesというコマンドである。iptablesは、RAM304内に読み込まれているカーネルの所定の領域に、ネットワークインターフェースを出入りするパケットをどう取り扱うかを記す「ルール」を列挙するためのコマンドである。
また、iptablesによって記述されるルールによって、異常な挙動と思しきパケットをログ記録することができる。
接続制御部407とパケットモニタ410は、その実体はnetfilterであり、iptablesによって設定されるものである。
【0022】
個人認証部405は、ネットワークセンタ106から認証が正常である旨のメッセージを受けると、接続制御部407に対して制御を実行する。具体的には、一例として以下のようなシェルスクリプトを実行することにより、iptablesを実行し、第一NIC402と第二NIC406との間においてパケットを通過可能にする。なお、行頭に「#」が付されている行は説明のためのコメントであり、シェルによって実行されない。
【0023】
# filterターゲットに対するルール:
# INPUT/FORWARDチェインのポリシーの設定を「DROP」(破棄)に設定する。
/sbin/iptables -t filter -P INPUT DROP
/sbin/iptables -t filter -P FORWARD DROP
# 第一NIC402に来る、TCPポート22番のパケットだけは入来を許可する。
/sbin/iptables -t filter -A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
# 第一NIC402に来る、内部から発された接続要求に由来するパケットは入来を許可する。
/sbin/iptables -t filter -A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
# 第一NIC402に来る、それ以外のパケットの一部をログ記録する。
/sbin/iptables -t filter -A INPUT -i eth0 -m limit -j LOG
# 第一NIC402に来る、それ以外のパケットを破棄する。
/sbin/iptables -t filter -A INPUT -i eth0 -j DROP
# 第一NIC402に来る、端末102から発された接続要求に由来するパケットは入来を許可する。
/sbin/iptables -t filter -A FORWARD -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
# 第一NIC402に来る、それ以外のパケットをログ記録する。
/sbin/iptables -t filter -A FORWARD -i eth0 -m limit -j LOG
# 第一NIC402に来る、それ以外のパケットを破棄する。
/sbin/iptables -t filter -A FORWARD -i eth0 -j DROP
# 第二NIC406から来たパケットの一部をログ記録する。
/sbin/iptables -t filter -A FORWARD -i eth1 -m limit -j LOG
# 第二NIC406から来たパケットの一部を解析用にネットワークセンタ106に送る。
/sbin/iptables -t filter -A FORWARD -i eth1 -m limit -j QUEUE
# 第二NIC406から来たパケットの全ての転送を許容する。
/sbin/iptables -t filter -A FORWARD -i eth1 -j ACCEPT
# natターゲットに対するルール:
# 第二NIC406から来たパケットのIPアドレスを書き換える(IPマスカレード)。
/sbin/iptables -t nat -A POSTROUTING -i eth1 -o eth0 -j MASQUERADE
【0024】
上述のシェルスクリプト中、「eth0」はカーネルが認識する第一NIC402であり、「eth1」はカーネルが認識する第二NIC406である。
iptablesによってもたらされるこれらルールは、典型的なパケットフィルタリングファイアウォールを実現する。
なお、TCPポート22番だけを開けているのは、ネットワークセンタ106からSSH(Secure SHell)による接続を許容するためである。
【0025】
上述のシェルスクリプトに記述される、iptablesのルールを工夫するだけで、DoS(Denial of Services)攻撃を始めとする様々な外部からの不正アクセス等から端末102を防御することができる。
【0026】
上述のシェルスクリプト中、iptablesの「QUEUE」ターゲットが指定されているコマンド行では、端末102から発され第二NIC406から来たパケットの一部が取り出され、ip_queueモジュールに渡される。パケットモニタ410には、その内部にip_queueモジュールからパケットを取り出して、解析用にネットワークセンタ106に送るプログラムが組み込まれている。ネットワークセンタ106は、図5で後述するアクセス解析部511にてパケットの解析を行い、不正なアクセスであると判断した時には、アクセス制御部512からパケットモニタ410を介して、接続制御部407をオフ制御する。
以上より、ネットワークセンタ106は、端末102に対する通信を監視するモニタ装置でもある。
【0027】
また、パケットモニタ410が異常なパケットを検出した時に接続を遮断する際には、一例として以下のようなシェルスクリプトを実行する。
【0028】
# IPマスカレードの設定を消去する。
/sbin/iptables -t nat -F POSTROUTING
# フィルタリングの設定を消去する。
/sbin/iptables -t filter -F INPUT
/sbin/iptables -t filter -F FORWARD
# 第一NIC402に来る、TCPポート22番のパケットだけは入来を許可する。
/sbin/iptables -t filter -A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
【0029】
以上のようなフィルタリングのルールは、非特許文献1にルールを作成するための技術内容が開示されている。
【0030】
ログ記録は、パケットモニタ410が構成する、ごく小容量の記憶領域に書き出された後、第一NIC402のNFSマウントされているネットワークディスク資源に、第一NIC402と第二NIC406の記録に分けて書き出される。
【0031】
図5はネットワークセンタ106の機能ブロック図である。ネットワークセンタ106のハードウェア構成も、周知のパソコン等と同じ、サーバ機器であるので、ハードウェア構成の図示は省略する。
ネットワークセンタ106も、Linux(登録商標)が稼動する。勿論、BSD系等、他のPOSIX系OSでもよい。
NIC502には、DHCPサーバ503が接続され、稼動する。DHCPサーバ503は複数のローカルマスタ103にネットワーク構成情報を提供する。
個体ログ記録部504はNFSサーバである。個体認証マスタ505の実体は「/etc/passwd」である。つまり、ローカルマスタ103の個体認証部404に格納されているユーザIDは、ネットワークセンタ106に登録されているユーザアカウントと等しい。個体ログ領域506は各ユーザアカウントのホームディレクトリ配下に設けられた、NFSマウントポイントである。
ここに、ローカルマスタ103の第一NIC402にて採取される異常パケットがパケットモニタ410によって検出され、ログ記録が行われる。
【0032】
個人認証部507の実体は、LDAPサーバである。個人認証マスタ508は、個人認証情報生成装置104が発する個人認証情報に対応するデータが格納されている。
個人ログ記録部509はNFSサーバである。個人ログ領域510は個人認証マスタ508に登録されている各ユーザアカウントに向けて設けられた、NFSマウントポイントである。ここに、ローカルマスタ103の第二NIC406にて採取される異常パケットがパケットモニタ410によって検出され、ログ記録が行われる。
また、パケットモニタ410によって採取される、端末102から発され第二NIC406から来たパケットの一部も個人ログ記録部509を通じて個人ログ領域510に記録される。そして、これら記録されたパケットの中身がアクセス解析部511によって解析される。
【0033】
ここで、パケットモニタ410によって採取される、端末102から発され第二NIC406から来たパケットの一部を「異常パケット」と記さないのには理由がある。第二NIC406から発されるパケットのどれが異常或は悪意あるアクセスなのかを特定することは、ローカルマスタ103内のiptablesのルールだけでは判別が困難である。そこで、先のシェルスクリプトでは、端末102から発される、外部へ発されるパケットの一部に限定して記録する。これがiptablesの「-m limit」オプションである。このオプションが指定されると、最初のアクセス要求から5パケット分だけを指定することとなる。アクセス解析部511は、このパケットを解析して、異常或は悪意あるアクセスであるのかを判別する。
【0034】
アクセス制御部512は、アクセス解析部511が異常或は悪意あるアクセスであると判別した結果を受けて、対象となるローカルマスタ103のパケットモニタ410に、接続を遮断する命令を発する。具体的には、SSHクライアントであり、対象となるローカルマスタ103にSSHログインして、iptablesを実行する。
【0035】
図6と図7は、ネットワーク内の各機器の動作を記したシーケンス図である。
端末102の電源を投入すると(S601)、端末102はOSを読み込み、ブートを開始する(S602)。程なくして、端末102のUSBインターフェース306が活性化され、USBインターフェース306からバスパワーが供給されるようになる(S603)。すると、USBケーブルを通じて端末102に接続されているローカルマスタ103に、USBケーブルのバスパワーが供給され、電源が投入される(S604)。すると、ローカルマスタ103も端末102と同様にOSを読み込み、ブートを開始する(S605)。
【0036】
ローカルマスタ103のOSがブートを開始すると、図示しない不揮発性ストレージに構成されているファイルシステムの/etc/init.d/ディレクトリ以下に格納されている、種々のシェルスクリプトを所定の順番に起動する。それらシェルスクリプト群の中には、DHCPサーバ409とDHCPクライアント403を起動するシェルスクリプトも存在しており、それぞれ他のプログラムと共に起動される(S606、S607)。なお、iptablesによる接続制御部407のルーティング機能は、これらには含まれていないので、初期状態の時点ではルーティングオフとなっている(S608)。
【0037】
一方、端末102ではOSのブート(S602)の後、DHCPクライアント403が起動する(S609)。端末102の図示しないDHCPクライアントはブロードキャストパケットを発して、ネットワーク上に存在するであろうDHCPサーバに対してネットワーク構成情報を要求する(S610)。ローカルマスタ103のDHCPサーバ409が起動していないうちは、構成情報の取得に失敗する(S611)。しかし、DHCPサーバ409が起動した後では(S612)、DHCPサーバ409は端末102のDHCPクライアントが発したブロードキャストパケットを受信すると、ネットワーク構成情報を端末102のDHCPクライアントへ送信する(S613)。DHCPクライアント403がネットワーク構成情報を受信すると、ネットワークの構成が完了する(S614)。これ以降は端末102とローカルマスタ103間の通信が可能になる。しかし、この時点ではルーティングがオフになっている(S608)ので、ローカルマスタ103を経由して社内サーバ107へ接続を試みようとしても(S615)失敗する(S616)。
【0038】
ステップS605にて、ローカルマスタ103のOSがブートし、初期動作のための/etc/init.d/ディレクトリ配下にあるシェルスクリプトが起動されると、DHCPクライアント403も起動する(S607)。すると、DHCPクライアント403はブロードキャストパケットを発して、ネットワーク上に存在するであろうDHCPサーバに対してネットワーク構成情報を要求する(S617)。ネットワークセンタ106のDHCPサーバ503はこのブロードキャストパケットを受信すると、DHCPクライアント403に対してネットワーク構成情報を送信する(S618)。DHCPクライアント403がネットワーク構成情報を受信すると、第一NIC402にIPアドレスが付与され、ネットワークの構成が完了する(S619)。これ以降、ローカルマスタ103はネットワークセンタ106や社内サーバ107、或はインターネット108等との通信が可能になる。
【0039】
ローカルマスタ103の第一NIC402側のネットワークの構成が完了すると(S619)、個体認証部404が起動し、ネットワークセンタ106へ個体認証とNFSマウントを要求する(S620)。ネットワークセンタ106の個体ログ記録部504はその要求を受け取り、個体認証の後NFSマウントを許可する(S621)。ローカルマスタ103はこれを受けて、ネットワークセンタ106の個体ログ領域506をNFSマウントする(S622)。これ以降、個体ログ領域506へログ記録が可能になる(図7のS723)。
【0040】
ローカルマスタ103に接続されている、個人認証情報生成装置104である指紋読取装置に指紋を読み取らせると、指紋読取装置は指紋特徴データを生成する。そして、指紋特徴データは個人認証部405に送られる。個人認証部405はこの指紋特徴データをLDAPプロトコルを用いてネットワークセンタ106に送信し、個人認証を要求すると共に、NFSマウントも要求する(S724)。
ネットワークセンタ106の個人認証部507は指紋特徴データを受信すると、その認証を行う。そして、個人ログ記録部509を制御してNFSマウントを許可する(S725)。
個人認証が正常に行われた旨のメッセージはローカルマスタ103の個人認証部405に返信され、NFSマウントも実行される(S726)。
【0041】
その後、個人認証部405は接続制御部407に対し、ルーティングを有効にするべく命ずる。実際は、先に示したシェルスクリプトにてiptablesを実行し、netfilterのIPマスカレード機能を有効にする(S727)。
【0042】
これ以降は、端末102がローカルマスタ103を経由して社内サーバ107へ接続を試みると(S728)、接続制御部407内でパケットに付されている送信元IPアドレスの書き換えが行われ(S729)、社内サーバ107に接続要求が送信できる。社内サーバ107は、接続要求を受信すると、当該端末102を使用しているユーザは個人認証済みであるか否かを、ネットワークセンタ106の個人認証部507に問い合わせる(S730)。ネットワークセンタ106の個人認証部507は個人認証結果の情報を社内サーバ107へ返信する(S731)。社内サーバ107は当該ユーザが正常に個人認証を済ませていることを確認すると、アクセスを許可し、端末102から要求された内容(コンテンツ)を返信する(S732)。コンテンツが格納されているパケットの送信先IPアドレスはローカルマスタ103の接続制御部407で再び変換されて(S733)、端末102に届く(S734)。
【0043】
本実施形態には、以下のような応用例が考えられる。
(1)上述の実施形態では、ネットワークセンタ106は一種の認証サーバの機能を提供しているが、更にルータとしての機能を持たせることもできる。つまり、端末102が社内サーバ107やインターネット108へアクセスする際には、必ずルータであるネットワークセンタ106を通過しなければならない、という実装にすることもできる。
【0044】
(2)ネットワークセンタ106にはLDAPサーバである個人認証部507と共にDHCPサーバ503も内包しているが、DHCPサーバ503は外部に存在していてもよい。特に、既にDHCPサーバが存在する既存の社内LANにネットワークセンタ106を設置する場合、DHCPサーバ503の機能は無効にすることが必要になる。
【0045】
(3)端末とローカルマスタをUSBケーブルで接続する代わりに、LANケーブルで接続することもできる。
前述の実施形態では、端末102とローカルマスタ103の間はUSBケーブルで接続されていた。このため、第二NIC406はソフトウェアNICで構成されていた。これが、LANケーブルで接続する場合には、第二NICをハードウェアNICで構成することとなる。
図8(a)及び(b)は、端末とローカルマスタとの間の接続形態の違いを説明するためのブロック図である。
図8(a)は、前述のローカルマスタ103の接続形態を示す図である。但し、ローカルマスタ103内のネットワーク構成に直接関係しない部分の図示は省略している。
図8(a)において、ローカルマスタ103は端末102とUSBケーブル808で接続されている。このローカルマスタ103内のDHCPサーバ409は、端末102内のDHCPクライアント802から発されるネットワーク構成情報の要求を受けると、DHCPクライアント802にネットワーク構成情報を提供する。すると、DHCPクライアント802はローカルマスタ103内の第二NIC406に、DHCPサーバ409から貸与されたIPアドレスを割り当てる。
【0046】
図8(b)は、端末102とLANケーブルで接続される別のローカルマスタ803の接続形態を示す図である。ローカルマスタ803はローカルマスタ103と実質的に殆ど同じ構成である。唯一、第二NICがハードウェアNICで構成されており、端末102に装備されているNIC804とLANケーブル809を介して接続されている点が異なる。
ローカルマスタ803内のDHCPサーバ409は、端末102のDHCPクライアント802から発されるネットワーク構成情報の要求を受けると、DHCPクライアント802にネットワーク構成情報を提供する。すると、DHCPクライアント802は端末102内部のNIC804にDHCPサーバ409から貸与されたIPアドレスを割り当てる。
ここで、図8(a)のローカルマスタ103と図8(b)のローカルマスタ803とでは、第二NICの役割が異なる。
図8(a)のローカルマスタ103の第二NIC406は、端末102のNICとして用いられる。
図8(b)のローカルマスタ803の第二NIC805は、端末102のNICとしてではなく、端末102に装備されているNICと通信するためのものである。このため、第二NIC805は、予め固定のプライベートIPアドレス806が設定されている。
以上のように、図8(a)と(b)とでは、ネットワークの構成は若干変わる。しかし、いずれの場合でも、DHCPサーバ409が必要であることに変わりはない。
【0047】
(4)ローカルマスタをパソコン用拡張ボードとして形成することができる。
図9は端末とパソコン用拡張ボードとして形成したローカルマスタを示す概略図である。
パソコンである端末102を開けると、内部のマザーボード904にはPCIスロット902が設けられている。ローカルマスタ903は、このPCIスロット902に装着できるPCI拡張ボードとして形成されている。
図10はローカルマスタ903のネットワーク構成を示す概略ブロック図である。
図10に示す機能ブロックの構成は、図8(a)で示した構成と殆ど変わらない。図8(a)のローカルマスタ103は、端末102とはUSBインターフェース306を用いて接続されていた。一方、図10では、図8(a)のUSBインターフェース306の代わりに、PCIインターフェース1002が置き換わっている。つまり、ローカルマスタ903と端末102は、PCIスロット902及び1004を通じて、図示しない端末102のPCIバスとPCIインターフェース1002が接続されることによって相互通信を確立する。
図9に示すローカルマスタ903は、図2に示すローカルマスタ103と異なり、ケース等を用いないので製造コストの面で有利である。
【0048】
(5)ネットワークはIPv4であってもIPv6であってもよい。
【0049】
本実施形態では、ネットワークシステム、及びこれに用いられる端末側ネットワーク接続制御装置と上流側ネットワーク接続制御サーバを開示した。
従来、端末であるパソコンは社内LANに直接接続されていた。このため、ネットワーク及び端末自身のセキュリティを確保するためのソフトウェアを、端末に導入しなければならなかった。
本実施形態のネットワークシステムは、端末側ネットワーク接続制御装置を用いて、端末を社内LANから分離した。そして、上流側ネットワーク接続制御サーバと協調動作することで、端末側ネットワーク接続制御装置に個人認証の仕組みと、これによって起動されるファイアウォールの機能を導入した。
この、個人認証機能を導入することにより、第三者による端末の不正使用を防止できる。仮に端末を不正利用できたとしても、個人認証が完遂されない限り、端末は社内LANへ接続できないので、社内サーバ等を含む社内LAN全体の安全を確保できる。
また、パケットフィルタリングファイアウォール機能により、端末に対する不正アクセスに対して端末を防御できる。
更に、端末と社内LANとの間を通過するパケットの監視ができるので、端末から不用意なサイトへのアクセスを遮断することもできる。
【0050】
以上に列挙した機能は、従来では端末にソフトウェアを沢山インストールする必要があった。本実施形態では、端末側ネットワーク接続制御装置がそれを肩代わりする形態となる。つまり、端末側にセキュリティのためのソフトウェアをインストールする手間が省けるので、ネットワーク管理が極めて容易になる。
【0051】
以上、本発明の実施形態例について説明したが、本発明は上記実施形態例に限定されるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りにおいて、他の変形例、応用例を含むことは言うまでもない。
【図面の簡単な説明】
【0052】
【図1】本発明の実施形態の例であるネットワークシステムの概略図である。
【図2】ローカルマスタの外観斜視図である。
【図3】ローカルマスタのハードウェア構成を示すブロック図である。
【図4】ローカルマスタの機能ブロック図である。
【図5】ネットワークセンタの機能ブロック図である。
【図6】ネットワーク内の各機器の動作を記したシーケンス図である。
【図7】ネットワーク内の各機器の動作を記したシーケンス図である。
【図8】端末とローカルマスタとの間の接続形態の違いを説明するブロック図である。
【図9】端末とパソコン用拡張ボードとして形成したローカルマスタを示す概略図である。
【図10】ローカルマスタのネットワーク構成を示す概略ブロック図である。
【符号の説明】
【0053】
101…ネットワークシステム、102…端末、103…ローカルマスタ、104…個人認証情報生成装置、105…LAN、106…ネットワークセンタ、107…社内サーバ、108…インターネット、202…USB−Aコネクタ、203…USB−Bコネクタ、204…ネットワークコネクタ、302…CPU、303…ROM、304…RAM、305…フラッシュメモリ、306…第一USBインターフェース、307…第二USBインターフェース、308…NIC、309…バス、402…第一NIC、403…DHCPクライアント、404…個体認証部、405…個人認証部、406…第二NIC、407…接続制御部、408…ホスト情報、409…DHCPサーバ、410…パケットモニタ、502…NIC、503…DHCPサーバ、504…個体ログ記録部、505…個体認証マスタ、506…個体ログ領域、507…個人認証部、508…個人認証マスタ、509…個人ログ記録部、510…個人ログ領域、511…アクセス解析部、512…アクセス制御部、802…DHCPクライアント、803…ローカルマスタ、804…NIC、805…第二NIC、806…プライベートIPアドレス、808…USBケーブル、809…LANケーブル、902…PCIスロット、903…ローカルマスタ、904…マザーボード、1002…PCIインターフェース、1004…PCIスロット
【特許請求の範囲】
【請求項1】
認証サーバと接続される第一ネットワークインターフェースと、
前記第一ネットワークインターフェースと前記認証サーバとの通信を確立するDHCPクライアントと、
前記第一ネットワークインターフェースとは異なるサブネットを構成して端末と接続される第二ネットワークインターフェースと、
ネットワーク構成情報を生成して前記第二ネットワークインターフェースと前記端末との通信を確立するDHCPサーバと、
前記第一ネットワークインターフェースと前記第二ネットワークインターフェースとの通信のオン・オフを制御する接続制御部と、
外部から得られる個人認証情報を前記認証サーバに送信し、前記認証サーバから正常な個人認証情報である旨の認証結果を受信すると前記接続制御部をオン制御する個人認証部と
を備えるネットワーク接続制御装置。
【請求項2】
前記接続制御部は、前記個人認証部にてオン制御されると、前記第一ネットワークインターフェースと前記第二ネットワークインターフェースとの間を通過するパケットに付されているIPアドレスを書き換える請求項1記載のネットワーク接続制御装置。
【請求項3】
更に、
前記端末から発されて前記第一ネットワークインターフェースを介して前記第二ネットワークインターフェースを通過するパケットの一部を前記第二ネットワークインターフェースに接続されている所定のモニタ装置に送信するパケットモニタを備える請求項2記載のネットワーク接続制御装置。
【請求項4】
任意の個人認証情報送信元から前記個人認証情報を受信すると前記個人認証情報送信元に認証結果を送信する認証サーバと、
端末と、
前記個人認証情報を生成する個人認証情報生成装置と、
ネットワーク構成情報を生成する第一のDHCPサーバと、
前記認証サーバ及び前記第一のDHCPサーバと接続される第一ネットワークインターフェースと、前記第一のDHCPサーバからネットワーク構成情報を受信して前記第一ネットワークインターフェースと前記認証サーバとの通信を確立するDHCPクライアントと、前記第一ネットワークインターフェースとは異なるサブネットを構成して前記端末と接続される第二ネットワークインターフェースと、ネットワーク構成情報を生成して前記第二ネットワークインターフェースと前記端末との通信を確立する第二のDHCPサーバと、前記第一ネットワークインターフェースと前記第二ネットワークインターフェースとの通信のオン・オフを制御する接続制御部と、前記個人認証情報生成装置から得られる前記個人認証情報を前記認証サーバに送信し、前記認証サーバから正常な個人認証情報である旨の認証結果を受け取ると前記接続制御部をオン制御する個人認証部とを備えるネットワーク接続制御装置と
を具備するネットワークシステム。
【請求項5】
前記第一のDHCPサーバは前記認証サーバと一体的に設けられている、請求項4記載のネットワークシステム。
【請求項6】
個人認証情報生成装置によって個人認証情報を生成する個人認証情報生成ステップと、
前記個人認証情報生成装置に接続されている個人認証部が前記個人認証情報を認証サーバに送信する個人認証情報送信ステップと、
前記認証サーバが受信した前記個人認証情報に基づいて認証結果を前記個人認証部に返信する認証結果返信ステップと、
前記認証サーバから前記個人認証部に返信された前記認証結果が正常である場合に前記個人認証部が接続制御部をオン制御して、端末が属するネットワークと前記認証サーバが属するネットワークとを接続するネットワーク接続ステップと
を含むネットワーク接続制御方法。
【請求項7】
認証サーバとネットワーク接続する第一インターフェース機能と、
ネットワーク構成情報を受信して前記第一インターフェース機能と前記認証サーバとの通信を確立するDHCPクライアント機能と、
端末とネットワーク接続する第二インターフェース機能と、
前記端末にネットワーク構成情報を送信して前記第二インターフェース機能と前記端末との通信を確立するDHCPサーバ機能と、
前記第一ネットワークインターフェース機能と前記第二ネットワークインターフェース機能との通信のオン・オフを制御する接続制御機能と、
個人認証情報生成装置が生成した個人認証情報を前記第二インターフェース機能を通じて前記認証サーバに送信し、前記認証サーバから返信された認証結果が正常である場合に前記接続制御機能をオン制御する個人認証機能と
をコンピュータに実行させるネットワーク接続制御プログラム。
【請求項1】
認証サーバと接続される第一ネットワークインターフェースと、
前記第一ネットワークインターフェースと前記認証サーバとの通信を確立するDHCPクライアントと、
前記第一ネットワークインターフェースとは異なるサブネットを構成して端末と接続される第二ネットワークインターフェースと、
ネットワーク構成情報を生成して前記第二ネットワークインターフェースと前記端末との通信を確立するDHCPサーバと、
前記第一ネットワークインターフェースと前記第二ネットワークインターフェースとの通信のオン・オフを制御する接続制御部と、
外部から得られる個人認証情報を前記認証サーバに送信し、前記認証サーバから正常な個人認証情報である旨の認証結果を受信すると前記接続制御部をオン制御する個人認証部と
を備えるネットワーク接続制御装置。
【請求項2】
前記接続制御部は、前記個人認証部にてオン制御されると、前記第一ネットワークインターフェースと前記第二ネットワークインターフェースとの間を通過するパケットに付されているIPアドレスを書き換える請求項1記載のネットワーク接続制御装置。
【請求項3】
更に、
前記端末から発されて前記第一ネットワークインターフェースを介して前記第二ネットワークインターフェースを通過するパケットの一部を前記第二ネットワークインターフェースに接続されている所定のモニタ装置に送信するパケットモニタを備える請求項2記載のネットワーク接続制御装置。
【請求項4】
任意の個人認証情報送信元から前記個人認証情報を受信すると前記個人認証情報送信元に認証結果を送信する認証サーバと、
端末と、
前記個人認証情報を生成する個人認証情報生成装置と、
ネットワーク構成情報を生成する第一のDHCPサーバと、
前記認証サーバ及び前記第一のDHCPサーバと接続される第一ネットワークインターフェースと、前記第一のDHCPサーバからネットワーク構成情報を受信して前記第一ネットワークインターフェースと前記認証サーバとの通信を確立するDHCPクライアントと、前記第一ネットワークインターフェースとは異なるサブネットを構成して前記端末と接続される第二ネットワークインターフェースと、ネットワーク構成情報を生成して前記第二ネットワークインターフェースと前記端末との通信を確立する第二のDHCPサーバと、前記第一ネットワークインターフェースと前記第二ネットワークインターフェースとの通信のオン・オフを制御する接続制御部と、前記個人認証情報生成装置から得られる前記個人認証情報を前記認証サーバに送信し、前記認証サーバから正常な個人認証情報である旨の認証結果を受け取ると前記接続制御部をオン制御する個人認証部とを備えるネットワーク接続制御装置と
を具備するネットワークシステム。
【請求項5】
前記第一のDHCPサーバは前記認証サーバと一体的に設けられている、請求項4記載のネットワークシステム。
【請求項6】
個人認証情報生成装置によって個人認証情報を生成する個人認証情報生成ステップと、
前記個人認証情報生成装置に接続されている個人認証部が前記個人認証情報を認証サーバに送信する個人認証情報送信ステップと、
前記認証サーバが受信した前記個人認証情報に基づいて認証結果を前記個人認証部に返信する認証結果返信ステップと、
前記認証サーバから前記個人認証部に返信された前記認証結果が正常である場合に前記個人認証部が接続制御部をオン制御して、端末が属するネットワークと前記認証サーバが属するネットワークとを接続するネットワーク接続ステップと
を含むネットワーク接続制御方法。
【請求項7】
認証サーバとネットワーク接続する第一インターフェース機能と、
ネットワーク構成情報を受信して前記第一インターフェース機能と前記認証サーバとの通信を確立するDHCPクライアント機能と、
端末とネットワーク接続する第二インターフェース機能と、
前記端末にネットワーク構成情報を送信して前記第二インターフェース機能と前記端末との通信を確立するDHCPサーバ機能と、
前記第一ネットワークインターフェース機能と前記第二ネットワークインターフェース機能との通信のオン・オフを制御する接続制御機能と、
個人認証情報生成装置が生成した個人認証情報を前記第二インターフェース機能を通じて前記認証サーバに送信し、前記認証サーバから返信された認証結果が正常である場合に前記接続制御機能をオン制御する個人認証機能と
をコンピュータに実行させるネットワーク接続制御プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【公開番号】特開2009−272771(P2009−272771A)
【公開日】平成21年11月19日(2009.11.19)
【国際特許分類】
【出願番号】特願2008−119959(P2008−119959)
【出願日】平成20年5月1日(2008.5.1)
【出願人】(508132481)株式会社スプリングソフト (6)
【Fターム(参考)】
【公開日】平成21年11月19日(2009.11.19)
【国際特許分類】
【出願日】平成20年5月1日(2008.5.1)
【出願人】(508132481)株式会社スプリングソフト (6)
【Fターム(参考)】
[ Back to top ]