LDAP Server的介紹,請自行去Google,這裡就簡單紀錄我自己架設OpenLDAP的筆記
我曾經安裝在Fedora8和Fedora10上,都很順利的測試成功。

另外附上我在安裝LDAP Server時所參考的網頁 LDAP入門  OpenLDAP整合FreeBSD System Account 

1. 先查詢是否已安裝LDAP的Package

#rpm -qa | grep openldap
openldap-devel-2.4.12-1.fc10.i386
openldap-servers-2.4.12-1.fc10.i386
openldap-2.4.12-1.fc10.i386
openldap-clients-2.4.12-1.fc10.i386

//以我自己的經驗,通常都會缺少openldap-servers套件,可由RPM下載

2. 安裝缺少的套件
#rpm -ivh openldap-servers-2.4.12-1.fc10.i386.rpm

3. 架構你的LDAP Server

                     rxorwp.com
                   _____|_____
                  |                     |
              Users             Group

4. 修改/etc/openldap/slapd.conf
suffix    "dc=rxorwp,dc=com"
rootdn  "cn=Manager,dc=rxorwp,dc=com"
rootpw  secret

//我只修改上面的部分,其餘皆用預設,密碼的部分,方便測試,所以我用明碼處理。

5.編輯符合你的架構的LDIF檔案(在這命名為base.ldif,並放置在我自己新增的data資料夾下)

#vi /etc/openldap/data/base.ldif

#Base DN rxorwp.com
dn: dc=rxorwp,dc=com
dc: rxorwp
objectclass: top
objectclass: domain

#Users
dn: ou=Users,dc=rxorwp,dc=com
ou: Users
objectclass: top
objectclass: organizationalUnit

#Group
dn: ou=Group,dc=rxorwp,dc=com
ou: Group
objectclass: top
objectclass: organizationalUnit

//要注意的是每筆資料中間,一定要用一行空白行隔開。

6.啟動OpenLDAP前需做的事情

修改openLDAP的資料目錄擁有者為ldap
#chown -R ldap:ldap /var/lib/ldap

替Berkeley製作設定檔DB_CONFIG
#cp /usr/share/doc/openldap-servers-2.4.12/DB_CONFIG.example /var/lib/ldap/DB_CONFIG

由於每個平台放置的路徑會有差異,所以可下指令搜尋DB_CONFIG.example
#find / | grep DB_CONFIG.example

新增base.ldif到LDAP裡
#slapadd -v -l /etc/openldap/data/base.ldif
// 使用slap* 工具前,不可啟動LDAP(只可在LDAP離線時使用)

7. 啟動OpenLDAP
#service ldap start

查看LDAP資料,會回給你一長串你剛剛新增的資料(即base.ldif)
#ldapsearch -x -b "dc=rxorwp,dc=com"

result: 0 Success
// 若有此訊息,代表成功
// 若要重做,可以執行 rm -rf /var/lib/ldap/* ,先清空資料,再重複上面步驟。

8. 編輯你的架構下資料的LDIF檔(在這命名為users.ldif,也放置在我自己新增的data資料夾下)

#vi /etc/openldap/data/users.ldif

#Users: Cosmo
dn: uid=cosmo,ou=Users,dc=rxorwp,dc=com
uid: cosmo
cn: cosmo
objectclass: account
objectclass: posixAccount
objectclass: top
userPassword: {MD5}Mqi9TWdvT+8JIMfajbK61w==
uidNumber: 1000
gidNumber: 1000
homeDirectory: /home/cosmo

#Users: Annie
dn: uid=annie,ou=Users,dc=rxorwp,dc=com
uid: annie
cn: annie
objectclass: account
objectclass: posixAccount
objectclass: top
userPassword: {MD5}ohgQoB0/4N9CkdfT56u9HA==
uidNumber: 1001
gidNumber: 1001
homeDirectory: /home/annie

#Users: James
dn: uid=james,ou=Users,dc=rxorwp,dc=com
uid: james
cn: james
objectclass: account
objectclass: posixAccount
objectclass: top
userPassword: {MD5}tMw0TSWi7+VArb8meOIwTA==
uidNumber: 1002
gidNumber: 1002
homeDirectory: /home/james

利用ldap指令修改資料庫內容
#ldapmodify -D "cn=Manager,dc=rxorwp,dc=com" -w secret -x -a -f /etc/openldap/data/users.ldif

利用ldap指令搜尋資料庫內容
#ldapsearch -x -b "uid=annie,ou=Users,dc=rxorwp,dc=com"

利用ldap指令刪除子樹
#ldapdelete -D "cn=Manager,dc=rxorwp,dc=com" -W -x -r -v "ou=Group,dc=quanta,dc=com"

為密碼加密(可用MD5或者CRYPT)
#slappasswd -h "{MD5}"
New password:
Re-enter new password:
{MD5}ohgQoB0/4N9CkdfT56u9HA==
//將上面那段加密後的密文,貼到userPassword欄位的後方即可

9.最後看一下有沒有LISTEN Port 389
#netstat -na | grep 389


LDAP Client 測試

1. 修改/etc/openldap/ldap.conf

# vi /etc/openldap/ldap.conf
BASE    dc=rxorwp,dc=com
URI      
ldap://192.168.1.179 ldap://192.168.1.179:666

2. 利用search指令做測試,成功的話會回給你你所查詢範圍的詳細資料
#ldapsearch -x -b "uid=annie,ou=Users,dc=quanta,dc=com"

arrow
arrow
    全站熱搜

    RxoRwp 發表在 痞客邦 留言(0) 人氣()