引言: 使用組策略,可以對系統(tǒng)進(jìn)行全面的設(shè)置和控制。但是,在使用組策略時,有時會遇到一些故障,例如配置的組策略并沒有對相關(guān)的主機和用戶發(fā)生作用,或者雖然應(yīng)用了預(yù)設(shè)的組策略,但起到的作用存在問題等。本文介紹如何診斷和排除組策略相關(guān)的故障。
在域環(huán)境中,客戶端想要應(yīng)用組策略,必須擁有對域控制器的訪問權(quán)限。這樣,客戶端才可以檢測到相關(guān)GPO(即Group Policy Object,組 策略對象)的設(shè)置信息,通過對當(dāng)前的組策略配置進(jìn)行比對,來檢測其是否發(fā)生了變動,并據(jù)此來更新本機的組策略配置信息。從組策略應(yīng)用的過程來看,在多個環(huán)節(jié)都可能發(fā)生故障,導(dǎo)致組策略更新出現(xiàn)異常。例如,客戶機和域控之間網(wǎng)絡(luò)連接存在問題,域控制器存在問題導(dǎo)致客戶端無法訪問,域控之間數(shù)據(jù)復(fù)制出現(xiàn)問題,身份驗證以及DNS解析錯誤等,都會引發(fā)組策略無法正常更新的情況。
因此,在排查問題之前,必須先解決和組策略無關(guān)的網(wǎng)絡(luò)問題。例如可以使用Ping命令,檢測網(wǎng)絡(luò)連通性。運行Windows資源包中的“netdiag.exe”命令,來檢測和診斷網(wǎng)絡(luò)連接故障。利用“nslookup”命令,來檢測DNS服務(wù)是否正常運行。使用“DcDiag”命令,通過各種診斷測試對域控制器進(jìn)行全面診斷,分析當(dāng)前林或域中域控制器狀態(tài),通過查看檢測報告,來尋找問題所在,便于管理員排除故障恢復(fù)域控正常功能。通過運行“eventvwr.msc”程序,在事件檢查器中查看相關(guān)日志信息,來發(fā)現(xiàn)和組策略故障相關(guān)的記錄信息,縮小排查范圍,確定問題的根源。
僅就組策略故障排除本身而言,有一些相關(guān)的工具可以使用。例如使用“RSOP”、“GPResult”命令,可以查看組策略結(jié)果集。執(zhí)行“mmc”命令,在控制臺中點擊菜單“文件→添加或刪除管理單元”項,選擇“策略的結(jié)果集”項,點擊“添加”按鈕,將其添加到控制臺列表中。在“策略的結(jié)果集”項的右鍵菜單上點擊“生成RsoP數(shù)據(jù)”項,在向?qū)Ы缑嬷羞x擇“記錄模式”項,可以復(fù)查應(yīng)用到一個特定計算機和用戶的策略設(shè)置。選擇“計劃模式”項,可以通過使用來自Active Directory服務(wù)的數(shù)據(jù)來模擬一個策略實現(xiàn)。這里選擇前者,在下一步窗口中選擇“這臺計算機”項,點擊“下一步”,選擇當(dāng)前用戶或者指定的賬戶,來顯示策略設(shè)置信息。點擊“下一步”,完成策略結(jié)果集的統(tǒng)計操作。之后,在組策略結(jié)果集中,就可以以圖形界面查看變動信息。
當(dāng)然,在CMD窗口中執(zhí)行“gpresult /R”命令,可以以命令行方式查看當(dāng)前用戶的組策略結(jié)果集信息。執(zhí)行“gpresult /USER usename/V”命令,可以查看指定賬戶的組策略結(jié)果集。
使用“Gpotool”命令,可以檢測組策略對象的穩(wěn)定性,并且可以組策略的復(fù)制進(jìn)行監(jiān)控,可以遍歷所有的域控制器,檢測組策略容器和組策略模板之間是否一致。先安裝Windows資源包,運行其中的“gptool”工具,會顯示所有GPO的GUID參數(shù)、名稱、狀態(tài)等。在對應(yīng)GPO的“Policy”欄中顯示“OK”字樣,說明狀態(tài)正常,否則就說明存在問題。使用“gpupdate”命令,可以強制更新組策略。
因為在默認(rèn)情況下,要激活針對賬戶的組策略更新,需要執(zhí)行注銷操作。要激活針對計算機的組策略更新,需要執(zhí)行重啟銷操作。利用該命令,可以強制立即更新。使用“Dcgpofix”命令,可以將默認(rèn)的組策略對象還原到初始安裝后的原始狀態(tài),即對默認(rèn)組策略進(jìn)行還原處理。利用“GPLogView”工具,可以查看GPO的日志信息。該命令出現(xiàn)在Windows Server 2008之后的系統(tǒng)中,可以查看和組策略相關(guān)的事件和操作日志信息,并且可以將其導(dǎo)出為獨立的文件。利用組策略管理腳本GPMC,可以快速高效地執(zhí)行各種故障排除操作。
在默認(rèn)情況下,域的根節(jié)點和OU之間,不同OU之間會形成層級結(jié)構(gòu),因為不同的GPO可以連接到根節(jié)點或者不同的OU中,因此GPO也會形成層級結(jié)構(gòu)。因此,在上一級的容器中鏈接了某個GPO對象,那么下一級容器也會繼承該GPO對象。
如果因為配置不當(dāng),在下一級的容器上阻止了GPO對象的繼承,必然會造成該容器中的用戶或者計算機無法應(yīng)用該GPO對象。在域控上打開組策略管理器,如果發(fā)現(xiàn)某個容器上帶有藍(lán)色嘆號標(biāo)記,說明在該容器上設(shè)置了阻止繼承功能。在客戶端執(zhí)行“gpresult -R”命令,在返回信息中的“下列組策略對象被篩選排除,因此沒有應(yīng)用”欄中也會顯示被阻止繼承的GPO對象。在該容器的右鍵菜單上取消“阻止繼承”項,就可以讓客戶端順利的應(yīng)用該容器的上級策略。對于一些重要的GPO對象,可以在其右鍵菜單上選擇“強制”項,禁止下一級容器對其進(jìn)行阻止繼承操作。
利用組策略的篩選功能,只允許目標(biāo)OU中的指定用戶或計算機可以應(yīng)用特定的GPO對象,即確定哪些用戶或計算機可以接收到相關(guān)的組策略設(shè)置信息。組策略的篩選包括安全篩選和WMI篩選,因為篩選針對的是具體的GPO進(jìn)行的,對于安全篩選來說,可以將指定的用戶或者組添加進(jìn)來。如果配置不當(dāng)?shù)脑?,就會造成某些組中的用戶被排除在篩選范圍之外,這些用戶自然無法應(yīng)用該GPO的配置信息。
所以,在排查問題時,應(yīng)該檢測是否將正常的用戶和計算機加入到篩選范圍內(nèi),便于其順利更新組策略。如果某個GPO連接到預(yù)設(shè)的WMI篩選器上,可以對客戶端的軟硬件以及配置信息進(jìn)行篩選,只有符合條件的客戶端,才可以應(yīng)用該GPO對象。如果WMI篩選器設(shè)置有問題,就會造成某些客戶端正確更新組策略的問題。因為組策略篩選設(shè)置不當(dāng),往往會造成同一個OU中的不同用戶和計算機會接收到不同的組策略配置參數(shù)。只要在篩選配置中檢測,自然可以找到問題所在。排除方法很簡單,將合法的用戶或計算機添加到篩選列表中即可。
組策略對象實際上由組策略模版(GPT)和組策略(GPC)容器組成,其中組策略容器存放在活動目錄數(shù)據(jù)庫中,組策略模板是存放在“SYSVOL”目錄中的。在不同站點中存在多臺域控,彼此之間必然會自動復(fù)制數(shù)據(jù),針對GPT和GPC,復(fù)制的機制是不同的。對于前者采用的是文件復(fù)制模式,對于后者采用的是AD DS模式模式。因為復(fù)制方式不同,就有可能造成在某個時間段內(nèi),不同域控之間的組策略版本不一致的問題。如果在該時間段內(nèi),客戶端執(zhí)行組策略更新操作,就會造成得不到最新組策略設(shè)置的情況。如果客戶端使用的是慢速連接,就很容易出現(xiàn)該問題。運行“GPOTool”這一工具,可以檢查所有域控之間策略是否達(dá)到了一致性。
如果組策略沒有按照預(yù)設(shè)的周期執(zhí)行刷新,就需要檢查是否在檢查用戶的計算機的刷新時間間隔內(nèi)調(diào)整了組策略,這樣達(dá)到刷新時間點后,客戶端就會自動執(zhí)行刷新操作。讓客戶端用戶先注銷再登錄,或者重啟計算機,來應(yīng)用組策略更新操作。檢查是否存在緩存的憑據(jù),因為其可能延遲組策略更新的效果。檢測環(huán)回策略是否啟用,防止其阻止組策略按照預(yù)設(shè)周期刷新。使用“gpupdate/force”命令,可以強制執(zhí)行組策略的刷新操作。
在具體排斥組策略故障時,是很講究順序的。首選在組策略結(jié)果集中進(jìn)行檢查,查看相應(yīng)的GPO對象是否列為應(yīng)用目標(biāo)。如果是的話,接著查看設(shè)置是否被列出,如果是的話,可以接著針對GPO繼承、復(fù)制、組策略刷新、異步處理、客戶端擴展以及回環(huán)處理等方面進(jìn)行排查。如果否的話,可以針對復(fù)制、組策略刷新、操作系統(tǒng)是否支持、慢速鏈接等方面進(jìn)行排查。如果相應(yīng)的GPO對象沒有被列為應(yīng)用目標(biāo),可以查看在結(jié)果集中其是否出現(xiàn)在拒絕列表中,如果是的話,可以針對安全篩選,是否禁用該GPO,不可訪問的數(shù)據(jù),該GPO是否為空,預(yù)設(shè)的WMI篩選器是否有誤等方面進(jìn)行排查。
如果沒有出現(xiàn)在拒絕列表中,可以針對管理范圍、復(fù)制問題、組策略刷新、網(wǎng)絡(luò)連接是否順暢等方面進(jìn)行排查。當(dāng)在客戶端配置組策略時,必須得到不同的客戶端擴展程序的支持。例如,對于不同的組策略設(shè)置項目(例如軟件、安全設(shè)置、管理模版等)來說,對應(yīng)的是不同的客戶端擴展程序。如果某些客戶端擴展程序沒有被啟用,自然無法執(zhí)行對應(yīng)組策略的配置操作。如果檢測到客戶端使用的是慢速鏈路(默認(rèn)低于500Kbps),某些客戶端擴展程序就不會進(jìn)行處理。例如對于通過組策略部署軟件來說,因為傳送的安裝包體積很大,慢速鏈路顯然無法應(yīng)對,和軟件安裝相關(guān)的客戶端擴展程序就不會正常運作。對于安全設(shè)置模板來說,不管是慢速連接還是快速鏈接,與之對應(yīng)的客戶端擴展程序則總是處于應(yīng)用狀態(tài),無法將其關(guān)閉。