Enterprise Watch
バックナンバー

Windows Server 2008の検疫システム「NAP」を見る【第一回】

NAPとは何か?

 個人情報保護法や日本版SOX法(金融商品取引法)などの施行で注目を集めているのが、企業ネットワークや企業で利用するPCのセキュリティだ。これらの法律の施行以前からも、PCがウイルスに侵されたことがニュースとして新聞紙上をにぎわしていた。これらの原因の多くは、ウイルス感染したたった1台のPCが持ち込まれることで、中には、多くのPCにウイルスが感染してしまうような深刻なケースもあった。このため企業では強固なセキュリティポリシーを策定し、PCを使用する上でのルールを定めているところも多く見られる。

 しかし、PCやネットワークを利用する上でのいろいろなルールを決めても、社内のすべての社員が従うとは限らない。ルールで禁止されているのに、ノートPCを社内へ持ち込み、社内ネットワークに接続するようなことも、頻繁に起こっているのだ。一方で労働環境の変化により、社内ネットワークに接続するユーザーが正社員だけでなく、派遣やパートやアルバイトなどの非正規雇用が増えるなど、大きく変わってきている。このような状況で、今のITシステムには、高いセキュリティ性と使いやすさを共存させることが求められている。これを実現するためには、ルールを守るように指導するだけでなく、トラブルを未然に回避するシステムを組み込んでおく必要があるだろう。そこで今回から3回にわたって、マイクロソフトが提供する検疫システム「Network Access Protection(NAP)」を紹介していく。


企業のITシステムを内側から守るNAP

NAPの概要

NAPの機能と特徴
 Windows Server 2008には、ネットワークに接続するPCの検疫を行うシステム「NAP」が標準機能として用意されている。

 NAPを利用すれば、ネットワークに接続したPCがOSのアップデート(パッチ適用)をさぼっていないか、会社で定めたウイルス対策ソフトの定義ファイルアップデートをさぼっていないか、などを事前にチェックすることができる。また、ユーザーがPCの設定を変更して、企業で定めたルールにマッチしていない設定にしていないか(ユーザーによっては、ウイルス対策ソフトやパーソナルファイアウォールなどの動作が重いといって、動作を止めている場合がある)などをチェックする。

 NAPが便利なのは、ネットワークに接続した段階で、クライアントの状態を自動的にチェックしてくれることだ。あらかじめ決められたルールに違反しているPCは、社内ネットワークに接続させずに、仮想的に作った検疫ネットワークへ接続させ、OSのアップデートやウイルス定義ファイルのアップデートなどを行わせることができる。

 「今までのITシステムは、外部からのアタックを防止することをメインにしていました。しかし、NAPは、社内のネットワークに接続されたクライアントPCをチェックして、ルールにマッチしているクライアントPCしかアクセスできないようにします。これにより、社内ネットワークにクライアントPCが接続されたときにPCの正常性がチェックされ、社内ネットワークへの接続がコントロールされるのです」(マイクロソフト サーバープラットフォームビジネス本部 Windows Server製品部 エグゼクティブプロダクトマネージャーの森屋幸英氏)。

 またNAPは、クライアントPCが社内ネットワークへ最初に接続した時だけ、環境をチェックしているわけではない。ネットワークに接続している間ずっと、チェックを行っている。このため、もし、クライアントPCを使用している間に設定が変更された時は、NAPが自動的に変更を検知してくれる。

 こうした、ルールに違反するPCを検知した場合、NAPはさまざまな設定を行うことができる。例えば、設定が変更されただけで、社内ネットワークに接続できないようにして、自動的に検疫ネットワークに隔離することもできる。また設定によっては、注意だけを表示して、そのまま社内ネットワークにアクセスさせ続けることも可能だ。このように、自由度の高い設定が行える。また、NAPで使用するルールは、NAPを管理する管理者が自由に設定できるようになっている。

 このような機能を提供してくれるNAPを利用することで、企業ネットワークの健全性と、企業で利用するPCの健全性を高く保つことができるのである。


NAPの動作環境は?

NAPは、このように動作する。ネットワークに接続するとクライアントPCから、現在の状態をポリシーサーバーに送り、ネットワーク接続の可否が判断される。ネットワークに接続できないことになると、修復サーバーだけにアクセスできるようになる

NAPの実施オプション(実施メカニズム、強制ポイントなどともいわれる)
 NAPを利用するためには、ポリシーを管理するサーバーとしてWindows Server 2008が必要になるほか、クライアントOS側の対応も必要。対応クライアントOSとしては、Windows Vista/XP SP3の両OSに限られている。ただし、NAPはAPIが公開されていたり、他社が提供しているネットワーク検疫ソリューションとの連携が図られたりしているため、将来的にサードパーティベンダーからLinuxやMac OSで動作するNAPソフトが提供されれば、Windows以外のOSをNAPに参加させることも可能。事実、2007年11月にスペインのバルセロナで行われたTechEDでは、UNETsystemがLinuxやMac用のNAPクライアントの開発を表明している。

 NAPのパートナーとしては、F5 NetworksやFoundry Networksなどのネットワーク機器ベンダー、LANDesk Software、Altiris(Symantecが買収)などのクライアントPC管理ソフトを提供している企業、Kaspersky Lab、Trendmicro、Symantec、McAfeeなどのウイルス対策ソフトベンダーなどが参加。全体では、Intel、VeriSignなどを含めて102社にもおよんでいる。

 NAPは非常に柔軟性のあるシステムであり、アクセスする物理メディアとしては、有線/無線LAN、リモートアクセス(ダイヤルアップ/インターネットVPNなど)をはじめ、ITシステムに接続するほとんどすべてのネットワークメディアをサポートする。

 また、NAPが動作するためのネットワーク環境(実施オプションといわれている)としては、DHCP、VPN、IEEE 802.1X、IPsecなどの種類がサポートされている(ターミナルサービスのTSゲートウェイでもNAPは利用できる)。なおこのうちVPNは、インターネットを使って社内にアクセスするリモートアクセス時に使用するため、実際に社内のネットワークで利用するにはDHCP、IPsec、802.1Xが標準となるだろう。

 NAPにおいて、強固なネットワークを構築できるのが、802.1X対応のスイッチを導入したネットワークだ。802.1Xは、ポートごとに認証を行いアクセスをコントロールすることができる。NAPでは、この機能を利用して、ネットワーク自体でユーザー認証を行うため、DHCP方式を利用するよりも、セキュリティが高いネットワークが構築できる。


802.1Xを利用した実施オプション
 ただし、NAPで802.1X認証を利用するためには、802.1X対応のスイッチや無線LANアクセスポイントが必要になる(VLANをサポートしている必要もある)。このため、802.1X対応の機器が導入されていない社内ネットワークでは、802.1X対応の機器へ入れ替えなければならない。基本的に、すべての機器を入れ替える必要があるため、コストも膨大になる。

 もっとも、企業向けのインテリジェントスイッチ/無線LANシステムの多くは、802.1X認証とVLANをサポートしているものが多い。すでに、こういったネットワーク機器を導入している企業にとっては、追加コストがほとんどかからず、強固なNAP環境が実現できる。

 また、NAPへ賛同を示しているネットワーク機器メーカーの何社かは、バックボーンに特殊なスイッチを置くことで、足回りは通常のHUBを利用していても802.1X方式のNAPを使用できるようにしている(アラクサラの製品など)。このスイッチをネットワークの上流におき、下流には今までと同じHUBを利用する。アラクサラのスイッチは、クライアントPCのMACアドレスをチェックして、そのクライアントPCのトラフィックをコントロールする。これにより、すべてのスイッチを高価な802.1X対応のスイッチにしなくても、NAP環境を構築できる。


802.1Xの実施オプションを利用するときは、HUB側が802.1XとRADIUS、VLANに対応している必要がある 検疫対象外になるプリンタやサーバー、クライアントをどうするのか、きちんとポリシーを決めておく必要もある

DHCPを実施オプションにしたときのネットワーク図

DHCPを使った場合は、サブネットマスクにより検疫ネットワークとセキュアなネットワークが区別される。検疫ネットワークにアクセスしているときには、デフォルトゲートウェイの設定は行われない(勝手にインターネットにアクセスはできなくなる)
 一方で、もっとも手軽にNAPが構築できるのは、DHCP方式だろう。この際、802.1X対応のスイッチなど特別なハードウェアなどは必要なく、DHCPサーバーだけで構成できる。ただし手軽な分、セキュリティ面では、802.1X認証による検疫システムに比べると劣る。

 これは、DHCPを利用したNAPでは、セキュアゾーンと検疫ゾーンの切り分けを、DHCPサーバーから付与されるIPアドレスで行っているためだ。セキュアゾーンで利用するIPアドレスの範囲や、デフォルトゲートウェイ、サブネットマスクは、ちょっとした手段で知ることができる。これを利用すれば、検疫に引っ掛かったクライアントPCでもユーザー自身の手でIPアドレスをセットすれば、簡単にアクセスできてしまうのである。

 しかし、Windows Server 2008だけでNAPのシステムが構築できるのは、大きなメリットだろう。NAPのテスト用途や、NAP導入の初期段階として、あまりコストをかけずに構築できるので、セキュアな社内ネットワークを構築する初段階としては適している。


IPsecを利用した実施オプション ネットワーク上にある証明書機関から、クライアントPCに短期間(デフォルトは4時間)有効な証明書が発行される IPsecを実施オプションにしたときのネットワーク図

VPNを利用する実施オプション VPNを利用した時の注意点

NAPの仕組み

クライアントPCとサーバー間でのNAPの動作

NPSは、インターネット認証サービス(IAS)の後継システム。RADIUSサーバーとしての機能も有している
 NAPは、Windows Server 2008上にあるNetwork Policy Server(NPS)とクライアントPCにインストールされているNAPクライアントによって構成されている。NPSは、Windows Server 2003のインターネット認証サービス(IAS)の後継システムだ。このNPSは、RADIUSサーバーとしての機能も内蔵している。

 クライアントPCにインストールされるNAPクライアントは、システム正常性エージェント(System Health Agent:SHA)、NAPエージェント(Quarantine Agent:QA、検疫エージェントともいわれている)、NAP実施エージェント(Enforcement Client:EC)などのモジュールで構成される。

 SHAは、クライアントPCがNPSから送られてきた正常性条件を満たしているかをチェックするコンポーネントだ。Windows Vista/XP SP3には、Microsoft SHA(MS SHA、WSHAとも呼ばれる)が標準で用意されている。

 このMS SHAではセキュリティセンターのデータを使い、Windowsファイアウォールが有効になっているのか、自動更新が有効になっているのか、システムにウイルス対策ソフトまたはスパイウェア対策ソフトがインストールされているか、などをチェックする。また、ウイルス対策ソフトの正常性をより細かくチェックするためには、そのウイルス対策ソフトをリリースしているベンダーが、クライアントPC向けに自社独自のSHAを開発しておく必要がある。NAPパートナーとして参加を表明している企業などでは、Windows Server 2008リリース後の提供を予定している。


Windows Vista/XP SP3が標準で持っているSHAでは、各OSのセキュリティセンターと連動して状態をチェックする。SHVは、SHAと対になるサーバー側のモジュール

MS SHVでは、チェックボックスで簡単にセキュリティセンターの設定が行える
 一方、サーバー側でMS SHAと対になって動作するのがNPSのコンポーネントの1つであるシステム正常性検証ツール(System Health Validator:SHV)だ。Windows Server 2008のNPSには標準でMicrosoft SHV(MS SHV、WSHVとも呼ばれる)が用意されているが、サードパーティのソフトを管理するためには、SHAと同じようにサードパーティ自身で開発したSHVも必要になる。

 マイクロソフトが提供しているMS SHAは、セキュリティセンターとリンクしているため、セキュリティセンターでのアラームなどをチェックすることができる。このため、パーソナルファイアウォールのON/OFF、セキュリティセンターと連携可能な他社のウイルス対策ソフトがインストールされているかどうか、その定義ファイルが最新なのかどうか、といったことは標準のMS SHAでもチェックできる。

 次にQAは、基本的にブローカー層で、SHAによって収集された正常性の状態情報を一覧化して、ECへ渡す。このECは、事前に定義された正常性ポリシーとSHAで収集された現在のクライアントの状態データとを比較し、ネットワークアクセスを許可するかどうかをコントロールしている。ECは、NAPの実施オプションごとに用意されている。つまり、VistaやXP SP3などのNAP対応のクライアントOSには、DHCP、IPsec、VPN、EAP(Extensible Authentication Protocol、802.1Xで使用されているユーザー認証)対応のECが用意されている。

 さらに、ECに対応するサーバー側には、実施サーバー(Enforcement Server:ES)が用意されている。DHCPを利用する場合はNAP対応のDHCPサーバー、IPsecの場合は正常性登録機関(Health Registration Authority)が動作しているサーバー、VPNの場合はVPNサーバーとなる。802.1Xに関しては、802.1X対応のスイッチがその任を受け持っている。

 このようにNAP対応のクライアントPCとNPSの間では、クライアントPCがネットワークに接続した時にその正常性をチェックして、正しければネットワーク接続させることになる(前述したように、NPSの設定によって動作は選択できる)。また、正常性に問題があるようなら、ネットワーク上に仮想的に作られた検疫ネットワークに接続させて、そのネットワーク上にある修復サーバーから、クライアントPCの修復(OSのアップデートなど)を行うことになる。

 検疫ネットワークでクライアントPCの修復が行われ正常性が確認されたら、クライアントPCを社内ネットワークに再接続することになる。

 実施オプションとしてDHCPを利用した場合は、IPアドレスで社内ネットワークと検疫ネットワークという2つのゾーンに分ける。クライアントPCが正常かどうかで、付与するIPアドレスを変更することで、切り分けることになる。


NAPを利用する場合のネットワーク構成は?

TSゲートウェイにおいてNAPを利用する場合
 NAPを本格的に導入する場合、最も注意が必要なのはネットワーク構成だろう。実施オプションにどの方法を採用するのかによって、ネットワーク構成を考える必要がある。

 NAPを利用するには、Active Directory(AD)が必要になる。Windows Server 2003のADでも利用できるが、Windows Vistaで拡張されているグループポリシーなどの数を考えると、Windows Vistaと同様の拡張が行われている、Windows Server 2008上のADを利用した方が、NAPでは使いやすい。

 そのほか、各実施オプションに沿ったシステムも必要になる。DHCPを実施オプションとして使う場合は、必ずWindows Server 2008上のDHCPサーバーを使用しなければならない。このため、すでにDHCPサーバーが導入されている場合は、DHCPサーバーの切り替えが必要となる。こうなると、場合によっては大ごとだ。

 また、IPsecやVPNなどもWindows Server 2008上で動作する各機能が必要で、社内ネットワーク上に、新たに正常性登録機関サーバーもしくはVPNサーバーを設置することになる。

 802.1Xを使用する場合は、スイッチがその仕事を行うため、すでに802.1X対応スイッチが社内ネットワークに行き渡っていれば、ネットワーク構成をあまり変えずにNAPを運用できる。しかし実際には、すべてのスイッチが802.1Xに対応しているかどうかは、事前にチェックする必要があるだろう。社内の部署によっては、勝手にHUBを増設して、クライアントPCが追加されている場合もありうる。

 さらに、NPSが動作するWindows Server 2008も必要となる。DHCPサーバー、正常化登録機関サーバー、VPNサーバーと共用にすればという考え方もあるが、セキュリティを考えると共用は問題だろう。やはり、ここは別々のサーバーとして運用したほうがいい。最後に、正常でないクライアントPCが接続される修復サーバーも必要となる。NAPを運用するためには、実質、Windows Server 2008が最低でも3台必要になる。

 NAPは、TSゲートウェイからのアクセスも検疫することができる。この場合は、TSゲートウェイにNAPの設定を行うため、新たにWindows Server 2008が必要になることはない。しかし、ネットワーク全体を考えると、多数のWindows Server 2008が必要になるだろう。


NAPとほかのネットワークアクセス制御との連携

CiscoのNetwork Admission Control(NAC)とNAPの連携

Trusted Network Connect(TCG)とNAPとの連携
 NAPはあくまで、一企業であるMicrosoftが提供するネットワークアクセス制御のプラットフォームであり、NAPが世の中に唯一のネットワークアクセス制御というわけではない。大手ベンダーとしては、ネットワーク機器の大手Cisco Systems(以下、Cisco)がNetwork Admission Control(NAC)というプラットフォームを提供している。NAPは、このCisco NACと連携して動作することができる。

 Cisco NACでは、802.1XをサポートしたCiscoのスイッチやルータがポリシーの強制ポイントとなり、それを管理するサーバーとしてCisco Secure Access Control Server(ACS)が存在する。NAPのNPSは、ACSと連携して動作することができるため、相互運用が可能になる(詳細に関しては、マイクロソフトのWebサイトを参照のこと)。

 また、PCの信頼性と安全性を向上させるための標準技術策定を行っている業界団体、Trusted Computing Group(TCG)が規格を策定した「Trusted Network Connect(TNC)」とNAPとの相互運用性も実現されている。

 このようにNAPは、多くのネットワークアクセス制御との相互運用性を確保している。また、NAP自体に賛同して、NAPに対応したソフトウェア開発を行っているベンダーも数多くいる。これらのことを考えれば、Windowsネットワークにおけるネットワークアクセス制御は、NAPが本命ということができるだろう。


 さて次回は、実際にWindows Server 2008上でNAPの動作を紹介していこう。



URL
  マイクロソフト株式会社
  http://www.microsoft.com/japan/

関連記事
  ・ Windows Server 2008の検疫システム「NAP」を見る【第二回】(2008/02/29)


( 山本 雅史 )
2008/02/22 09:30

Enterprise Watch ホームページ
Copyright (c) 2008 Impress Watch Corporation, an Impress Group company. All rights reserved.