The NoteBook of EricKong

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            611 Posts :: 1 Stories :: 190 Comments :: 0 Trackbacks

          一. 目的 

          本文旨在介紹如何安裝OpenLDAP并且設置一個公司內部的集中化的郵件地址薄服務器供客戶端查詢。 
          基本上,OpenLDAPg還應用在其它許多方面,象集中化的用戶帳號驗證服務器,但郵件地址薄查詢是最常用的。 

          二. 安裝 

          www.openldap.org下載最新的openldap軟件包,按照編譯和安裝的步驟,依次運行:


          #tar cvfz openldap-stable-20010524.tgz 
          #cd openldap-2.0.11 
          #./configure 
          #make depend 
          #make 
          #make test 
          #make install 

          我的操作環境是redhat 6.1,如果沒有遇到任何錯誤,最后默認安裝LDAP后臺程序slapd到目錄/usr/local/libexec;配置文件在目錄/usr/local/etc/openldap/ 并且放各種OpenLDAP工具
          ldapadd,ldapdelete,ldapmodify,ldapmodrdn,ldappasswd,ldapsearch
          在目錄/usr/local/bin,運行時數據庫在/usr/local/var/openldap-ldbm 。 


          三. 設置 

          1) 更改配置文件/usr/local/etc/openldap/slapd.conf 
          在include /usr/local/etc/openldap/schema/core.schema這行后面加上下面的行包括所有的方案。 

          include /usr/local/etc/openldap/schema/corba.schema 
          include /usr/local/etc/openldap/schema/cosine.schema 
          include /usr/local/etc/openldap/schema/inetorgperson.schema 
          include /usr/local/etc/openldap/schema/java.schema 
          include /usr/local/etc/openldap/schema/krb5-kdc.schema 
          include /usr/local/etc/openldap/schema/misc.schema 
          include /usr/local/etc/openldap/schema/nadf.schema 
          include /usr/local/etc/openldap/schema/nis.schema 
          include /usr/local/etc/openldap/schema/openldap.schema 

          2) 在文件slapd.conf的"ldbm database definitions"部分更改相應的
          suffix,rootdn行如下 

          database ldbm 
          suffix "o=yourdomain,c=us" 
          rootdn "cn=root,o=yourdomain,c=us" 
          rootpw secret 
          directory /usr/local/var/openldap-ldbm 

          有各種格式你可以用,這里我用的是o=yourdomain,c=us 說明你的公司域名和所在的國家或地區rootdn的格式安裝后默認為cn=Manager,這里改為root完全是自己的喜好,這樣符合Unix/Linux中root具有最高權限的傳統。 

          3) 現在可以啟動slapd了,運行/usr/local/libexec/slapd 。 

          可以考慮把/usr/local/bin and /usr/local/libexec加到搜索路徑中,即加到/etc/profile中的PATH行: 
          PATH="$PATH:/usr/X11R6/bin:/usr/local/bin:/usr/local/libexec" 
          這樣下次登錄后只需鍵入 slapd 。 

          4) 測試ldap server是否正常工作。 
          運行下面的命令檢查是否有相應的輸出。 

          #ldapsearch -x -b 'o=yourdomain,c=us' '(objectclass=*)' 


          5) 編輯.ldif文本文件,用ldapadd添加記錄進入LDAP數據庫。 
          文件內容如下: 

          dn: o=yourdomain,c=us 
          objectclass: dcobject 
          objectclass: organization 
          o: yourdomain 
          dc: yourdomain 

          dn: cn=Jephe Wu,o=yourdomain,c=us 
          objectclass: inetorgperson 
          cn: Jephe Wu 
          sn: Wu 
          mail: jephe_wu@yourdomain.com 


          ......more users...... 

          依次類推,添加每個人的記錄進入該文件中,注意對象類型 inetorgperson 至少必須要有cn和sn,這里我們用cn,sn,mail三項定義,這對我們的郵件地址薄功能來說已經足夠。你還可以定義象mobile, homephone,pager......等等。 

          然后用下面的命令添加上面的.ldif文件進入LDAP數據庫 

          #ldapadd -x -D "cn=root,o=yourdomain,c=us" -w secret -f
          "yourldiffilename" 

          注:上面的文件的第一部分"dn: o=yourdomain,c=us"是必須的,否則不能添加數據。 
          用你的公司的域名替換上面的"yourdomain"。 

          6) 設置Outlook Express, 允許用LDAP服務器查詢郵件地址。 

          "工具/帳號/添加--目錄服務",填入你的服務器的IP地址或者主機全稱域名,在下一個屏幕中選yes以允許用目錄服務來查詢地址,最后在"目錄服務"欄中選中剛才設置的項目擊“屬性/高級",在"搜索庫"中填入 
          "o=yourdomain,c=us" 。 
          Netscape請根據上面的信息設置相應的選項。 

          四. 常見使用問題 

          1) 能啟動slapd 沒有問題,但不能添加數據庫,運行ldapadd添加時出錯 "ldap_bind:cannot contact LDAP Server" 。 
          答: 最可能的原因是在/etc/hosts中沒有127.0.0.1 localhost項目。 

          2) 注意查詢順序: 如果在Outlook Express的地址薄中有內容,則檢查地址時地址薄優 先,如果在本地地址薄中找不到相應記錄,然后再查詢LDAP服務器。 

          3) 用下面的命令確信客戶端與LDAP服務器有通訊,在服務器運行下面的命令,然后在OE中測試檢查地址,你將會得到查詢LDAP數據庫的連接過程的輸出。 

          # tcpdump port 389

          posted on 2013-10-31 09:34 Eric_jiang 閱讀(244) 評論(0)  編輯  收藏 所屬分類: LDAP

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 固原市| 剑河县| 南汇区| 广水市| 卫辉市| 万全县| 自治县| 绍兴县| 石阡县| 通渭县| 徐水县| 商河县| 马尔康县| 泊头市| 陇南市| 五指山市| 梁河县| 新兴县| 连平县| 眉山市| 新田县| 安远县| 中阳县| 阿拉尔市| 若羌县| 安宁市| 厦门市| 新闻| 荥经县| 宝应县| 镇安县| 石狮市| 儋州市| 三江| 宿松县| 通城县| 白银市| 卢龙县| 仙游县| 阿城市| 双辽市|