深入理解全局编录服务器GC
概述:
 在Win2003AD域環境中,除了FSMO操作主機角色外,全局編錄服務器(GC)也是有著特殊含義的域控制器。通過GC,可以提高在活動目錄中搜索對象的速度,可以加快用戶登錄驗證等。
  簡單的說,GC是森林中所有對象的只讀調整緩沖存儲器( Read Only  Cache),目錄只用于搜索。GC服務器存儲本域中所有對象的所有屬性,同時會存儲林中其它域中所有對象的部分屬性。一般來說,屬性是否存儲在GC中, 取決于該屬性在搜索中使用的頻率,由系統自動進行決定。但AD架構管理員也可以定義對象的哪些屬性保存的GC中,同時決定該屬性是否可以進行索引。
 本文擬就與GC相關的內容一一闡述,希望能起拋磚引玉作用,與有興趣的朋友一起更好的了解和熟悉全局編錄服務器。
 GC出現的原因
 GC的作用
 查看當前環境中GC服務器
 提升DC為全局編錄服務器
 驗證全局編錄服務器的提升
 驗證全局編錄服務器是否工作正常
 刪除全局編錄服務器
 使用AdsiEdit工具查看全局編錄服務器中的數據 
 一:GC出現的原因
  在Win2003活動目錄中有兩種目錄服務,分別是DNS以及LDAP,兩個目錄服務互為補充。DNS的目的比較簡單,用于簡單快速的定位域控制器,但定 位到具體的域控制器后,對活動目錄信息的更細致訪問,如活動目錄中關于用戶,計算機,打印機等對象信息搜索,DNS就無能為力。此時就需要通過LDAP服 務來訪問。
  如果用戶知道某個對象處于哪個域,也知道對象的標識名,那么用LDAP搜索對象就非常容易。但如果用戶只知道某個對象的某個屬性,根本不知道對象所處的 域,也不知道該對象的標識名,那么使用LDAP來搜索對象是一件非常困難的事,AD不得不對當前環境中每一個域的每個對象都搜索一遍。為了解決這個問題, 活動目錄提供了全局編錄服務器(GC,到Global  Catalog)。GC中包含了當前林中每個域中所有對象的副本,如果在一次LDAP搜索中,涉及到搜索中多個域的名稱上下文時,AD會選擇搜索GC服務 器,從而實現加快搜索速度,減少網絡通信量的目的。  二:GC的作用
 1:存儲對象信息副本,提高搜索性能
 全局編錄服務器中除了保存本域中所有對象的所有屬性外,還保存林中其它域所有對象的部分屬性,這樣就允許用戶通過全局編錄信息搜索林中所有域中對象的信息,而不用考慮數據存儲的位置。通過GC執行林中搜索時可獲得最大的速度并產生最小的網絡通信量。
 2:存儲通用組成員身份信息,幫助用戶構建訪問令牌
 全局組成員身份存儲在每個域中,但通用組成員身份只存儲在全局編錄服務器中。
   我們知道,用戶在登陸過程中需要由登錄的DC構建一個安全的訪問令牌,而要構建成功一個安全的訪問令牌由三方面信息組成:用戶SID,組SID,權力。其 中用戶SID和用戶權力可以由登錄DC獲得,但對于獲取組SID信息時,需要確定該用戶屬不屬于通用組,而通用組信息只保存在GC中。所以當GC故障,負 責構建安全訪問令牌的DC就無法聯系GC來確認該用戶組的SID,也就無法構建一個安全的訪問令牌。
 注:在Win2003中,可以通過通用組緩存功能解決GC不在線無法登錄情況,具體操作本文略過。
 3:提供用戶UPN名稱登錄身份驗證。
 當執行身份驗證的域控制器沒有用戶UPN帳號信息時,將由GC解析用戶主機名稱(UPN)進行身份驗證,以完成登錄過程
 4:驗證林中其他域對象的參考
 當域控制器的某個對象的屬性包含有另一個域某個對象的參考時,將由全局編錄服務器來完成驗證。  三:查看當前環境中GC服務器
 1:通過“Active Directory 站點和服務”查看
 
 步驟:
 點擊“開始-設置-控制面板-管理工具-Active Directory站點和服務”:
 選中具體的“NTDS Setting"。      選中"NTDS Setting",右鍵選擇“屬性”     在彈出的“NTDS Setting 屬性”對話框中,有“全局編錄”復選框,如果選中,表示是一臺全局編錄服務器,如果沒有選中,則表示當前的服務器不是全局編錄服務器。     2:利用復制監視器Replmon查看
 復制監視器Replication Monitor(ReplMon)是針對Windows Server的故障查找工具,不但是定位活動目錄
 復制故障強有利的工具,同時也可以使用該工具查看和檢查操作主機角色狀態。
 詳細Replmon工具使用方法本文不做過多說明,這里只列出如何使用Replmon工具GC角色。
 步驟:選中當前DC,右鍵單擊,選擇“Show Global Catalog Servers in Enterprise”
      在彈出窗口中,清楚列出當前林中所有的全局編錄服務器     3:通過命令行方式查看全局編錄服務器
 在Supprot Tools和Resource Tools工具中,有多個命令行工具可以查看全局編錄服務器,這里只列出兩個最常見的命令行工具
 
 使用dsquery命令查看當前域中的GC
 dsquery server -domain superlan.com -isgc   
 使用nltest命令查看當前域中的GC
 nltest /dsgetdc:superlan.com    四:提升DC為全局編錄服務器
 將一臺域控制器提升為全局編錄服務器操作很簡單,方法見通過“Active Directory 站點和服務”管理單元查看全局編錄服務器,
 將“全局編錄”復選框選中即可。
 注意:設置完成后,并不代表當前的全局編錄服務器已經提升完成,因為全局編錄服務器中包含有多個域的所有對象,需要時間來進行全局編錄數據庫同步。    
 五:驗證全局編錄服務器的提升
 通過提升DC為全局編錄服務器操作,需要時間同步全局編錄服務器,同步完成后,全局編錄服務器才開始真正運行。
 下面介紹如何查看全局編錄服務器是否已經開始工作。
 1:使用LDP工具查看當前DC的IsGlobalCatalogReady屬性
 LDP(LDAP瀏覽器工具)是一個輕量目錄訪問協議 (LDAP) 客戶端實用工具,可以用來查詢和瀏覽 LDAP目錄服務,詳細用法本文不做具體介紹,
 可以搜索相關的說明文檔或后期的Blog文章介紹。這里只給出簡單的使用說明
 步驟:
 與LDAP目錄綁定
“運行”,輸入“LDP”,打開LDP窗口后,選擇“Connection|Bind",打開Bind對話框,輸入身份憑證。     單擊”OK“按鈕,LDP連接到”Superlan.Com"域控制器,顯示檢測結果,從下圖可以看出“IsGlobalCatalogReady"屬性為True   
 2:查看DNS管理工具查看GC記錄是否已更新到DNS中。
 從下圖可以看出當前哪個域控制器是GC,且使用的端口是多少,默認的GC使用端口是3268。    
 六:驗證全局編錄服務器是否工作正常
 全局編錄服務器正確提升后,可以通過查看注冊表信息和端口狀態來查看
 全局編錄服務器是否工作正常。
 1:查看注冊表信息(HKLM\System\CurrentControlSet\Services\NTDS\Parameters)
 健值:Global Catalog Promotion Complete,值為1,表示GC工作正常      2:全局服務編錄器默認使用3268/3269端口,通過查看端口是否處于監聽狀態可以判斷GC是否工作正常
 使用netstat -an命令查看當前正在運行的端口,可以看到3268/3269端口已經處于正常監聽狀態     七:刪除全局編錄服務器
 刪除全局編錄服務器方法請參見”四:提升全局編錄服務器“,將”全局編錄“復選框取消即可,此處略過。
   八:使用AdsiEdit工具查看全局編錄服務器中的數據
  因篇輻較長,擬定以獨立的文章介紹,見后續文章!
總結
以上是生活随笔為你收集整理的深入理解全局编录服务器GC的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: Reversing-x64Elf-100
- 下一篇: ISLR学习笔记(2)线性回归
