Openldap

openldap
http://www.openldap.org/

………………………………………………………………………………………………………………

以yum安裝
1
安裝openldap-server
yum install openldap*

以source安裝
1
從此處下載
http://www.openldap.org/software/download/
2
進入解壓縮後的目錄
gunzip -c openldap-VERSION.tgz | tar xvfB –
cd openldap-VERSION
3
編譯
./configure
make depend
make
make test
su root -c ‘make install’
ps:configure –help參數可取得更多可用編譯資訊
ps:預設安裝在/usr/local
ps:裝完後請檢查安裝根目錄下的lib目錄是否有libdb-4.1.so

………….

編輯ldap server組態檔
可將example.com範例檔修改後存成slapd.conf
若以study.net網域為例,內容可修改如下
database bdb
suffix “dc=sutdy,dc=net”
rootdn “cn=manager,dc=study,dc=net”
rootpw secret
directory /usr/local/var/openldap-data
ps:若directory指向的目錄不在存請建立一個,並設定權限700
ps:man slapd.conf可得到更多資訊
ps:slapd.conf預設在/usr/local/etc/openldap/

啟動ldap server
su root -c /usr/local/libexec/slapd
ps:
其他啟動方式
suse是/etc/rc.d/ldap start
redhat是/etc/rc.d/init.d/ldap start

驗證是否有啟動
#ps -ef | grep slapd
若成功可在輸出畫面中看到slapd行程
#netsat -atunlp | grep 389
可看到正在listen 389
#ldapsearch -x -b ” -s base ‘(objectclass=*)’ namingContexts
若成功會出現
dn:
namingContexts: dc=study,dc=net


………………………………………………………………………………………………………………

常見client tool有以下
ldapsearch 查詢ldap項目
ldapadd
ldapmodify
ldapdelete
ps:使用client工具前需先設定好ldap client組態檔

ldap client組態檔
內容大致如下
URI ldap://127.0.0.1 #要指向ldap server的ip
BASE dc=study,dc=net #要指向server設定的值
ps:
/etc/ldap.conf用於application
/etc/openldap/ldap.conf用於ldap-tools

………………………………………………………………………………………………………………

ldapsearch常見用法
常見參數如下
-x 要求ldapsearch進行簡易繫結,也就是不使用sasl認證
-b 指定搜尋的起點,定義base suffix(基本尾碼),也就是指定base dn,預設是從根開始
-D 使用指定的dn進行查詢
-w 使用指定的密碼進行查詢
其他選項
(objectclass=*) 搜尋過濾器
ex:
列出所有資料
ldapsearch -x
ex:
找uid=raymond的項目
ldapsearch uid=raymond
ex:
找dc=study,dc=net的項目
ldapsearch -x -b ‘dc=study,dc=net’ ‘(objectclass=*)’
or
ldapsearch -x -b ‘dc=study,dc=net’
找ou=editors的項目
ldapsearch (&(objectclass=person)(ou=editors)) dn
ex:
以cn=manager,dc=study,dc=net且密碼為fedora進行查詢
ldapsearch -x -b ‘dc=study,dc=net’ -D ‘cn=manager,dc=study,dc=net’ -w fedora