你真的需要活動目錄嗎?

 一、活動目錄的功能

活動目錄是微軟爲解決分佈式windows網絡集中化管理應用的一項關鍵產品,它的核心思想和協議源自於早期NOVELL的類似技術。今天的活動目錄總結起來功能無外乎於以下三項:
1、集中化的身份驗證
利用AD數據庫,將分散在windows客戶機上的用戶管理體系集中到DC上,實現一個用戶在任何節點的漫遊能力。同時微軟的其他產品也不同程度的可以與這個集中化的身份認證體系集成,譬如Exchange,ISA,SMS,甚至Office等等。除此以外,由於開放的LDAP協議,使得第三方產品也可以集成到這個統一的身份驗證體系中來。
2、集中化的資源檢索
由於AD具有影射網絡共享資源,集成DFS等能力,再加上統一的身份認證,使得將分散在網絡上的資源集中檢索和權限控制變得可能。從理論上說,管理員可以利用AD的這一特性,建立一個完全分佈式的文件存儲系統,將專用的文件服務器,網絡存儲系統,客戶機上的分散存儲集中起來管理和應用。
3、集中化的權限與策略控制
由於身份驗證的集中化,用戶的權限管理自然也可以集中化。同時更重要的是利用可分法的GPO,AD實現了將分散在Windows客戶機上的組策略集中控管的能力。衆所周知,組策略是微軟提供的利用註冊表開關和腳本控制Windows特性的有效工具,集中化的組策略實現了管理員對整個windows網絡中客戶機的批量操控。

二、活動目錄的優勢
活動目錄技術從早期的NT到如今的2008,已經發展出一個相當龐大的技術構架。從單一的水平域管理,擴展到可以通過站點和森林擴展出龐大的域結構。達到了微軟所希望的解決方案服務一個跨國機構的目標。同時,與其他廠商的類似產品相比,活動目錄與微軟產品的深度集成也從側面延伸了活動目錄的功能。譬如Exchange Server構建在AD之上,得到一個集成的郵件解決方案、ISA Server構建在AD之上,得到一個集成的防火牆解決方案、Office和Sharepoint構建在AD之上,得到一個企業內部集中化辦公解決方案、乃至SQLserver數據庫、SMS、RRAS、CA、RADIUS、iis、Cluster、WSUS甚至最簡單的DHCP Server,都可以與AD集成,實現“集中化”的管控。不但如此、他們其中的一些甚至是必須與AD集成纔可以使用。基於AD的微軟產品構架,從理論上來說可以解決企業IT環境中絕大部分需求和問題。

 


三、中國企業爲什麼部署活動目錄?
windows產品的廣泛使用,使得幾乎每一個企業都擁有或大或小的Windows網絡環境,同時市場的需要也培養出了一大批熟悉微軟產品的SA,微軟還爲他們頒發MCSE和MVP證書。各種各樣的技術文章和培訓教材也充滿了網絡、在各個社區中很容易找到關於活動目錄的討論和技術文章。這使得很多企業的IT管理人員在面臨一些實際需求時,首先想到的就是活動目錄,大量的企業部署了活動目錄。甚至於很多SE認爲活動目錄就是一個完美的IT管理解決方案。
那麼,中國的企業究竟爲什麼部署活動目錄呢?筆者在很多社區和討論羣中與第一線的SA們進行過深入討論,總結爲以下幾種:

1、爲了EMAIL
企業需要一個郵件服務器、於是SA想到了微軟的Exhange Server。爲了實現Exchange Server,所以必須部署AD。
2、爲了集中化驗證和文件權限控制
企業需要員工能在任何一臺計算機上工作,希望他們有自己的網絡帳號,同時企業的文件服務器也需要這樣的帳號來區分訪問者,爲不同部門和不同的員工部署不同的文件訪問權限。所以,SA部署了AD。
3、爲了集中化控制客戶機
SA發現工作中總要花很多時間去客戶機上做修改和控制,跑來跑去,工作量很大,非常不方便。於是部署AD,通過集中化的組策略,實現了從核心控制檯上對不同部門客戶機的不同策略管理。譬如限制用戶對系統某些功能的訪問和修改、統一定位內部WSUS服務器的補丁更新位置、批量分法軟件、限制軟件和網絡的使用等等。

以上三種需求,佔到了90%左右的國內中小型企業的實際情況。當然,另有10%會使用到AD的其他特性,譬如企業需要羣集,於是必須部署AD。SA希望集中控管需要部署SMS,於是必須部署AD。

四、活動目錄的問題
活動目錄的問題就在於微軟希望他能面面俱到,但實際上這是不可能的,最後導致了活動目錄的臃腫、不可靠、性能低和管理複雜。按照之前我們總結的中國中小企業需求,可以說絕大部分活動目錄的部署,可以形象比喻爲“爲了聽收音機而購買了一臺汽車,然後爲了維持這臺汽車不斷的付出時間、精力和金錢”。企業的需求就是一臺收音機,而活動目錄就是這臺汽車。
那麼活動目錄在作爲一臺收音機使用時,存在哪些問題呢?
1、對DNS的高度依賴
衆所周知,AD是構建在DNS名稱空間之上的,一個強健可靠的DNS實例是AD的基石,DNS讓AD可以管理無限龐大和複雜的網絡環境。大家知道,AD是隻能部署在WINDOWS的DNS服務之上的,他融入了很多非標準DNS的定義和記錄,而Windows的DNS是一個可靠性和負載能力低下的DNS服務器。看看Internet上,有幾個ISP會使用Windows DNS?最後的結果,是windows DNS一旦出現問題,整個AD隨即故障。例如DNS中的記錄更新失敗,多DNS區域複製失敗,或者DNS需要遷移等等事件,都會導致AD面臨極大的風險。這就是說,一棟龐大的大廈建立在了一個不牢固的地基上。
2、過於複雜的LDAP協議
AD的LDAP,雖然號稱“輕量”,實際上紛繁複雜。微軟希望將這個協議封閉起來,在整個AD的控管環境中用戶不要直接與協議打交道。但是LDAP的複雜性,導致一旦出現問題,用戶連一個基本的錯誤反饋界、調試接口和工具都沒有。所以微軟又不得不提供LDAP調試工具,放在光盤的額外安裝目錄中。即便如此,又有多少SA能精通這個怪胎協議的調試呢?
3、過於複雜的身份和權限機制
AD的集中化身份驗證體系,無疑是AD最受歡迎的功能之一。但是爲了讓它能面面俱到,微軟把它搞得過於複雜了。首先在計算機帳戶和用戶帳戶被同等看待的前提下,OU和Group卻又可以交叉容納用戶對象。實際上,AD中的Group太過複雜,爲了實現森林的擴展,AD中的Group有基本的6種類型組合,有數十個內置組,更不用說組和組之間允許權限交聯,允許交叉繼承,允許權限並集和交集。再加上AD與NTFS的集成,文件夾權限和OU權限的並行,邏輯容器和物理容器的互不關聯,活動目錄的帳戶與本地客戶機帳戶並存。這真的是我見過最複雜的一套機制了,雖然這樣複雜的機制讓AD足夠靈活,但是事實上絕大部分的用戶不需要這麼複雜的機制,敢問有多少百分比的SA完全搞清了AD中這套機制?絕大部分的人也僅僅是從MCSE的簡單教材中瞭解了初步的概念而已。
4、雞肋般的組策略
組策略集中管理也是AD最受歡迎的功能之一,利用組策略,微軟希望用戶能集中控管龐大的客戶機羣,但是組策略的工作機制,決定了他在複雜多變的生產環境中註定成爲一塊雞肋。首先、組策略90%的功能是通過修改客戶機註冊表來實現的,還有少部分是通過運行腳本來實現的,這樣的工作機制導致了組策略的實時性很糟糕,抗干擾能力也很糟糕,很容易被客戶機上的一些安全軟件干擾,更糟糕的是策略部署後是完全無反饋的,管理員不知道一個策略是不是真的在每個計算機上生效了,一旦出現問題,只能用類似於GPRESULT一類的簡陋工具,去客戶機上實地分析。除此以外,組策略中的很多功能也有嚴重的設計缺陷。軟件分發,,可能用來分發微軟的某個小工具尚可,莫非你想用它真正去分發應用軟件?筆者映像最深的一個客戶,爲了用組策略阻止客戶運行QQ.exe,他設定了20條哈希規則,因爲他找到了20個EXE版本不同的QQ,他們的哈希值都是不一樣的,更不用說那些他還沒找到的版本。
5、全封閉的數據庫
在MCSE的官方資料中,經常會提到“活動目錄數據庫”,經常提到“SYSVOL”。SA們多少都知道他們是AD的數據中心,各種信息都存在裏面。但是糟糕的是,這個數據庫是專用的,你沒有辦法看到裏面存儲的東西,也沒有辦法像管理關係型數據庫那樣使用SQL語句去操作它。最後的結果就是,如果你想備份和還原AD,那根本就是噩夢。你想備份AD嗎?對不起,微軟是沒有專用工具的,你只能用NTBACKUP去搞定。你想只備份AD數據庫嗎?想定期增量同步數據嗎?對不起,NTBACKUP不支持,你只能把它和Windows的其他系統信息一起備份,不管這些東西是好的還是壞的。你想提高AD的可靠性嗎?MY GOD 你必須要兩臺DC!
6、動則需要其他產品
AD作爲一個微軟IT管理解決方案的平臺,始終只是一個平臺,稍微專業一點的業務,就需要與其他微軟產品集成。譬如,想對用戶的網絡訪問進行管理,對網絡數據進行篩選和審計,就必須要吧另一個大傢伙ISA請出來。要想爲客戶機批量分發補丁,修復漏洞,又得請出另一個大傢伙WSUS。如果想集中防範網絡中的病毒、惡意軟件、危險行爲,更糟糕了,因爲微軟尚無可用產品,咱必須請出賽門鐵克或者麥卡菲了。殊不知,企業中的服務器,就是這樣被一臺一臺的佔據的,這倒是便宜了靠賣IT設施吃飯的集成商。更糟糕的是,SA們不得不維護越來越多的系統,不斷的讀一本一本的專業書籍,在論壇上發一個又一個求助的帖子,然而這還僅僅是IT環境的基礎運營而已,企業的生產系統還沒計算在內。

五、找出更傻瓜和簡單的解決方案
AD是強大的、但是你真的需要他嗎?
人的能動性是無限的,您也許已經在微軟的技術世界裏摸爬滾打多年,但是您考察過自己企業的真實需求嗎?
您是不是“買汽車的那個人”?

文章到這裏,您也許想問筆者,有什麼樣的代替方案?
事實上,微軟的AD做到今天,能在功能上完全覆蓋它和代替的解決方案幾乎沒有。但是如果我們縮小需求,考察中國絕大部分企業的實際需要,可能我們能找到一些更好的代替方案。

我們無外乎需要以下幾個東西:
1、一個集中化身份驗證的平臺
  代替AD中的身份和用戶數據庫
2、一個可分權管理的網絡存儲系統
  代替共享和NTFS,DFS
3、一個能進行集中控管的軟件
  代替ISA,代替WSUS,SMS等微軟產品
4、一個可編程的網絡任務執行工具
  代替組策略

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章