LDAP入門與OpenLDAP使用配置


LDAP入門與OpenLDAP使用配置

1、LDAP簡介

LDAP(輕量級目錄訪問協議,Lightweight Directory Access Protocol)是實現提供被稱為目錄服務的信息服務。目錄服務是一種特殊的數據庫系統,專門針對讀取,瀏覽和搜索操作進行了特定的優化。目錄一般包含描述性的,基於屬性的信息並支持精細復雜的過濾能力。目錄一般不支持通用數據庫針對大量更新操作需要的復雜事務管理或回卷策略。目錄服務的 更新一般都非常簡單。這種目錄可以存儲包括個人信息、web鏈結、jpeg圖像等各種信息。為了訪問存儲在目錄中的信息,需要使用運行在TCP/IP之上的訪問協議——LDAP。

LDAP目錄中的信息按照樹型結構組織,具體信息存儲在條目(entry)數據結構中。條目相當於關系數據庫中表的記錄;條目是具有區別名DN(Distinguished Name)的屬性(Attribute)集合,DN是用來引用條目的。屬性由類型(Type)和一個或多個值(Values)組成,類型規定了屬性允許存放的值的約束條件,同時也規定了該類型數據進行比較時的規則。LDAP使用語法(Syntax)這一概念表示屬性的取值約束和比較規則,常用的語法是字符型。

LDAP中條目的組織一般按照地理位置和組織關系進行組織,非常的直觀。LDAP把數據存放在文件中,為提高效率可以使用基於索引的文件數據庫。類型的一個例子如mail,其值一個電子郵件地址。LDAP的信息是以樹型結構存儲的,在樹根一般定義國家(c=CN)或域名(dc=com),在其下則往往定義一個或多個組織(organization)(o=Acme)或組織單元(organizational units) (ou=People)。一個組織單元可能包含諸如所有雇員、大樓內的所有打印機等信息。

在屬性基礎上LDAP使用schema進一步約束目錄條目。schema是一種類型定義機制,每種類型定義又稱為objectclass,它規定該類型目錄條目實例必須的和可選的屬性等約束。與面向對象的編程語言類似,objectclass支持繼承,且所有的objectclass都是top的子類型。常見的objectclass有InetOrgPerson、OrganizationalUnit等。

2、OpenLDAP安裝部署

2.1、下載地址

windows平台下載地址:http://www.userbooster.de/download/openldap-for-windows.aspx

linux平台下載地址:http://www.openldap.org/

2.2、安裝

安裝提示默認安裝即可。

2.3、配置

(1)打開OPENLDAP_HOME/sldap.conf文件,找到以下行:

include        ./schema/core.schema

在后面添加新的schema,schema定義在OPENLDAP_HOME/schema文件夾中。

在sldap.conf文件中找到以下兩行:

suffix        "dc=maxcrc,dc=com"

rootdn        "cn=Manager,dc=maxcrc,dc=com"

修改為:

suffix        "dc=esrigz,dc=com"

rootdn        "cn=Manager,dc=esrigz,dc=com"

suffix中的定義必須與ldif文件中定義的一致。

在該配置文件中還有一個參數rootpw,這個密碼是cn=Manager的密碼,在安裝時已定義。

(2)啟動OpenLDAP

打開控制台,定位到OpenLDAP安裝目錄下,執行命令啟動OpenLDAP:

slapd –d 1

可以看到控制台下打印一片信息,openldap安裝時選用的Berkeley DB 數據庫存儲目錄數據。

2.4、建立條目並導入ldif文件

新建ldif文件(純文本格式),內容如下:

dn: dc=esrigz,dc=com

objectclass: domain

objectclass: top

o: esri guangzhou

dc: esrigz

   

dn: ou=Developer,dc=esrigz,dc=com

objectclass: organizationalUnit

ou: Developer

description: Container for developer entries

   

dn: ou=Manager,dc=esrigz,dc=com

objectclass: organizationalUnit

ou: Manager

description: Container for manager entries

   

dn: uid=yun,ou=Developer,dc=esrigz,dc=com

uid: yun

objectClass: inetOrgPerson

mail: yun@mail.com

userPassword: 123456

labeledURI: http://www.esri.com

sn: xin

cn: yun xin

   

dn: uid=xinli,ou=Manager,dc=esrigz,dc=com

uid: xinli

objectClass: inetOrgPerson

userPassword: 123456

labeledURI: http://www.esri.com

sn: wu

cn: xinli wu

注意:格式要求嚴格,每行開頭和結尾不能有空格。

執行命令導入ldif文件:

ldapadd -D "cn=Manager,dc=esrigz,dc=com" -w secret -f test.ldif

參數說明:

  • -D 指定管理員DN(與slapd.conf中配置的一致)
  • -W 大寫W表示回車后根據提示輸入密碼,可以使用小寫的-w password 直接輸入密碼
  • -f 需要導入數據LDIF的文件名

詳細的參數說明可使用ldapadd --?查看。

執行命令查看導入的信息:

ldapsearch –x –b "dc=esrigz,dc=com"

2.5、LdapBrowser客戶端部署

解壓雙擊lbe.bat即可運行。

點擊Fetch DNs會自動獲取DN信息。

使用manager賬號訪問。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM