網(wǎng)絡(luò)專家:使用網(wǎng)絡(luò)訪問保護(NAP)實現(xiàn)DirectAccess
遠程用戶現(xiàn)在可以通過更安全的方式訪問您公司的網(wǎng)絡(luò)。DirectAccess 是 Windows 7 和 Windows Server 2008 R2 中的新功能。通過這項功能,遠程用戶無需連接到虛擬專用網(wǎng)絡(luò) (VPN),就可以安全地訪問 Intranet 資源。
此外,Windows Server 2008 R2 和 Windows 7 中還內(nèi)置了網(wǎng)絡(luò)訪問保護 (NAP) 功能。當客戶端計算機嘗試連接網(wǎng)絡(luò)或與網(wǎng)絡(luò)通信時,NAP 可監(jiān)視和評估該計算機的運行狀態(tài)。
二者結(jié)合將獲得更強大的功能。使用 NAP 實現(xiàn) DirectAccess,讓您可以指定只有符合系統(tǒng)健康要求的 DirectAccess 客戶端才能通過 Internet 訪問 Intranet 資源。
DirectAccess隧道
使用完全 Intranet 訪問或選定服務(wù)器訪問模式的 DirectAccess 客戶端將創(chuàng)建以下連接到 DirectAccess 服務(wù)器的 Internet 協(xié)議安全性 (IPsec) 隧道:
- 基礎(chǔ)結(jié)構(gòu)隧道:連接 Intranet 域名系統(tǒng) (DNS) 服務(wù)器和 Active Directory 域服務(wù) (AD DS) 域控制器。默認情況下,此隧道要求使用計算機證書和計算機帳戶 NT LAN 管理器版本 2 (NTLMv2) 憑據(jù)進行身份驗證。DirectAccess 客戶端在用戶登錄之前創(chuàng)建此隧道。
- 管理隧道:在用戶登錄之前連接到其他 Intranet 位置。Intranet 管理服務(wù)器也可以創(chuàng)建此隧道,以便遠程管理 DirectAccess 客戶端。與基礎(chǔ)結(jié)構(gòu)隧道相同,默認情況下此隧道也要求使用計算機證書和計算機帳戶 NTLMv2 憑據(jù)進行身份驗證。
- Intranet 隧道:在用戶登錄之后連接到不在基礎(chǔ)結(jié)構(gòu)和管理隧道規(guī)則的目標地址列表中的 Intranet 位置。默認情況下,此隧道要求計算機證書和用戶帳戶 Kerberos 憑據(jù)以進行身份驗證。
NAP和IPsec強制
您可以使用很多強制方法部署 NAP,以對連接或通信強制實施系統(tǒng)健康要求。IPsec 強制方法使用健康證書(在增強型密鑰用法 [EKU] 字段中包含系統(tǒng)健康身份驗證對象標識符 [OID] 的數(shù)字證書),要求對 Intranet 流量進行 IPsec 保護的 IPsec 連接安全性規(guī)則,以及使用健康證書的 IPsec 對等身份驗證。
這種組合可強制使 Intranet 上計算機之間的通信符合系統(tǒng)健康要求。不符合系統(tǒng)健康要求和缺少健康證書的計算機無法在 Intranet 上發(fā)起通信。
IPsec 強制部署需要以下內(nèi)容:
- 健康注冊機構(gòu) (HRA):一臺 Web 服務(wù)器,接收并響應(yīng) NAP 客戶端以及客戶端發(fā)出的驗證系統(tǒng)健康并獲得健康證書的請求。
- NAP 證書頒發(fā)機構(gòu) (CA):公鑰基礎(chǔ)結(jié)構(gòu) (PKI) 中的 CA(通常是專用的),負責為合規(guī)的 NAP 客戶端頒發(fā)健康證書。
- NAP 健康策略服務(wù)器:負責驗證系統(tǒng)健康請求的網(wǎng)絡(luò)策略服務(wù)器 (NPS)。
- 更新服務(wù)器:包含資源的服務(wù)器。NAP 客戶端需要這些資源來更正其不合規(guī)的系統(tǒng)健康狀態(tài)。
通過 HRA 獲得的健康證書的生命期很短,通常為數(shù)個小時。您也可以向需要健康證書以進行 IPsec 對等身份驗證但不需要執(zhí)行系統(tǒng)健康驗證的服務(wù)器頒發(fā)生命期更長的豁免健康證書。
使用NAP實現(xiàn)DirectAccess
使用 NAP 實現(xiàn) DirectAccess 是將系統(tǒng)健康合規(guī)性與 DirectAccess 連接過程相集成。當您結(jié)合使用 DirectAccess 和 NAP,以便在允許訪問 Intranet 資源之前強制實施系統(tǒng)健康要求時,實際上是利用 NAP 基礎(chǔ)結(jié)構(gòu)來頒發(fā)健康證書(HRA、NAP C、NAP 健康策略服務(wù)器)并更正系統(tǒng)健康狀態(tài)(更新服務(wù)器)。您還針對基礎(chǔ)結(jié)構(gòu)、管理和 Intranet 隧道使用 DirectAccess 連接安全性規(guī)則。
默認情況下,在 DirectAccess 客戶端和服務(wù)器上為基礎(chǔ)結(jié)構(gòu)、管理和 Intranet 隧道配置的連接安全性規(guī)則不需要在進行身份驗證時使用健康證書。是否需要修改規(guī)則集以便要求健康證書,取決于以下內(nèi)容:
- NAP 部署模式(報告或完全強制)
報告模式不要求系統(tǒng)健康合規(guī)。不合規(guī)的 DirectAccess 客戶端可以訪問 Intranet。因此,不需要更改 DirectAccess 連接安全性規(guī)則。
完全強制模式要求系統(tǒng)健康合規(guī)。在此模式中,您必須配置連接安全性規(guī)則以要求健康證書,而不是要求普通的計算機證書。
- HRA 和更新服務(wù)器的位置
您可以在 Intranet 或 Internet 上找到 HRA 和更新服務(wù)器。
下文將分別介紹 HRA 和更新服務(wù)器的這兩種位置,以及您因此需要做出的更改,以便連接安全性規(guī)則要求健康證書。
基于Intranet的HRA和更新服務(wù)器
當 HRA 和更新服務(wù)器位于 Intranet 上時,DirectAccess 客戶端必須能夠使用計算機證書(而不是健康證書)來訪問它們。健康驗證發(fā)生在創(chuàng)建基礎(chǔ)結(jié)構(gòu)和管理隧道之后。DirectAccess 客戶端需要基礎(chǔ)結(jié)構(gòu)隧道來訪問 Intranet DNS 服務(wù)器以解析 Intranet 名稱,并需要管理隧道來訪問 HRA 和更新服務(wù)器。
圖 1 當 HRA 和更新服務(wù)器位于 Intranet 上時,使用 NAP 實現(xiàn)的 DirectAccess。
但是,對于完全強制模式,DirectAccess 客戶端需要健康證書才能訪問其他 Intranet 資源。因此,健康證書要求只適用于 Intranet 隧道的連接安全性規(guī)則。
配置步驟
當 HRA 和更新服務(wù)器位于 Intranet 上時,若要配置使用 NAP 的 DirectAccess,您需要:
- 向管理服務(wù)器列表中添加 HRA 和更新服務(wù)器的 IPv6 地址。您可以使用 DirectAccess 安裝向?qū)е械牡谌交蚴褂?Netsh.exe 命令來完成添加。
- 使用 Netsh.exe 命令在 DirectAccess 服務(wù)器組策略對象 (GPO) 中配置 Intranet 隧道規(guī)則以要求健康證書。
有關(guān)詳細步驟,請參見為 NAP 配置 DirectAccess 連接安全性規(guī)則。
您使用 Netsh.exe 自定義 DirectAccess 連接安全性規(guī)則時,所做的更改將在您下次應(yīng)用 DirectAccess 安裝向?qū)У脑O(shè)置時被覆蓋。若要確保保留這些自定義設(shè)置,您要么放棄使用 DirectAccess 安裝向?qū)砀呐渲茫丛谀_本中編譯自定義更改列表,然后在每次應(yīng)用 DirectAccess 安裝向?qū)У脑O(shè)置時運行該腳本。
工作原理
以下過程描述了當 HRA 和更新服務(wù)器只位于 Intranet 上時,使用 NAP 的 DirectAccess 如何作用于 DirectAccess 客戶端:
- 當 DirectAccess 客戶端啟動并嘗試使用其計算機帳戶登錄 AD DS 域時,它使用其計算機證書創(chuàng)建基礎(chǔ)結(jié)構(gòu)隧道。[基礎(chǔ)結(jié)構(gòu)隧道]
- 當 NAP 代理啟動時,DirectAccess 客戶端解析已配置的 HRA 統(tǒng)一資源定位器 (URL) 的完全限定域名 (FQDN),使用其計算機證書創(chuàng)建管理隧道,然后將其目前的健康狀態(tài)信息發(fā)送給 HRA。[管理隧道]
- HRA 將 DirectAccess 客戶端的健康狀態(tài)信息發(fā)送到 NAP 健康策略服務(wù)器。[Intranet 流量]
- NAP 健康策略服務(wù)器評估 DirectAccess 客戶端的健康狀態(tài)信息,確定該客戶端是否合規(guī),然后將結(jié)果發(fā)送給 HRA。[Intranet 流量]
- HRA 將健康評估結(jié)果發(fā)送給 DirectAccess 客戶端。[管理隧道]
- 假設(shè)健康狀態(tài)合規(guī),HRA 將從 NAP CA 獲取健康證書,并發(fā)送給 DirectAccess 客戶端。[管理隧道]
- 當 DirectAccess 客戶端嘗試訪問 Intranet 上的資源時,它首先使用健康證書創(chuàng)建 Intranet 隧道。[Intranet 隧道]
如果 DirectAccess 客戶端不合規(guī):
- HRA 將健康評估結(jié)果發(fā)送給 DirectAccess 客戶端,其中包括健康更正指令;但 HRA 不會獲得健康證書。[管理隧道]
- 根據(jù)已安裝的健康評估組件,DirectAccess 客戶端可能需要訪問更新服務(wù)器以更正其健康狀態(tài)。如果是這樣,DirectAccess 客戶端將向合適的更新服務(wù)器發(fā)送更新請求。[管理隧道]
- 更新服務(wù)器向 DirectAccess 客戶端提供所需的設(shè)置或更新,以便符合系統(tǒng)健康要求。[管理隧道]
- DirectAccess 客戶端將更新后的健康狀態(tài)信息發(fā)送給 HRA。[管理隧道]
- HRA 將更新后的健康狀態(tài)信息發(fā)送給 NAP 健康策略服務(wù)器。假設(shè)已進行了所有必需的更新,NAP 健康策略服務(wù)器將確定 DirectAccess 客戶端是合規(guī)的,并將結(jié)果發(fā)送給 HRA。[Intranet 流量]
- HRA 從 NAP CA 獲得健康證書。[Intranet 流量]
- HRA 將健康證書發(fā)送給 DirectAccess 客戶端。[管理隧道]
- 當 DirectAccess 客戶端嘗試訪問 Intranet 上的資源時,它將使用健康證書創(chuàng)建 Intranet 隧道。[Intranet 隧道]
HRA和更新服務(wù)器位于Internet 上
當 HRA 和更新服務(wù)器僅位于 Internet 上時,DirectAccess 客戶端始終可以訪問它們,而且系統(tǒng)健康驗證會獨立于 DirectAccess 隧道進行。
圖 2 顯示了 HRA 和更新服務(wù)器僅位于 Internet 上時的配置。有關(guān)此配置的詳細信息,請參見 2009 年 6 月的網(wǎng)絡(luò)專家專欄文章 Internet 上的 NAP。
圖 2 當 HRA 和更新服務(wù)器位于 Internet 上時,使用 NAP 實現(xiàn)的 DirectAccess。
對于完全強制模式,DirectAccess 客戶端需要先獲得健康證書,之后才能訪問除管理服務(wù)器之外的任何 Intranet 資源。管理服務(wù)器是從 Intranet 進行遠程管理和支持不合規(guī)的DirectAccess 客戶端所必需的。因此,針對基礎(chǔ)結(jié)構(gòu)、Intranet 和管理(可選)隧道的連接安全性規(guī)則都需要健康證書。
配置步驟
當 HRA 和更新服務(wù)器都位于 Internet 上時,若要配置使用 NAP 的 DirectAccess,您需要使用 Netsh.exe 命令在 DirectAccess 服務(wù)器 GPO 中更改基礎(chǔ)結(jié)構(gòu)、Intranet 和管理隧道規(guī)則以便要求健康證書。
以下命令使用 Windows Server 2008 R2 中的 DirectAccess 安裝向?qū)?GPO 和連接安全性規(guī)則配置的默認名稱:
- 在管理員級別的命令提示符下,運行 netsh –c advfirewall 命令。
- 在 netsh advfirewall 提示符下,運行以下命令:
set store gpo="DomainName\DirectAccess Policy-{ab991ef0-6fa9-4bd9-bc42-3c397e8ad300}" consec set rule "DirectAccess Policy-DaServerToDnsDC" new auth1=computercert auth1ca=CANameString auth1healthcert=yes applyauthz=yes consec set rule "DirectAccess Policy-DaServerToCorp" new auth1=computercert auth1ca=CANameString auth1healthcert=yes applyauthz=yes consec set rule "DirectAccess Policy-DaServerToMgmt" new auth1=computercert auth1ca=CANameString auth1healthcert=yes applyauthz=yes
注意:DomainName 是 AD DS 域的 FQDN。CANameString 是顯示 consec show rule name="DirectAccess Policy-DaServerToCorp" 命令時 Auth1CAName 字段的值。
只有當您已定義管理服務(wù)器且希望阻止不合規(guī)的 DirectAccess 客戶端訪問它們時,才需要運行最后一個命令。
工作原理
以下過程描述了當 HRA 和更新服務(wù)器都位于 Internet 上時,使用 NAP 的 DirectAccess 如何作用于 DirectAccess 客戶端:
- 當 DirectAccess 客戶端啟動后,將嘗試使用其計算機帳戶登錄 AD DS 域并創(chuàng)建基礎(chǔ)結(jié)構(gòu)隧道。由于 DirectAccess 客戶端沒有健康證書,因此嘗試將失敗。[Internet 流量]
- 當 NAP 代理啟動后,DirectAccess 客戶端解析 HRA URL 的 FQDN,然后將其當前的健康狀態(tài)信息發(fā)送給 Internet 上的 HRA。[Internet 流量]
- HRA 將 DirectAccess 客戶端的健康狀態(tài)信息發(fā)送給 NAP 健康策略服務(wù)器。[Intranet 流量]
- NAP 健康策略服務(wù)器評估 DirectAccess 客戶端的健康狀態(tài)信息,確定該客戶端是否合規(guī),并將結(jié)果發(fā)送給 HRA。[Intranet 流量]
- HRA 將健康評估結(jié)果發(fā)送給 DirectAccess 客戶端。[Internet 流量]
- 假設(shè)健康狀態(tài)合規(guī),HRA 將從 NAP CA 獲取健康證書,并發(fā)送給 DirectAccess 客戶端。[Internet 流量]
- 當 DirectAccess 客戶端計算機下次嘗試使用其計算機帳戶登錄 AD DS 域或解析 Intranet FQDN 時,它會首先使用健康證書創(chuàng)建基礎(chǔ)結(jié)構(gòu)隧道。[基礎(chǔ)結(jié)構(gòu)隧道]
- 當 DirectAccess 客戶端需要訪問 Intranet 上的資源時,它將首先使用健康證書創(chuàng)建 Intranet 隧道。[Intranet 隧道]
如果 DirectAccess 客戶端不合規(guī):
- HRA 將健康評估結(jié)果發(fā)送給 DirectAccess 客戶端,其中包括健康更正指令;但 HRA 不會獲得健康證書。[Internet 流量]
- 根據(jù)已安裝的健康評估組件,DirectAccess 客戶端可能需要訪問更新服務(wù)器以更正其健康狀態(tài)。如果是這樣,DirectAccess 客戶端將向合適的更新服務(wù)器發(fā)送更新請求。[Internet 流量]
- 更新服務(wù)器向 DirectAccess 客戶端提供所需的設(shè)置或更新,以便符合系統(tǒng)健康要求。[Internet 流量]
- DirectAccess 客戶端將更新后的健康狀態(tài)信息發(fā)送給 HRA。[Internet 流量]
- HRA 將更新后的健康狀態(tài)信息發(fā)送給 NAP 健康策略服務(wù)器。假設(shè)已進行了所有必需的更新,NAP 健康策略服務(wù)器將確定 DirectAccess 客戶端是合規(guī)的,并將結(jié)果發(fā)送給 HRA。[Intranet 流量]
- HRA 從 NAP CA 獲得健康證書。[Intranet 流量]
- HRA 將健康證書發(fā)送給 DirectAccess 客戶端。[Internet 流量]
- 當 DirectAccess 客戶端計算機下次嘗試使用其計算機帳戶登錄 AD DS 域或解析 Intranet FQDN 時,它會首先使用健康證書創(chuàng)建基礎(chǔ)結(jié)構(gòu)隧道。[基礎(chǔ)結(jié)構(gòu)隧道]
- 當 DirectAccess 客戶端需要訪問 Intranet 上的資源時,它將使用健康證書創(chuàng)建 Intranet 隧道。[Intranet 隧道]
本文來源:微軟TechNet中文站
【編輯推薦】