歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

關於目錄服務設計的幾點體會

  我是03級的學生.學習LDAP已經半年時間了.期間花了很多周折,不得不去了解活動目錄, kerberos等以前從來沒聽過的(當然LDAP也是以前從來沒聽過的).這裡把一些心得講出來.主要是請個位叔叔阿姨哥哥姐姐們指點(恐怕這裡沒有我的弟弟妹妹們吧?)現在從我的學習軌跡和走過的彎路開表達我對一個目錄服務規劃的理解. 1.重大誤解 關於LDAP的重大誤解在國內可能是起源於CERNET的幾篇學術報告.由於學術報告沒有透露實現細節,使得大家認為LDAP是作驗證的東東.於是出現了鋪天蓋地"LDAP認證"的字眼.這種誤解不僅僅是在國內.國外好像也很普遍.因為在我讀過的兩本書中的作者都花了一定的篇幅糾正這種誤解. <kerberos - the definitive guide>[Jason Garman2003]中的原文如下: A common misconception surrounding Kerberos and other authentication technologies is that they somehow replace Directories,.....,another common misconception is that directories make good authentication systems by themselves.Therefore,a distinction needs to be made between authenticaiton,authorization,and directories... <LDAP Directories EXPlained>[Brian Arkills 2003] Does LDAP Provide Security? I often talk to people who confuse LDAP as a generalized solution to security concerns.There is a perception that "LDAP" is a security buzzWord.LDAP is a directory technology,not a security technology.LDAP directories commonly use security technology,like Kerberos,to provide secure Access to the directory,and they may also be used to store security-related information sUCh as X509 certificates or authorization information.But LDAP itselft doesn't provide any security services....Don't get me wrong,in most products it is implemented relatively securely. ... 很多所謂基於LDAP實現的認證都是使用目錄來存儲加密(多數是MD5)後的密碼而已.但是這種密碼很好被暴力破解.於是你的系統的安全狀態有退回到未 shadow過的/etc/passwd時代.在介紹目錄服務的書籍中提到/etc/passwd也算是一種目錄.我們不能說一個文本文件是用來做認證的吧? 很多LDAP的實現和應用都不使用LDAP來作驗證.如微軟的活動目錄.還有斯坦福大學的目錄都使用了kerberos.配置好的Windows域控制器本身就是一個Kerberos KDC.而斯坦福的目錄也采用了Hedimal的Kerberos實現來做KDC和一個Windows 的KDC.這樣的理由很明顯的.如果要同過LDAP目錄來實現一個十分安全的認證信息的存儲要借助大量的外圍協議.還不如直接使用這些協議本身.長話短說,我們應該讓目錄存儲它改存儲的東西. 2.產品選擇 產品的選擇取決於你部署目錄服務的目的以及內容.如果活動目錄提供給你的那些的功能足夠你的需要.那麼采用活動目錄好了.因為他一開始就將安全實現的很好(操作系統安全不在討論之列).而且配置簡單.而且和客戶端(windows)兼容的較好. 如果你想在深入研究LDAP協議.或者要實現一個高度自定義的目錄.那麼選擇OpenLDAP吧! 3.安全措施. 盡量少將安全敏感的信息存儲在目錄中.如果非存不可.一定要編輯ACL嚴格的控制訪問權限如userPassword等.多數情況下目錄服務還要主要是給其他的服務提供數據存儲.這樣的話應該讓每個服務器綁定到不通的DN,同時在ACL中賦予他們較高的權限.而不能讓所有的服務都使用rootdn來綁定.


4.目錄結構的設計 雖然目錄結構的設計可以比較靈活.但比較有經驗的設計可以使你的目錄結構更加合理,而且可以給你帶來意想不到的好處.盡量參照前人實現的產品一吸收好的思想.分析微軟的設計,在目錄中建立分組的目錄樹是明智的做法.這樣每個帳戶的memberof屬性的值他所屬的組的DN,這樣就可以方便的將基於組的訪問控制列表也實現在目錄結構中.相象如果活動目錄中用戶的memberof屬性是"Aministrators"而不是"CN= Administrators,CN=Builtin,DC=example,DC=edu,DC=cn"的話會給微軟帶來多少麻煩?盡量的將更多的數據以樹的形式組織,同時在字段中使用更多的DN代替單一的數值,可以最大限度的發揮目錄服務的潛力. 以上是我對目錄服務設計的一些片面的理解,希望大家能夠多提意見.這幾天我們學校的目錄服務的架構要確定下來希望大家能夠在我犯錯之前提前改正.就此感謝.



Copyright © Linux教程網 All Rights Reserved