我使用的系統是RedHat AS3,本來系統是直接帶OpenLDAP,但是大家最好不要用系統帶的那個,DN會無法幫定,到底是什麼原因,我暫時也說不明白。 (1)去http://www.openldap.org/software/download/下載最新的OpenLDAP (2)tar -zxvf openldap.tar.gz 然後cd openldap (3)./configure --disbale-db --enable-lbdm(在編譯這一步,如果不使用--disbale-db,會提示你需要Bekerl DB,發現系統已經安裝了DB。。我也不明白,為何提示你還要安裝,所以我把他禁止了。LDAP數據庫類型用lbdm) (3) make depend; make (4)make test(這步也可以不需要) (5)make install 這樣OpenLDAP就安裝完成。下面我們要配置我們的OpenLDAP! (1)首先我們要停止系統本身的OpenLDAP /etc/rc.d/init.d/ldap stop (2)然後配置/usr/local/etc/openldap/slapd.conf database bdb suffix "dc=<MY-DOMAIN>,dc=<COM>" rootdn "cn=Manager,dc=<MY-DOMAIN>,dc=<COM>" rootpw secret Directory /usr/local/var/openldap-data 為: database lbdm(數據庫類型) suffix "dc=example,dc=com" rootdn "cn=Manager,dc=example,dc=com" (設置DN) rootpw secret (設置密碼) directory /usr/local/var/openldap-data (3)啟動OpenLDAP /usr/local/libexec/slapd (4)我們使用下面這個命令測試 ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts 如果返回 dn: namingContexts: dc=example,dc=com 代表LDAP啟動正確 (5)創建LDIF文件,添加數據 dn: dc=example,dc=com objectclass: dcObject objectclass: organization o: Example Company dc: example dn: cn=Manager,dc=example,dc=com objectclass: organizationalRole cn: Manager 使用下面命令添加數據文件 ldapadd -x -D "cn=Manager,dc=example,dc=com" -W -f example.ldif (6)測試添加的數據文件是否正確 ldapsearch -x -b 'dc=example,dc=com' '(objectclass=*)' 如果有返回數據代表配置成功! 這樣你的OpenLDAP就配置成功了。 注意: 創建LDIF文件容易輸入錯誤,大家輸入的時候要注意。 大家可以到http://sourceforge.net/project/showfiles.PHP?group_id=61828&package_id=58284&release_id=204829 下載一個叫phpldapadmin的軟件,這個軟件是基於PHP,這樣LDAP就非常容易配置了。 我只有在REDHAT AS3配置LDAP的時候回出現DN無法綁定。