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

在Linux上建立LDAP服務器

  在Linux上建立LDAP服務器(一) 作者:Carla Schroder;顧恺翻譯 發文時間:2003.12.30 你的網絡在規模和復雜性方面正處於成長期。一路傳播每件事物、發展壯大每件事物然後再丟棄每件事物將占用了它一生的時間。當你痛苦的雙手抱頭,試圖弄清楚的時候,你的用戶不知道從哪裡發現了你的秘密電話號碼,他用無窮無盡的問題和要求來糾纏你——這就是我發現它的地方;我並不想記住一打不同的密碼;沒有工作應該是這樣子的。 目錄 LDAP能做什麼 LDAP不能做什麼 到數據庫或者不到數據庫 根和層 易於升級 ACIs的和ACLs 用戶認證 一塊卓越的奶酪 預告 幾種可能的方案中,考慮兩個:1)找到一個新的隱藏地點或者 2) 實現一個LDAP 服務器。盡管找到一個新的隱藏點聽起來很理想,他也只是一個我們留給以後的文章的主題。這個系列將會闡釋LDAP好在哪裡,如何建立LDAP服務器的細節,以及你能用他做什麼。 LDAP能做什麼 簡要地說,LDAP提供了訪問、認證和授權的集中管理。他是很容易自定義的並且能夠: ·用戶和用戶組管理集中化 ·信息存儲集中化 ·設置安全和訪問控制 ·安全委托讀取和修改權 ·服務於幾乎所有平台 ·有效地縮放 LDAP不能做什麼 ·成為一個負載過重的關聯或交互數據庫 ·成為一個文件系統 ·在許多范圍內跳過高層結構 LDAP協議跨平台、網絡意識強、並且基於標准。市場上現在有來自於各個投資商的各種各樣的LDAP實現。本系列將主要討論Linux 上的OpenLDAP 。 到數據庫或者不到數據庫 現在我們來當一回書生(請戴上你的討厭胡須和書生用的袖珍保護套)。LDAP——輕型目錄訪問協議——是一個協議,不是一個數據庫。它可訪問一種特殊類型的數據庫,這種數據庫為了快速閱讀而最優化。使用LDAP可得到相關的靜態信息,如公司目錄、用戶數據、消費者數據、密碼和安全鑰匙。 OpenLDAP使用了Sleepycat Berkeley DB。說了這麼多,我可不是一個老夫子,我只是很滿意調用它來運轉數據庫並且對它所作的工作很滿意。 LDAP 不是一個好的選擇,盡管有時你需要快速而頻繁的修改——例如為了零售後台。它不是一個關聯數據庫如Oracle、 mysql 或者 Postgres。實際上,它的結構與關聯數據庫有著天壤之別。與其將信息存儲在行列中,並且設置一組固定的索引和字段,還不如將數據儲存在屬性類型/屬性值對中。這種結構為設計記錄提供了巨大的靈活性。例如:一份特殊的用戶記錄不必重新設計整個數據庫就可以添加一種新的類型。任何類型的文本或者二進制數據都可以儲存。 根和層 LDAP目錄遵循熟悉的Unix文件系統結構——樹的頂部有根目錄,由根目錄分支成許多子目錄。典型設計就是一個公司只有一個主要的根目錄。然後根據部門、位置、功能,雇員的好壞等等對你來說有用和有意義的任何事物來組織子目錄。這不但是組織主目錄的一個很好的整理方法,它還允許你使用一種精確的、受約束的方式授予對中心數據池的特殊部分的訪問權。 下一步就是采用一種明智的方式分布比特。任何單獨的子目錄都可復制到其他地方——例如復制到它從屬的部門所在的服務器。在任何你喜歡的時間間隔內,對主目錄的更新可同步進行,它為用戶提供冗余和更快訪問,而且使得主服務器上的緊張程度降低。 更新可以根據指示開始進行——或者,如果你需要一個使用術語的理由,那就用"push" 或者 "pull."吧。例如:財政部可先更新他們的目錄,然後將更新推進到主服務器上——再次,節省了管理部門許多單調的而且不必要的勞動。它還保存了帶寬和系統資源。 易於升級 關於LDAP的分布式特征真正靈活的是你可以從小的開始。你可以采用一種限制性的方式來實現一個LDAP目錄,對他進行測試和懸掛,然後在空閒時間內輕而易舉地將它放大並遷移更多的功能把它上面。 ACIs的和ACLs LDAP 訪問控制范例(ACIs),共同形成了一個訪問控制清單 (ACL),它允許非常細粒度的控制。下面是幾個簡單例子: ·用戶可以修改他們自己的個人信息——例如家庭住址、電話擴充、工作email等等——但是其他人不可以。 ·某個特殊用戶的所有信息可保存在單獨的記錄中,但是對單項的訪問完全是可以配置的。 ·給與經理確切級別的閱讀權和對於他們小組的讀/寫權利。它滿足的一個特殊需要就是給與經理充分的訪問權,以監督項目文件和報告,但是不給錢。 ·允許小組或者小組領導判斷哪個人可以得到哪種他們控制下的資源訪問權。我絕對不喜歡被次要的瑣事如共享文檔和項目目錄所糾纏,放權給群眾好了。 ·將密碼和用戶名以及其他敏感數據置於勤奮的系統管理員的嚴格控制之下。


用戶認證 LDAP支持SASL (簡單認證和安全層),它合並了Kerberos、GSSAPI、和 DIGEST-MD。添加LDAP用戶認證到一個現有的網絡上一點也不可怕。有幾個非常好的設備可用來遷移PADL軟件(見Resources)提供的、你現有的用戶和密碼數據。 一塊卓越的奶酪 推薦在專注的、卓越的服務器上運行OpenLDAP。在一個更小的、低要求的網絡上你可以僥幸不使用共享服務器。在文檔化的過程中,你可以看到許多對slapd和slurpd的引用。Slapd是 LDAP daemon程序,而slurpd 則處理復制。 預告 在part 2中,我們將一步步的演示安裝、服務器配置和LDAP紀錄的創建過程。Part 3將討論用戶認證和創建單一登錄。【original text】 在《在Linux上建立LDAP服務器(一)》中,我們學習了LDAP的基本概念以及LDAP的用途。今天我們將安裝和配置一個OpenLDAP目錄。 在開始之前請注意:這是LDAP 101。我們不安裝任何種類的加密或者強認證;我們將在第三部分討論這部分內容。根據我的經驗,在小型塊中學習最有效。(也許我有點笨,哈哈)所以請坐下來,系好安全帶,手別放在方向盤上。 目錄 簡單的方法 從源代碼安裝 配置slapd.conf 類型/值對 I B CN U 預告 簡單的方法 明智的系統管理員會先查看相關的文件;OpenLDAP 打包後可能會運行的很好(或者產生不可知的後果)。我只求方便——如果你的其他版本能夠提供一個容易的方法,就用它好了。RPM 也可從rpmfind.net處獲得,rpmfind.net詳細地列出了所有需要的附帶軟件包。 當然Debian運行的也很好。apt-get做這個工作也不錯;聰明的 bit能夠找到軟件包的名字。 Debian用戶希望ldap-utils;slapd,即OpenLDAP;以及libdb4.1獲得Sleepycat DB。這三個組件足夠你用的了。apt-get可帶你完成最小配置,並且自動啟動slapd,即LDAP服務器 監控程序。 從源代碼安裝 基本安裝至少需要兩個tarball: ·Berkeley Sleepycat DB ·OpenLDAP tarball Berkeley DB必須在OpenLDAP之前安裝。OpenLDAP沒有它不能建立。(如何安裝Berkeley DB請看Resources) OpenLDAP tarball 不足2兆,那就是說即使我們撥號下載,也是很輕松的。本文中使用的穩定版為openldap-stable-20030709.tgz。我喜歡將它放在 /usr/src/目錄下,並在此解包: root@windbag:/usr/src# tar xfz openldap-stable-20030709.tgz 這就創建了openldap-2.1.22 目錄: root@windbag:/usr/src# cd openldap-2.1.22 現在就有了README、INSTALL、 LICENSE、 ANNOUNCEMENT、以及COPYRIGHT 文檔。先花點時間看看這些文檔,看他們裡面有什麼重要信息。要快速查看編譯選項,請鍵入: root@windbag:/usr/src# ./configure --help 這個閱讀相當吸引人,它的默認項標記清楚,選項能夠自我說明。現在我們來看看默認項。輸入下列三個命令: # ./configure # make depend # make 每個命令輸入完都會出現許多東西;放心的等待吧。等他們都完成之後,運行簡單的內建測試腳本對他們進行校驗: # make test 如果出錯的話,我建議你放棄它,另外向你推薦OpenLDAP.org (見 Resources)。如果運行良好,最後一個步驟就是真正的安裝新創建的二進制文件和man界面。在OpenLDAP根目錄下運行: # make install 請注意'make install'的輸出;它包含許多有用信息。為了詳細閱讀,將它導入文件內: # make install tee openldap-install.txt 配置slapd.conf 這是用於我們新OpenLDAP 服務器的主要配置文件。它可以放在任何層數的虛擬目錄內——我個人喜歡在安裝軟件後運行updatedb,這樣我能迅速的找到需要的東西。在我的Libranet 系統上,它是/etc/ldap/slapd.conf。 小心保護該文件。最好備份一下。原來的文件包含有用的默認值。為了安全起見,默認許可為600(只有root用戶才能讀寫該文件)。 slapd.conf 定義了三種類型的信息:整體設置,與指定後端相關的設置,與指定數據庫相關的設置。這個bit相當重要,如果運行正確的話能夠幫你減少麻煩:後端和數據庫指令優先於整體設置,數據庫指令優先於後端指令。 空白行和注釋可以忽略。以空白開頭的行是上一行的繼續——這個小技巧可讓你浏覽時不至於毫無頭緒。 更多的空白可用於指令中:指令可以有參數,甚至多個參數。這些參數使用空白隔開。帶有空白的參數必須附上雙引號:如"loud argument." 包含雙引號或者反斜線符號的參數退出時必須使用反斜線:如 "really "loud" argument," 。 毫無疑問,在這裡簡單的安裝對於slapd.conf 中的配置是不夠的。下列東西應該足夠讓這個球滾動起來。如果你的slapd.conf沒有包括標題如"Global Directives"和"Backend Directives," 你可以添加它們。重要的是依次添加下列三個部分:整體、後端、以及數據庫。

在Global Directives下,添加日志級別的指令: loglevel 256 在Backend Directives下,添加bdb: backend bdb 在Database Directives下,添加: database bdb suffix "dc=carlasworld,dc=net" rootdn "cn=Manager,dc=carlasworld,dc=net" rootpw secret Directory "/var/lib/ldap" 我相信你能夠找到需要修改以適應系統的bit。注意:域carlasworld.net已經分裂成兩個類型/值對。這件事以後再做,以防萬一值需要修改或者值需要出現在另一個目錄下。 類型/值對 盡管LDAP 非常靈活,還是有某些類型和值已經定義了,如訪問級、數據庫後端、和調試級。這一點請參考基本的(和優秀的)"OpenLDAP 2.1 Administrator's Guide" (再次見 Resources)。 I B CN U 不錯,我們現在要指出在哪裡可以找到所有這些縮寫的意思。說不定你還可以用它們在你的朋友面前炫一把: DN =貴賓名 O = 組織 OU = 組織單元 DC = 域組件 CN = 普通名 SN = 姓名 UID =用戶ID 希望看起來像天才嗎?請看文件core.schema,它標識了所有這些縮寫(有二三十個那麼多)。 這是啟動slapd的好時機。依靠你的安裝,它已經在運行了——首先檢查ps axgrep slapd 。如果沒有運行,鍵入which slapd ,找出執行文件,然後無參數運行。安裝程序應該自動配置啟動文件,在引導時就開始運行,這樣你就不必重復了。OpenLDAP是完全自我測試的;運行<filepath>/slapd–t ,確認你的slapd.conf 沒有語法錯誤。【original text】 預告 在part3部分,我們將組裝數據庫,描述如何使用LDAP來實現單一登錄。 Resources man slapd man slapd.conf Quick-Start Guide OpenLDAP 2.1 Administrator's Guide LDAPman Schema Reference page 在《在Linux上建立LDAP服務器(二)》中,我們描述了它的安裝以及它的非常基本的配置。今天我們將使用真實數據來組裝我們的目錄,引導你毫無費力的避開一些常見誤區。 目錄 它能運行嗎? 修改slapd.conf 添加條目 .ldif的缺陷 添加用戶 模式 結論 Resources 我們先回顧一下第二部分中我們的slapd.conf 配置: ##Database Directives## database bdb suffix "dc=carlasworld,dc=net" rootdn "cn=Manager,dc=carlasworld,dc=net" rootpw secret directory "/var/lib/ldap" 我們來詳細討論配置中的每一行。 ·首先,確定用你的真實域取代"carlasworld.net" 。 ·rootdn 非常重要。這是你創建授權用戶輸入條目到數據庫的地方。這裡我稱之為管理員(Manager)。你可以隨便稱呼它:管理員、老板、ldap最高統治者——你想稱呼它什麼,就稱呼什麼。 ·rootpw 也是非常重要的。它是授權用戶的(管理員的) 密碼。現在,我們要使用明文密碼。在上述的例子中,它為"secret";但是密碼你可以隨意設定。 ·directory 是OpenLDAP存儲實際數據庫文件的地方,它在下一行。目錄在啟動slapd 之前必須存在。 "/var/lib/ldap" 是安裝者創建的一個常用目錄,盡管你的Linux版本可能已經將它放在其他地方了。你也可以創建一個你自己選擇的目錄。但是,我們的目的是要找到它,而不是只創建目錄——查看更多細節,請參考 OpenLDAP Administrator's Guide 。 目錄下已經安裝了下列文件: $ ls /var/lib/ldap __db.001 __db.003 __db.005 id2entry.bdb objectClass.bdb __db.002 __db.004 dn2id.bdb log.0000000001 它能運行嗎? 首先,檢查slapd.conf 有無語法錯誤: # slapd -t 然後,運行下列命令(不要寫錯了): $ ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts 他會返回幾行費解的代碼;看這行: dn: namingContexts: dc=carlasworld,dc=net 修改slapd.conf 只要你修改了slapd.conf,就必須重新啟動: # /etc/init.d/slapd restart 添加條目 現在我們進入有趣的部分。手動創建條目有兩個步驟。首先,創建一個.ldif 文件,然後使用命令ldapadd ,輸入新的條目到數據庫中。在.ldif 文件中——我們統統稱之為test.ldif ——定義了你公司的一些屬性: ##my company## dn: dc=carlasworld,dc=net objectclass: dcObject objectclass: organization o: Tuxcomputing, inc. dc: carlasworld dn: cn=Manager,dc=carlasworld,dc=net

objectclass: organizationalRole cn: Manager .ldif的缺陷 請確定你已經去除了首尾空白,以及空白行。盡管行結尾的尾空白可以告訴ldapadd:下一行是前一行的繼續,但是任何首空白或者尾空白都會讓ldapadd 相信這裡什麼都沒有。請使用空白行分隔條目。 下一步就是添加test.ldif 文件到ldap: # ldapadd -x -D "cn=Manager,dc=carlasworld,dc=net" -W -f test.ldif 想了解不同標記代表的含義請參考man ldapadd 。ldap 要求你輸入LDAP密碼,然後才批准添加條目。如果你不幸得到"ldap_bind: Invalid credentials (49)"錯誤,就表示你要麼給出了錯誤的"cn="條目,要麼給出了錯誤的密碼。 只有普通名(cn)和密碼在slapd.conf中都正確,才不會出現任何關於他們的任何莫名其妙的信息。 注意:我們稍候會刪除這些。(雖然創建新數據庫時需要他們,稍候我們添加更強的授權時就會替換它們。) 我們看看現在我們的數據庫看起來像什麼: # ldapsearch -x -b 'dc=carlasworld,dc=net' '(objectclass=*)' 它會顯示數據庫中的每一條。 添加用戶 好,現在讓我們使用users.ldif 文件,添加一些真正的用戶: #Tux Entry dn: cn=Tux P Tuxedo,dc=carlasworld,dc=net cn: Tux P Tuxedo cn: Tux Tuxedo objectClass: person sn: Tuxedo # ldapadd -x -D "cn=Manager,dc=carlasworld,dc=net" -W -f users.ldif Enter LDAP PassWord: adding new entry "cn=Tux P Tuxedo,dc=carlasworld,dc=net" # ldapsearch -x -b 'dc=carlasworld,dc=net' '(objectclass=*)' # extended LDIF # # LDAPv3 # base with scope sub # filter: (objectclass=*) # requesting: ALL # # carlasworld.net dn: dc=carlasworld,dc=net objectClass: top objectClass: dcObject objectClass: organization o: Tuxcomputing, Inc. # Tux P Tuxedo, carlasworld.net dn: cn=Tux P Tuxedo,dc=carlasworld,dc=net cn: Tux P Tuxedo cn: Tux Tuxedo objectClass: person sn: Tuxedo 太棒了!他真的有用,它真的有用!注意:原來的.ldif 文件內不能有條目,因為它必須只包含新條目。如果ldapadd 找到任何現有的條目,它就會停止,不推進更多的條目。 Debian 的差別 如果你使用apt-get安裝OpenLDAP,,dpkg將自動配置它,安裝root域、公司以及授權的ldap管理員和密碼。你也可以在slapd.conf中創建另外一個LDAP管理員/密碼組,就像我們前面做過的一樣,任意使用其中一個。 模式 我們容易混淆的主要地方是schema 和object classes。在slapd.conf中可以看到: # Schema and objectClass definitions include /etc/ldap/schema/core.schema include /etc/ldap/schema/cosine.schema include /etc/ldap/schema/nis.schema include /etc/ldap/schema/inetorgperson.schema 這些文件包含用在你LDAP記錄中的屬性。花點時間讀讀這些屬性。我知道這是一個痛苦的練習,但是理解模式就是理解如何使用LDAP的關鍵。 現在是時候提到一個用於LDAP的GUI 前端GQ LDAP Client。他對於觀察不同屬性之間的關系大有幫助。優秀Web站點LDAPman Schema Reference 也是你觀察時一個很有價值的工具。 結論 好,看起來好像我們還需要不止一篇LDAP文章。在part 4 中,我們將進行加密,認證真正的用戶。我們將使用一些詳細的配置范例來包裝此文(和此系列)。【original text】 Resources Building an LDAP Server on Linux, Part 1 Building an LDAP Server on Linux, Part 2 OpenLDAP Administrator's Guide GQ LDAP Client LDAPman Schema Reference page. 在《在Linux上建立LDAP服務器(三)》我們使用真實數據來組裝我們的目錄,引導你毫無費力的避開一些常見誤區。在本系列的最後一個安裝部分,我們將討論如何保護我們OpenLDAP服務器的安全。 目錄 密碼散列 加密 生成TLS證書 重寫slapd.conf 遷移用戶數據

結論 Resources 我們先回顧一下,part1 介紹了輕型目錄訪問協議,細述了協議能做什麼,不能做什麼。part2 闡述了安裝和非常基本的配置。 part3 展示了使用真實數據組裝目錄以及如何避免一些常見錯誤。 今天的安全論述先從散列你的密碼開始。 密碼散列 我們不想將rootpw 存儲在服務器上的明文內,所以我們改用散列。有幾種普遍使用的散列方法可通過slappasswd 命令來實現,包括SHA、SSHA、MD5、和CRYPT在內。CRYPT最差,不要用它。SSHA是默認方法,MD5也不錯。使用slappasswd 可以生成一個很好的散列rootpw: $ slappasswd New password: Re-enter new password: {SSHA}Lr7P++EoH6GpIS4GZ36vkV4R422RuW7R 現在復制粘貼這個很好的新散列到/etc/ldap/slapd.conf內: rootpw {SSHA}Lr7P++EoH6GpIS4GZ36vkV4R422RuW7R 這可以是一個永久設置,很適合用在小型的簡單的LAN上。 更好的解決方案就是創建一個LDAP記錄,該記錄定義了LDAP管理員,還為LDAP管理員使用slapd.conf中的ACLs (Access control lists)定義了訪問權限。請看OpenLDAP管理員的指南中的重要章節chapter on ACLs ——它是我看到的關於ACLs的最好的指南。 加密 OpenLDAP 默認采用明文在網絡上傳送信息,包括密碼和注冊在內。加密可以防止中途截取和竊聽。加密需要以下工具: OpenSSL Cyrus SASL 這些在你的系統上應該有。如果沒有,不妨先罵它兩句,然後訪問你的安裝盤或者你的版本的Web站點,找到他們。在Debian上,尋找 libssl和libsasl;在基於RPM的系統上,尋找openssl、 cyrus-sasl、和cyrus-sasl-md5。(如果你在這一點上偏執的話,那就去吧。 LDAP相當復雜,所以偏執也是一種可以接受的正常行為。) 生成TLS證書 首先我們必須生成一張服務器證書。這是一張自我生成的僅供slapd 使用的證書。如果你不需要安裝“認證機構”認證其他證書,也不需要某種信任的第三組織認證機構,如Thawte,這個方法夠用了。 在包含slapd.conf 的目錄下運行下列命令。他將會產生一個新的X509 證書,不需要密碼。他還將證書命名為slapd_cert.pem,密碼命名為slapd_key.pem,並給與它一年的使用期限: root@windbag:/etc/ldap/# openssl req -new -x509 -nodes -out slapd_cert.pem -keyout slapd_key.pem -days 365 Generating a 1024 bit RSA private key ...........++++++ ...................++++++ writing new private key to 'slapd_key.pem' 然後它會向你提出一串問題。不要怕,一一回答他的問題好了。所有這兩個文件都必須屬於ldap 用戶,該用戶在Red Hat上稱為'ldap.' (在Debian上叫做'root.')現在設定你的權限—— slapd_cert.pem 必須是全世界易懂的,slapd_key.pem 只有ldap 用戶才可以讀,不允許任何人寫入。 重寫slapd.conf 接下來我們需要告訴slapd 到哪裡找到這些文件: database bdb # The base of your directory in database #1 suffix "dc=carlasworld,dc=net" rootdn "cn=Metest,dc=carlasworld,dc=net" rootpw {SSHA}Lr7P++EoH6GpIS4GZ36vkV4R422RuW7R # Where the database file is physically stored for database #1 directory "/var/lib/ldap" #Specify ciphers TLSCipherSuite HIGH:MEDIUM:+SSLv2:+SSLv3 #TLS keyfile locations /etc/ldap/slapd_cert.pem /etc/ldap/slapd_key.pem 你知道哪種密碼采用哪種方式命名嗎?首先看看你的your OpenSSL支持什麼: $ openssl ciphers -v 他將會產生一個長長的、讓人印象深刻的列表。上面例子中使用的術語是通配符。HIGH 表示使用密碼長度超過128位(MEDIUM = 128 bits)的所有密碼。我相信我們都不想使用LOW,它只有56和64位那麼長。(參考 OpenSSL.org,以找到更多此類信息) 現在我們需要重新啟動ldap監控程序。在Red Hat上,鍵入: # /etc/init.d/ldap restart 在 Debian上鍵入: # /etc/init.d/slapd restart 遷移用戶數據 PADL軟件還提供了幾種可愛的腳本來減輕組裝LDAP目錄的瑣事。他們抽取了你現有的用戶數據,創建更好的LDAP目錄條。請在他們的站點上尋找“遷移工具”。然後,你需要編輯migrate_common.ph, 將你指定的網絡設置包括進來。 使用/etc/services 或者/etc/protocols 可能會打亂LDAP服務器,產生異常,這是毫無意義的。對於Linux來說這些異常是相當靜態的,普遍的;你不需要讓LDAP為他們所用。我們從遷移 /etc/passwd 和 /etc/group開始。我建議備份/etc/passwd和 /etc/group,然後在副本(migrate_group.pl, migrate_passwd.pl)上先運行恰當的腳本。

他將會產生.ldif文件,檢查該文件,確認他們是按你希望的方式完成。腳本使用起來輕而易舉: # migrate_passwd.pl /etc/passwd passwd.ldif 然後,采用平常的方式通過ldapadd添加.ldif文件到數據庫內: # ldapadd -x -D "cn=Manager,dc=carlasworld,dc=net" -W -f passwd.ldif 結論 OpenLDAP是一個重要的程序。他也是非常復雜的。希望本系列能夠幫助你獲得最初的速度沖擊,你現在已經有了可以運行的服務器,你可用它來進行測試或者學習。在Resources中,我列出了我能找到的最有用的資源,他們可幫助你理解最難的LDAP組件:模式、ACLs,和加密。 我還建議你尋找你的Linux版本中包括的有用文檔,因為每個版本安裝和配置OpenLDAP以及其他設備如TLS和SASL的方法大不相同。 Resources OpenSSL Cyrus SASL Building an Address Book with OpenLDAP Using OpenLDAP For Authentication; Revision 2 – This is an Excellent document that also teaches client configuration PADL Software Openldap.org



– This is an Excellent document that also teaches client configuration PADL Software Openldap.org



現在我們需要重新啟動ldap監控程序。在Red Hat上,鍵入: # /etc/init.d/ldap restart 在 Debian上鍵入: # /etc/init.d/slapd restart 遷移用戶數據 PADL軟件還提供了幾種可愛的腳本來減輕組裝LDAP目錄的瑣事。他們抽取了你現有的用戶數據,創建更好的LDAP目錄條。請在他們的站點上尋找“遷移工具”。然後,你需要編輯migrate_common.ph, 將你指定的網絡設置包括進來。 使用/etc/services 或者/etc/protocols 可能會打亂LDAP服務器,產生異常,這是毫無意義的。對於Linux來說這些異常是相當靜態的,普遍的;你不需要讓LDAP為他們所用。我們從遷移 /etc/passwd 和 /etc/group開始。我建議備份/etc/passwd和 /etc/group,然後在副本(migrate_group.pl, migrate_passwd.pl)上先運行恰當的腳本。 他將會產生.ldif文件,檢查該文件,確認他們是按你希望的方式完成。腳本使用起來輕而易舉: # migrate_passwd.pl /etc/passwd passwd.ldif 然後,采用平常的方式通過ldapadd添加.ldif文件到數據庫內: # ldapadd -x -D "cn=Manager,dc=carlasworld,dc=net" -W -f passwd.ldif 結論 OpenLDAP是一個重要的程序。他也是非常復雜的。希望本系列能夠幫助你獲得最初的速度沖擊,你現在已經有了可以運行的服務器,你可用它來進行測試或者學習。在Resources中,我列出了我能找到的最有用的資源,他們可幫助你理解最難的LDAP組件:模式、ACLs,和加密。 我還建議你尋找你的Linux版本中包括的有用文檔,因為每個版本安裝和配置OpenLDAP以及其他設備如TLS和SASL的方法大不相同。 Resources OpenSSL Cyrus SASL Building an Address Book with OpenLDAP Using OpenLDAP For Authentication; Revision 2 – This is an Excellent document that also teaches client configuration PADL Software Openldap.org



Copyright © Linux教程網 All Rights Reserved