引言:在企業(yè)網(wǎng)絡(luò)核心的主站點(diǎn)中,管理人員往往對網(wǎng)絡(luò)安全性非常重視。但在分支機(jī)構(gòu)(尤其是網(wǎng)絡(luò)末梢)中,往往對網(wǎng)絡(luò)安全比較淡漠,存在這樣或者那樣的漏洞。一旦黑客對其發(fā)起攻擊,就很容易入侵得手。如果分支機(jī)構(gòu)中的DC等關(guān)鍵節(jié)點(diǎn)被黑客控制,就會針對核心站點(diǎn)的安全構(gòu)成潛在的威脅。因此,強(qiáng)化分支機(jī)構(gòu)的安全性,是不容忽視的問題。
對于規(guī)模稍大的企業(yè)來說,隨著公司業(yè)務(wù)的發(fā)展,會在各地開設(shè)分支機(jī)構(gòu)。因此其對應(yīng)的企業(yè)的網(wǎng)絡(luò)結(jié)構(gòu)也會隨著擴(kuò)展。在企業(yè)總部設(shè)置域的主站點(diǎn),在個分支機(jī)構(gòu)設(shè)置分支站點(diǎn),從而形成一個規(guī)模較大的域網(wǎng)絡(luò)環(huán)境。在企業(yè)網(wǎng)絡(luò)核心的主站點(diǎn)中,管理人員往往對網(wǎng)絡(luò)安全性非常重視,會采取各種安全措施,組建嚴(yán)密的安全防御體系來加以應(yīng)對,讓黑客無機(jī)可乘。
但是,在分支機(jī)構(gòu)(尤其是網(wǎng)絡(luò)末梢)中,往往對網(wǎng)絡(luò)安全的防范意識比較淡漠,存在著各種各樣的漏洞。一旦有不懷好意者發(fā)現(xiàn)并對其發(fā)起攻擊,就會很容易入侵得手。如果公司分支機(jī)構(gòu)中的DC等關(guān)鍵節(jié)點(diǎn)被黑客控制的話,就會針對核心站點(diǎn)的安全構(gòu)成潛在的威脅。因此,強(qiáng)化分支機(jī)構(gòu)的網(wǎng)絡(luò)安全性,保證分支機(jī)構(gòu)的網(wǎng)絡(luò)不被惡意破壞,是不容忽視的問題。
我們可以采取各種方法來提高分支機(jī)構(gòu)的安全性。例如,可以通過為分支機(jī)構(gòu)配置只讀域控制器(RODC,以下均簡稱為RODC)的方法,來有效的提高其抗風(fēng)險(xiǎn)等級。對于RODC來說,其只能在域中尋找正常的具有可讀可寫功能的DC(必須是Windows 2008及其以上版本)進(jìn)行活動目錄數(shù)據(jù)的復(fù)制,而在RODC之間是無法相互復(fù)制數(shù)據(jù)的。RODC不能承擔(dān)任何操作主機(jī)的角色,因?yàn)椴僮髦鳈C(jī)必須擁有寫權(quán)限,因而不能使用“ntdsutil”命令來為RODC創(chuàng)建完整的活動目錄數(shù)據(jù)庫快照。
除了本地的賬戶和特定的組之外,RODC在默認(rèn)的情況下是不保存賬戶密碼的,也就是說RODC并不具備身份驗(yàn)證功能。使用RDOC的主要目的在于能夠讓分支機(jī)構(gòu)的用戶用盡可能少的密碼登錄域環(huán)境,讓域中的重要用戶信息不要暴露在網(wǎng)絡(luò)末梢或者邊緣,從而盡可能多地保護(hù)網(wǎng)絡(luò)核心的安全。當(dāng)然,域管理員也可以手動將對應(yīng)的分支機(jī)構(gòu)相關(guān)的賬戶和密碼信息傳送給RODC,讓該分支機(jī)構(gòu)中的用戶可以在RODC上進(jìn)行身份驗(yàn)證。
這里使用一個簡單的例子,來說明如何使用RODC來保護(hù)網(wǎng)絡(luò)末梢的安全。例如,在某企業(yè)的網(wǎng)絡(luò)環(huán)境中,在總部所在的站點(diǎn)內(nèi)存在一臺可讀可寫的DC,其IP假設(shè)為172.10.0.10。在某外地分支機(jī)構(gòu)站點(diǎn)中存在一臺RODC,其名稱可假設(shè)為“fzdc”,IP 為 192.168.0.10。在兩臺DC安裝的都是Windows Server 2012,站點(diǎn)之間通過專用的鏈路連接,該分支機(jī)構(gòu)員工可以通過該RODC登錄到域環(huán)境中,執(zhí)行各種訪問操作。以域管理員身份登錄企業(yè)總部的DC,點(diǎn)擊“Windows+R”組合鍵,執(zhí)行“dssite.msc”程序,在Active Directory站點(diǎn)和服務(wù)窗口左側(cè)依次選 擇“Sites”、“Default”、“First”、“Site” 以 及“Name”選項(xiàng),并將其更名為“CenterDC”。 在“Sites”節(jié)點(diǎn)的右鍵菜單上依次點(diǎn)擊“新建”以及“站點(diǎn)”選項(xiàng),在新建對象窗口中輸入新站點(diǎn)的名稱(例如為“Branch”),選擇默認(rèn)的站點(diǎn)鏈接對象,然后點(diǎn)擊“確定”按鈕創(chuàng)建新站點(diǎn)。
圖1 創(chuàng)建站點(diǎn)子網(wǎng)
選 擇“Sites”、“Subnets”選項(xiàng),在其右鍵菜單上點(diǎn)擊“新建”、“子網(wǎng)”選項(xiàng),在新建對象窗口(如圖1所示)中的“前綴”欄中輸入總部DC所在的網(wǎng)段,例如 172.10.0.0/16。 在“為此前綴選擇站點(diǎn)對象”欄中選擇“Center”選項(xiàng),點(diǎn)擊“確定”按鈕,完成該子網(wǎng)的創(chuàng)建。按照同樣的方法,針對“Branch”站點(diǎn)創(chuàng)建子網(wǎng),其網(wǎng)段為192.168.0.0/16。為了便于管理,并依 次 選 擇“Sites”、“Inter”以 及“Site Transports”選 項(xiàng),在 右 側(cè) 選 擇“DEFAULTIPSITELINK”選項(xiàng),并將其更名為“CentertoBranch”。 當(dāng) 站點(diǎn)創(chuàng)建完畢后,執(zhí)行“dsa.msc”程序,在活動目錄和計(jì)算機(jī)窗口新建一個名為“RODCGL”的OU,在 該OU中創(chuàng)建名為“ROadmin”的組,在該組中添加所需的 賬 戶(例 如“rdocuser1”等)。為了便于分支機(jī)構(gòu)用戶登錄,可以創(chuàng)建名為“branchyh”的 OU,在其中創(chuàng)建一些賬戶(例如“user1”,“user2”等,但要注意這些賬戶的密碼應(yīng)當(dāng)設(shè)為永不過期),并提供給分支機(jī)構(gòu)使用。
在左側(cè)選擇“Domain Controllers”選項(xiàng),在其右鍵菜單上點(diǎn)擊“預(yù)創(chuàng)建只讀域控制器賬戶”選項(xiàng),在向?qū)Т翱谥悬c(diǎn)擊“下一步”按鈕,在指定的計(jì)算機(jī)名窗口中在“計(jì)算機(jī)名”欄中輸入目標(biāo)主機(jī)名稱。注意,該機(jī)將作為RODC來使用。當(dāng)檢測到擁有該名稱的主機(jī)添加到域中,同時其安裝的是服務(wù)器操作系統(tǒng),擁有了活動目錄域服務(wù)角色,而且執(zhí)行提升為域控操作的話,會強(qiáng)制將其設(shè)置為RODC主機(jī)。點(diǎn)擊“下一步”按鈕,對該計(jì)算機(jī)名進(jìn)行驗(yàn)證處理,檢測在域中是否存在與之同名的主機(jī)。在“請選擇一個站點(diǎn)”窗口中列出之前規(guī)劃的所有站點(diǎn),選擇“Branch”站點(diǎn),點(diǎn)擊“下一步”按鈕,在用于RODC安裝和管理的委派窗口中點(diǎn)擊“設(shè)置”按鈕,導(dǎo)入上述“ROadmin”組。其余參數(shù)均保持默認(rèn),點(diǎn)擊“完成”按鈕,完成RODC的預(yù)規(guī)劃操作。
在CMD窗口中執(zhí)行“ntdsutil” 命 令, 在“ntdsutil:”提示符下執(zhí)行“Activate Instance ntds”命令,激活活動目錄數(shù)據(jù)庫。執(zhí)行“ifm”命令,在IFM媒體創(chuàng)建提示符下執(zhí)行“create RODC f:db”命令,對活動目錄數(shù)據(jù)庫拍攝專用快照(如圖2所示),將其中盡可能少的信息導(dǎo)出為獨(dú)立的文件,并提供給RODC使用。這樣的主要目的主要就是避免讓RODC接觸到域中的重要數(shù)據(jù)。執(zhí)行“gpmc.msc”程序,在組策略窗口左側(cè)選擇域名,在“Default Domain Policy”選項(xiàng)的右鍵菜單上點(diǎn)擊“編輯”選項(xiàng),在編輯界面中依次選擇“計(jì)算 機(jī) 配 置”、“Windows設(shè)置”、“安全設(shè)置”、“本地策略”以及“安全選項(xiàng)”分支,在右側(cè)雙擊“交互式登錄:之前登錄到緩存的次數(shù)(域控制器不可用時)”選項(xiàng),在其屬性窗口中選擇“定義此策略設(shè)置”選項(xiàng),在“不要緩存登錄次數(shù)”欄將其修改為“0”。這樣,當(dāng)客戶端離開域環(huán)境后,禁止利用緩存的數(shù)據(jù)進(jìn)行登錄。也就是說每次進(jìn)行登錄時,必須尋找DC進(jìn)行身份驗(yàn)證。
圖2 為活動目錄數(shù)據(jù)庫創(chuàng)建RODC快照
將導(dǎo)出的文件傳送到上述分支的名為“fzdc”的主機(jī)上,以本地管理員身份登錄該機(jī),在服務(wù)器管理器中點(diǎn)擊“添加角色和功能”選項(xiàng),在向?qū)Т翱谥羞x擇“Active Directory域服務(wù)”角色,點(diǎn)擊“完成”按鈕,安裝該角色。安裝完成后,點(diǎn)擊“將此服務(wù)器提升為域控制器”鏈接,在部署配置向?qū)е羞x擇“將域控制器添加到現(xiàn)有域”選項(xiàng),在“域”欄中輸入“xxx.cn”,其中的“xxx.cn”表示域名。點(diǎn)擊“更改”按鈕,在Windows安全窗口中輸入“xxx.cn docuser1”賬 戶名及其密碼,點(diǎn)擊“確定”按鈕,表示使用該賬戶向現(xiàn)有域中添加DC。這里并沒有使用域管理員賬戶,而是使用了上述創(chuàng)建的普通賬戶,主要的目的還是為了突出安全性。
此刻,在總部的DC上打 開“Active Directory用戶和計(jì)算機(jī)”窗口,選擇“Domain Controllers”選項(xiàng),在右側(cè)可以顯示“fzdc”主機(jī)名,在“DC類型”列中顯示為“未占用的DC賬戶(只讀,GC)”。點(diǎn)擊“下一步”按鈕,可以選擇“使用現(xiàn)有RODC賬戶”選項(xiàng),這樣“只讀域控制器(RODC)”已經(jīng)處于自動選擇狀態(tài),并且站點(diǎn)名稱顯示為分支機(jī)構(gòu)所有,說明上述預(yù)先配置在這里發(fā)揮了作用。在“鍵入目錄服務(wù)還原模式(DSRM)密碼”欄中輸入用于恢復(fù)操作的密碼。點(diǎn)擊“下一步”按鈕,在其他選項(xiàng)窗口中選擇“從介質(zhì)安裝”選項(xiàng),點(diǎn)擊“瀏覽”按鈕,選擇上述導(dǎo)出的活動目錄數(shù)據(jù)庫快照文件。點(diǎn)擊“驗(yàn)證”按鈕,可以對其進(jìn)行校驗(yàn)。在“指定其他復(fù)制選項(xiàng)”列表中選擇“任何域控制器”選項(xiàng)。其余參數(shù)均保持默認(rèn)值,點(diǎn)擊“完成”按鈕,最終就可以將該機(jī)設(shè)置為RODC主機(jī)。
從以上操作可以看到RODC的一些安全特性。例如,在分支機(jī)構(gòu)登錄DC主機(jī)時,使用的本地的Administrator賬 戶,并沒有使用權(quán)利很高的域賬戶(例如域管理員等)。在創(chuàng)建RODC主機(jī)時,使用的只是活動目錄數(shù)據(jù)庫中的一部分?jǐn)?shù)據(jù),而且在RODC上沒有包含任何賬戶密碼(包括計(jì)算機(jī)賬戶密碼)。這樣,即使黑客通過各種方法,控制了RODC主機(jī),其也無法得到什么有價(jià)值的數(shù)據(jù),對于核心網(wǎng)絡(luò)是無法形成任何威脅的。使用Domain Users組中的賬戶就可以操作RODC,說明其操作權(quán)限是極低的。對于分支機(jī)構(gòu)的人員來說,只能使用普通域賬戶的身份來管理RODC。操作者只能從RODC上讀取與活動目錄相關(guān)的數(shù)據(jù),卻無法對其完成寫入數(shù)據(jù)的操作。
由于RODC主要承擔(dān)了身份驗(yàn)證的功能,當(dāng)分支機(jī)構(gòu)中的某臺客戶機(jī)(應(yīng)當(dāng)注意的是其DNS地址必須是指向RODC的)加入到“xxx.cn”域環(huán)境中,并以之前預(yù)先創(chuàng)建的“user1”名稱之類的賬戶登錄,然后在命令提示符窗口中執(zhí)行“set”命 令,在 其 中 的“LOGONSERVER”一欄中會顯示公司總部的DC名稱。由此可以看出,RODC只是將客戶端所提交的賬戶名等信息轉(zhuǎn)發(fā)給了總部的DC,并經(jīng)其驗(yàn)證通過之后,然后客戶端才可以進(jìn)入域環(huán)境。當(dāng)然,這樣的配置雖然可以正常運(yùn)作,不過其安全性方面依然存在著一些問題,而且RODC在此情況下其實(shí)沒有發(fā)揮什么具體的作用,例如,一旦總部和分支機(jī)構(gòu)之間的鏈路出現(xiàn)了某種問題,分支機(jī)構(gòu)的用戶就無法登錄到域環(huán)境中去了。
圖3 查看RODC密碼復(fù)制組屬性
為了充分發(fā)揮RODC的作用,應(yīng)該讓其存儲分支機(jī)構(gòu)的賬戶名和密碼等信息,承擔(dān)起針對本分支機(jī)構(gòu)的身份驗(yàn)證操作。實(shí)際上,當(dāng)用戶在登錄域環(huán)境時,會提交兩個密碼,即賬戶密碼和計(jì)算機(jī)密碼。在總部DC上打開“Active Directory用 戶和計(jì)算機(jī)”窗口,在左側(cè)選擇“Users”選項(xiàng),在右側(cè)雙擊“Allow RODC Password Replication Group”組,在其屬性窗口(如圖3所示)中的“成員”面板中點(diǎn)擊“添加”按鈕,將目標(biāo)分支機(jī)構(gòu)中的用戶添加進(jìn)來。例如添加“user1”賬戶,對應(yīng)的還需要添加其使用的計(jì)算機(jī)賬戶,方法是在選擇用戶窗口中點(diǎn)擊“對象類型”按鈕,在彈出窗口中只選擇“計(jì)算機(jī)”選項(xiàng)。在“輸入對象名來選擇”欄中輸入分支機(jī)構(gòu)中的對應(yīng)的計(jì)算機(jī)名稱(例如“User1”賬戶使用的名為“Windows 7Client1”),并將其添加進(jìn)來。
按照同樣的方法,將各賬戶及其使用的計(jì)算機(jī)全部添加進(jìn)來。在左側(cè)選擇“Domain Controllers”選項(xiàng),在右側(cè)選擇“fzdc”主機(jī)名,在其屬性窗口中的“密碼復(fù)制策略”面板中可以執(zhí)行密碼復(fù)制操作,即允許將指定的賬戶和密碼等信息復(fù)制到分支機(jī)構(gòu)的RODC中,為了保證安全,所有權(quán)限較高的用戶和組是禁止復(fù)制的。點(diǎn)擊“高級”按鈕,在打開窗口中的“結(jié)果策略”面板中點(diǎn)擊“添加”按鈕,在選擇用戶或計(jì)算機(jī)窗口中輸入對應(yīng)的賬戶名及其使用的計(jì)算機(jī)名稱,例 如“user1;Windows 7Client1”等。點(diǎn)擊“確定”按鈕,將其添加到策略列表中。并在“策略使用率”面板中點(diǎn)擊“預(yù)設(shè)密碼”按鈕,再次輸入對應(yīng)的賬戶名及其使用的計(jì)算機(jī)名稱,例如之 前 的“user1;Windows 7Client1”等。執(zhí)行“確定”操作后,就可以將指定的賬戶和密碼信息傳送給分支機(jī)構(gòu)的RODC了。
我們還可以充分發(fā)揮RODC的安全方面的功能,由于在默認(rèn)的情況下,站點(diǎn)之間的復(fù)制的時間間隔為180分鐘。為了加快復(fù)制速度,可以在“Active Directory站點(diǎn)和服務(wù)”窗口 中 依 次 選 擇“Sites”、“Branch”、“Servers”、“總 部的DC名稱”以及“NTDS Setting”選項(xiàng),在右側(cè)的“RODC Connection”選項(xiàng)的右鍵菜單上點(diǎn)擊“立即復(fù)制”選項(xiàng),就可以讓上述復(fù)制操作立即執(zhí)行。為了保證操作地順利進(jìn)行,可以執(zhí)行“services.msc”程序,并在服務(wù)管理器中重啟名為“Active Directory Domain Services”的服務(wù)。這樣,在分支機(jī)構(gòu)中的RODC上就存儲了該機(jī)構(gòu)中所有用戶以及計(jì)算機(jī)的賬戶和密碼信息。當(dāng)分支機(jī)構(gòu)中的客戶端登錄時,就可以在RODC上執(zhí)行身份驗(yàn)證操作,如果驗(yàn)證通過,該用戶就可以登錄到域環(huán)境中。而對于企業(yè)總部的網(wǎng)絡(luò)管理員來說,可以在上述在“策略使用率”的面板中的“顯示滿足下列條件的用戶和計(jì)算機(jī)”列表中選擇“已通過此只讀控制器身份驗(yàn)證的賬戶”選項(xiàng),這樣就可以在“用戶和計(jì)算機(jī)”的列表中顯示在該RODC上曾經(jīng)登錄過的所有賬戶的信息。
如果網(wǎng)絡(luò)管理員在操作過程中發(fā)現(xiàn)有較高級別賬戶的登錄痕跡,就應(yīng)該引起管理員的足夠警惕,因?yàn)檫@很有可能是黑客已經(jīng)突破了安全防線,甚至盜取了重要用戶的密碼的緣故。如果黑客通過各種手段,控制了分支機(jī)構(gòu)的RODC,為了防止其可能帶來的安全威脅,域管理員可以在Active Directory用戶和計(jì)算機(jī)窗口左側(cè)選擇“Domain Controllers”選 項(xiàng),在 右側(cè)選擇目標(biāo)分支機(jī)構(gòu)中的RODC,在其右鍵菜單上點(diǎn)擊“刪除”選項(xiàng),在彈出的警告窗口中點(diǎn)擊“確定”按鈕,在刪除域控制器窗口中選擇“重置此只讀控制器上緩存的用戶賬戶和所有密碼”和“重置此只讀域控制器上緩存的計(jì)算機(jī)賬戶的所有密碼”選項(xiàng),點(diǎn)擊“刪除”按鈕,就可以將傳送到該RODC上的所有賬戶和計(jì)算機(jī)密碼進(jìn)行隨機(jī)更改,并且使其丟失和主域控之間的信任關(guān)系。這樣,該分支機(jī)構(gòu)中的任何用戶均無法正常訪問域環(huán)境。