當今網路管理員面對的一個嚴峻的挑戰是確保連線到私有網路的計算機得到過更新,符合企業的
安全策略。這個複雜任務通常牽涉到維護計算機健康,如果計算機是家庭計算機或移動筆記本電腦(不在管理員控制的範圍之內),則強制要求在這些計算機上實現尤為困難。
比如說,攻擊者可以先攻擊一台沒有及時更新補丁的家庭計算機或公司內部的計算機,然後利用這台計算機連線到私有網路,發起攻擊。在現實工作中,管理員通常缺乏足夠的時間和資源來彌補這些漏洞。
Network Access Protection (NAP)for Windows Server 2008和Windows Vista提供了一個組件和
應用程式接口,幫組管理員確保強制的安全健康策略得以貫徹。
開發人員和
管理員可以創建一個解決方案,來檢查連線到網路的計算機,並且提供所需要的更新資源(叫健康更新資源),對於不更新的計算機限制接入。同時,NAP的強制更新功能可以和其他廠商的軟體整合,來幫助實現對接入計算機特定系統和軟體進行檢查。
其目的是為了最終實現:監視計算機訪問網路是否符合健康策略要求;自動更新計算機,使其符合健康策略要求;或者,限制不符合
安全策略要求的計算機,將其限制在受限制的網路中。
在Windows 2008的NAP環境,是一種典型的客戶機/伺服器架構,其基本結構如圖1所示。
客戶環境包括SHA(系統安全代理),QA(隔離代理)和EC(強制客戶),各個組件的作用如下:
系統安全代理(SHA)檢查和聲明客戶的健康狀態(
補丁狀態、病毒簽名、系統設定等),每一個SHA定義一個系統健康要求或一組系統健康要求。比如一個SHA定義
防病毒簽名,一個SHA指定作業系統更新等等。Windows Vista 和 Windows Server 2008 包含了一個Windows Security Health Valuator SHA。其他的軟體廠商或
微軟可以提供額外的SHA到NAP平台。
強制
客戶端運用強制執行的方法,每個NAP EC被定義為不同的
網路接入或連線類型。
修補伺服器用來安裝需要的更新和設定以及應用程式,將客戶計算機轉化為健康狀態,不符合SHA檢查要求的計算機被
路由到修補伺服器。
網路接入設備是有智力判斷賦予或拒絕客戶訪問網路的請求(
防火牆,交換機或一台伺服器)的設備。
系統健康伺服器通過定義
客戶端上的系統組件的健康要求,提供客戶端所要依從的策略。
NPS server包括QS和System Health Validator。QS sits在IAS Policy伺服器上,執行SHV檢查下來相配的動作,SHV檢查安全代理生成的聲明。
很多人會覺得Windows 2008的NAP是一個全新的東西,但實際上,上文提到的四種客戶端的強制方式,它們中的大多數都是以前某項技術的延續,了解這種技術發展的脈絡,對於我們理解NAP的強制方式有很大的幫助。
首先,我們來看一看第一種強制方式:DHCP的方式:在Windows 2000和Windows 2003的DHCP伺服器上,引入了一種分配IP位址選項(option)的方式,類(class),我們可以在伺服器上設定“用戶定義類”或“廠商定義類”,並為這些類設定獨特的Options。
當時就有很多的用戶自己嘗試著採用這個class類技術,讓企業內部的私有計算機屬於一個類,外來訪客的計算機得到的IP位址的選項將和企業內部計算機得到的地址選項不同,這樣來控制訪客計算機的行為。
而Windows 2008的基於DHCP的NAP可以看成該項技術的發展和延伸。其基本思想就是將不符合健康檢查要求的計算機歸屬於一個類,給這個類的計算機特殊的Options,用
路由器的
默認網關等選項來約束,這樣,這些計算機就被限制在特定的網路中了。
其次,第二種NAP的強制方式是採用IPSEC,這種方式算是最具有
微軟特色的NAP的解決方案了,其他廠商的類似產品,往往需要網路基礎架構的支持,比如Cisco的NAC等等,但採用IPSEC解決方案的NAP,可以完全擺脫網路基礎架構的束縛,在
主機層面上實現網路的接入保護。
其實,這種方式的NAP實際上也是傳統的Windows上的IPSEC技術延伸,在傳統的Windows IPSEC的驗證方式上,有三種方式,分別為AD、CA和
預共享密鑰。在驗證通過後,可以通過設定“
客戶端”、“伺服器”、“安全伺服器”的策略來控制計算機之間的通訊。
其中,最自由的方式毫無疑問是採用CA認證中心所頒發的證書來進行驗證,我們可以很自然的想到,只要由一個CA自動給符合健康要求的計算機辦法健康證書,就可以實現限制非健康計算機通訊的要求。
而Windows 2008基於IPSEC的NAP的基本思想就是建立在頒發健康證書的基礎上的。
基於IPSEC的強制NAP將
物理網路分割為3個
邏輯網路,一台計算機在一個時刻只能在三個邏輯網路之一之中。
安全網路 是有健康證書的計算機集合,要求接入的計算機採用IPSEC驗證,並採用健康證書。(在一個被管理網路,大多數伺服器和客戶機屬於AD域,在
安全網路中。)
邊界網路 有健康證書,但不需要接入到私有網路,進行IPSEC驗證嘗試。在
邊界網路中的計算機必須能訪問整個網路的計算機,邊界網路通常只由HCS和NAP修復伺服器。
受限網路 沒有健康證書,包含不符合NAP規範的客戶計算機的集合。
大家會很自然的,將這種對網路的邏輯劃分的方法,和傳統IPSEC的client,server,securer server三個預定策略進行對比,會發現兩者非常相似。
第三種NAP的強制方式是針對VPN接入的客戶的,不受管理的家庭計算機對
網路管理員又是一個挑戰,因為IT人員不能直接物理訪問到這些計算機。
使用NAP,當用戶使用VPN連線的時候,
管理員可以檢查需要的程式,註冊表設定,檔案,家庭計算機會被限制在受限網路中,直到健康狀態符合要求。
本質上,VPN的NAP和Windows 2003時代的隔離VPN網路很相似,Windows 2003的隔離VPN網路需要很複雜的編寫腳本,對於大多數的系統
管理員而言,實在是太麻煩了,而在Windows 2008的VPN NAP設定則要簡單多,對於管理員而言,更容易部署和實施。