ubuntu 12.04下安裝openldap,slapd.conf找不到的解決方案,openldapslapd.conf
https://help.ubuntu.com/12.04/serverguide/openldap-server.html
ubuntu安裝openldap經曆了一系列挫折,網上找了半天資料都是一模一樣,根本不能解決問題。
1.使用 apt-get install slapd ldap-utils,提示已經是最新版本 2. 在/etc/ldap目錄下看到了有ldap.conf sasl2 schema slapd.d,沒有之前熟悉的slapd.conf檔案, 原來ubuntu安裝ldap之後本來就沒有slapd.conf檔案,所以不用找了。 3. 可以使用sudo dpkg-reconfigure slapd 對ldap重新進行配置
4.對於習慣使用slapd.conf設定檔的朋友來說,沒有這個檔案很不方便,那麼,乾脆自己建立該檔案。在官方文檔的說明中指出舊風格的slapd.conf仍然是支援的, 但必須轉換為新的slapd配置格式,允許運行時改變被儲存。雖然舊的風格配置使用一個單一的檔案,通常安裝在/usr/local/etc /openldap/slapd.conf(這個是自己編譯安裝openldap後slapd.conf的路徑,如果是直接apt-get安裝,路徑是 /etc/ldpa/slapd.conf),新的風格採用了slapd後端資料庫來儲存配置。設定資料庫通常放/usr/local/etc /openldap/slapd.d目錄。從slapd.conf格式轉換成slapd.d格式時,任何包含檔案也將被整合到由此產生的設定資料庫。
直接建立slapd.conf,備份刪除slapd.d檔案夾:
sudo touch /etc/ldap/slapd.conf
sudo mv /etc/ldap/slapd.d /etc/ldap/slap.d.bak -f
編輯slapd.conf檔案,配置如下:
# slapd.conf - Configuration file for LDAP SLAPD
##########
# Basics #
##########
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/inetorgperson.schema
pidfile /var/run/slapd/slapd.pid
argsfile /var/run/slapd/slapd.args
loglevel none
modulepath /usr/lib/ldap
# modulepath /usr/local/libexec/openldap
moduleload back_hdb
##########################
# Database Configuration #
##########################
database hdb
suffix "dc=example,dc=com"
rootdn "cn=Manager,dc=example,dc=com"
rootpw secret
directory /var/lib/ldap
# directory /usr/local/var/openldap-data
index objectClass,cn eq
########
# ACLs #
########
access to attrs=userPassword
by anonymous auth
by self write
by * none
access to *
by self write
by * none
重啟openldap,
關閉:sudo kill `pgrep slapd`或者sudo service slapd stop
開啟:sudo slapd或者sudo service slapd start
重啟:sudo service restart或者 sudo invoke-rc.d slapd restart
查看openldap運行情況,只顯示grep --color=auto slapd,說明沒有運行。
ps aux | grep slapd
參考資料: http://hi.baidu.com/ankchl/item/5a93d1f972399d0985d27870