LDAP學(xué)習(xí)筆記 - 基礎(chǔ)

LDAP協(xié)議

背景

  • X.400
  • X.500(X.519 DAP)
  • LDAP

1庸蔼、在ITU制定X.400系列Email標(biāo)準(zhǔn)時(shí),標(biāo)準(zhǔn)制定者們發(fā)現(xiàn)庇麦,需要一種通過(guò)網(wǎng)絡(luò)獲取通訊錄的標(biāo)準(zhǔn)化方法饿敲。這種通過(guò)網(wǎng)絡(luò)訪問(wèn)目錄服務(wù)的需求,推動(dòng)了X.500系列標(biāo)準(zhǔn)的開(kāi)發(fā)涌攻,尤其是其核心標(biāo)準(zhǔn)X.519 DAP目錄訪問(wèn)協(xié)議欧引。由于X.500標(biāo)準(zhǔn)嚴(yán)格遵循了OSI七層網(wǎng)絡(luò)架構(gòu),因此實(shí)現(xiàn)復(fù)雜恳谎,效率也成問(wèn)題芝此,所以業(yè)界采用情況不理想憋肖。
2、IETF意識(shí)到X.500系列標(biāo)準(zhǔn)的問(wèn)題后婚苹,對(duì)DAP協(xié)議進(jìn)行了改造和簡(jiǎn)化提出了輕量級(jí)目錄訪問(wèn)協(xié)議LDAP岸更。LDAP幾乎保留了所有的X.519標(biāo)準(zhǔn)要求的功能,但網(wǎng)絡(luò)協(xié)議選擇了最常用的TCP/IP協(xié)議膊升。

概念

1怎炊、LDAP

  • 輕量目錄訪問(wèn)協(xié)議(Lightweight Directory Access Protocol)的縮寫(xiě)?LDAP標(biāo)準(zhǔn)
  • 實(shí)際上是在X.500標(biāo)準(zhǔn)基礎(chǔ)上產(chǎn)生的一個(gè)簡(jiǎn)化版本

2、目錄服務(wù)

  • 什么是目錄服務(wù)廓译?
    目錄服務(wù)就是按照樹(shù)狀存儲(chǔ)信息的模式
  • 目錄服務(wù)的特點(diǎn)评肆? 目錄服務(wù)與關(guān)系型數(shù)據(jù)庫(kù)不同?
    (1)目錄服務(wù)的數(shù)據(jù)類型主要是字符型, 而不是關(guān)系數(shù)據(jù)庫(kù)提供的整數(shù)非区、浮點(diǎn)數(shù)瓜挽、日期、貨幣等類型
    (2)目錄有很強(qiáng)的查詢(讀)功能征绸,適合于進(jìn)行大量數(shù)據(jù)的檢索
    但目錄一般只執(zhí)行簡(jiǎn)單的更新(寫(xiě))操作久橙,不支持批量更新所需要的事務(wù)處理功能
    (3)它主要面向數(shù)據(jù)的查詢服務(wù)(查詢和修改操作比一般是大于10:1),不提供事務(wù)回滾(rollback)機(jī)制.
    (4)目錄具有廣泛復(fù)制信息的能力管怠,適合于多個(gè)目錄服務(wù)器同步/更新

目錄是一組具有類似屬性淆衷、以一定邏輯和層次組合的信息。常見(jiàn)的例子是通訊簿排惨,由以字母順序排列的名字吭敢、地址和電話號(hào)碼組成。
目錄服務(wù)是一種在分布式環(huán)境中發(fā)現(xiàn)目標(biāo)的方法暮芭。目錄具有兩個(gè)主要組成部分:

  • 第一部分是數(shù)據(jù)庫(kù)鹿驼,數(shù)據(jù)庫(kù)是分布式的,且擁有一個(gè)描述數(shù)據(jù)的規(guī)劃辕宏。
  • 第二部分則是訪問(wèn)和處理數(shù)據(jù)的各種協(xié)議畜晰。

目錄服務(wù)其實(shí)也是一種數(shù)據(jù)庫(kù)系統(tǒng),只是這種數(shù)據(jù)庫(kù)是一種樹(shù)形結(jié)構(gòu)瑞筐,而不是通常使用的關(guān)系數(shù)據(jù)庫(kù)凄鼻。目錄服務(wù)與關(guān)系數(shù)據(jù)庫(kù)之間的主要區(qū)別在于:二者都允許對(duì)存儲(chǔ)數(shù)據(jù)進(jìn)行訪問(wèn),只是目錄主要用于讀取聚假,其查詢的效率很高块蚌,而關(guān)系數(shù)據(jù)庫(kù)則是為讀寫(xiě)而設(shè)計(jì)的。
提示:目錄服務(wù)不適于進(jìn)行頻繁的更新膘格,屬于典型的分布式結(jié)構(gòu)峭范。

LDAP是一個(gè)目錄服務(wù)協(xié)議,目前存在眾多版本的LDAP瘪贱,而最常見(jiàn)的則是V2和V3兩個(gè)版本纱控,它們分別于1995年和1997年首次發(fā)布辆毡。

特點(diǎn)

  • LDAP的結(jié)構(gòu)用樹(shù)來(lái)表示,而不是用表格甜害。
  • LDAP可以很快地得到查詢結(jié)果舶掖,不過(guò)在寫(xiě)方面,就慢得多尔店。
  • LDAP提供了靜態(tài)數(shù)據(jù)的快速查詢方式眨攘。
  • LDAP不支持事務(wù)、不能進(jìn)行回滾嚣州。
  • Client/Server模型期犬,支持分布式結(jié)構(gòu)。
  • LDAP是一種開(kāi)放Internet標(biāo)準(zhǔn)避诽,LDAP協(xié)議是跨平臺(tái)的Interent協(xié)議。

其中璃谨,對(duì)于Client/Server模型沙庐,Server 用于存儲(chǔ)數(shù)據(jù),Client提供操作目錄信息樹(shù)的工具佳吞,數(shù)據(jù)庫(kù)操作client用于對(duì)ldap server庫(kù)進(jìn)行操作拱雏。
(1)工具:ldapadd, ldapsearch,ldapdelete
實(shí)用client:用于將ldap server庫(kù)在實(shí)際工作中使用
(2)工具:radius+ldap, pam+ldap
這些工具可以將數(shù)據(jù)庫(kù)的內(nèi)容以文本格式(LDAP 數(shù)據(jù)交換格式底扳,LDIF)呈現(xiàn)在您的面前铸抑。

認(rèn)證機(jī)制

  • 基本認(rèn)證
    通過(guò)用戶名和密碼進(jìn)行身份識(shí)別,又分為簡(jiǎn)單密碼和MD5密碼認(rèn)證
  • SASL(Simple Authentication and Secure Layer)
    一種在網(wǎng)絡(luò)協(xié)議中用于認(rèn)證和數(shù)據(jù)安全的框架
  • SSL和TLS
    分布式LDAP 是以明文的格式通過(guò)網(wǎng)絡(luò)來(lái)發(fā)送信息的衷模,包括client訪問(wèn)ldap的密碼鹊汛。TLS(SSL的后繼者,由OpenSSL 包)加密機(jī)制來(lái)解決這個(gè)問(wèn)題阱冶。

端口號(hào)

Ldap端口號(hào)(顯然提供分布式ldap)——389刁憋,636
[root@vmmac modules]# cat /etc/services | grep ldap
ldap 389/tcp 明文
ldap 389/udp 明文
ldaps 636/tcp # LDAP over SSL
ldaps 636/udp # LDAP over SSL

基本模型

LDAP的基本模型是建立在“條目”(Entry)的基礎(chǔ)上。一個(gè)條目是一個(gè)或多個(gè)屬性的集合木蹬,并且具有一個(gè)全局唯一的“可區(qū)分名稱”(用dn表示)至耻。與關(guān)系型數(shù)據(jù)(后面簡(jiǎn)稱數(shù)據(jù)庫(kù))進(jìn)行類比,一個(gè)條目相當(dāng)于數(shù)據(jù)庫(kù)中的一條記錄镊叁,而dn相當(dāng)于數(shù)據(jù)庫(kù)中記錄的關(guān)鍵字尘颓,屬性相當(dāng)于數(shù)據(jù)庫(kù)中的字段。
提示:dn必須是全局唯一的晦譬。
LDAP中疤苹,將數(shù)據(jù)組織成一個(gè)樹(shù)形結(jié)構(gòu),這與現(xiàn)實(shí)生活中的很多數(shù)據(jù)結(jié)構(gòu)可以對(duì)應(yīng)起來(lái)蛔添,而不像設(shè)計(jì)關(guān)系型數(shù)據(jù)庫(kù)的表痰催,需要進(jìn)行多種變化兜辞。例如,下圖就是一個(gè)樹(shù)形結(jié)構(gòu)的數(shù)據(jù)夸溶。

目錄樹(shù)

1逸吵、在上圖所示的樹(shù)形結(jié)構(gòu)中,樹(shù)的根結(jié)點(diǎn)是一個(gè)組織的域名(dlw.com)缝裁,其下分為3個(gè)部分扫皱,分別是managers、people和group捷绑,可將這3個(gè)組看作組織中的3個(gè)部門(mén)韩脑,如managers用來(lái)管理所有管理人員,people用來(lái)管理登錄系統(tǒng)的用戶粹污,group用來(lái)管理系統(tǒng)中的用戶組段多。當(dāng)然,在該圖中還可繼續(xù)增加其他分支壮吩。
2进苍、對(duì)于上圖所示的樹(shù)形結(jié)構(gòu),使用關(guān)系數(shù)據(jù)庫(kù)來(lái)保存數(shù)據(jù)的話鸭叙,需要設(shè)置多個(gè)表觉啊,一層一層分別保存,當(dāng)需要查找某個(gè)信息時(shí)沈贝,再逐層進(jìn)行查詢杠人,最終得到結(jié)果。
3宋下、若使用目錄來(lái)保存該圖中的數(shù)據(jù)嗡善,則更直觀。圖中每個(gè)結(jié)點(diǎn)用一個(gè)條目來(lái)保存学歧,不同類型的結(jié)點(diǎn)需要保存的數(shù)據(jù)可能不同滤奈,在LDAP中通過(guò)一個(gè)稱為objectClass的類型來(lái)控制不同結(jié)點(diǎn)需要的數(shù)據(jù)(稱為屬性)。
(1)用戶組可以配置
objectClass: posixGroup
objectClass: top
(2)用戶可以配置
objectClass: top
objectClass: posixAccount
objectClass: inetOrgPerson
4撩满、對(duì)于目錄中的數(shù)據(jù)怎樣進(jìn)行引用呢蜒程?前面提到過(guò),每一個(gè)條目都有一個(gè)dn伺帘,因?yàn)閐n是唯一的昭躺,因此就可找到需要結(jié)點(diǎn)的數(shù)據(jù)。dn的構(gòu)造方式如下:
首先得到條目自己的名稱(rdn伪嫁,稱為相對(duì)dn)领炫,然后開(kāi)始向上逐級(jí)查找父結(jié)點(diǎn),一直到根項(xiàng)為止张咳。例如帝洪,對(duì)于上圖中最右下方的結(jié)點(diǎn)似舵,其dn為:

dn: cn=ldap, ou=group, o=dlw.com  

通過(guò)這樣的方式,即可唯一標(biāo)識(shí)每一個(gè)結(jié)點(diǎn)葱峡。
在現(xiàn)實(shí)生活中砚哗,有很多這種樹(shù)形結(jié)構(gòu)的數(shù)據(jù),如計(jì)算機(jī)文件系統(tǒng)的目錄結(jié)構(gòu)砰奕、Internet中的域名等蛛芥。這些類型的數(shù)據(jù),只要不需要頻繁的更新军援,都適合用目錄來(lái)保存仅淑。

功能

在LDAP的功能模型中定義了一系列利用LDAP協(xié)議的操作,主要包含以下4部分:

  • 查詢操作 :允許查詢目錄和取得數(shù)據(jù)胸哥,其查詢性能比關(guān)系數(shù)據(jù)庫(kù)好涯竟。
  • 更新操作 :目錄的更新操作沒(méi)關(guān)系數(shù)據(jù)庫(kù)方便,更新性能較差空厌,但也同樣允許進(jìn)行添加昆禽、刪除、修改等操作蝇庭。
  • 復(fù)制操作 :前面也提到過(guò),LDAP是一種典型的分布式結(jié)構(gòu)捡硅,提供復(fù)制操作哮内,可將主服務(wù)器的數(shù)據(jù)的更新復(fù)制到設(shè)置的從服務(wù)器中。
  • 認(rèn)證和管理操作 :允許客戶端在目錄中識(shí)別自己壮韭,并且能夠控制一個(gè)會(huì)話的性質(zhì)北发。

OpenLDAP

  • LDAP協(xié)議的自由和開(kāi)源的實(shí)現(xiàn)。
  • 并不包括后臺(tái)數(shù)據(jù)庫(kù)存儲(chǔ)喷屋,OpenLDAP配合Berkeley DB可使其讀操作的效率得到很大提高琳拨。
    Berkeley DB是一個(gè)開(kāi)源的文件數(shù)據(jù)庫(kù),介于關(guān)系數(shù)據(jù)庫(kù)與內(nèi)存數(shù)據(jù)庫(kù)之間屯曹,使用方式與內(nèi)存數(shù)據(jù)庫(kù)類似狱庇,它提供的是一系列直接訪問(wèn)數(shù)據(jù)庫(kù)的函數(shù),而不是像關(guān)系數(shù)據(jù)庫(kù)那樣需要網(wǎng)絡(luò)通訊恶耽、SQL解析等步驟密任。

安裝

  • 通過(guò)下載tar包,解壓編譯安裝
  • 通過(guò)掛載方式偷俭,yum浪讳,zypper安裝

配置

  • 配置slapd.conf
    --了解LDAP Schema
  • 配置LDIF文件
    --LDIF文本條目格式
    --了解objectClass
    --了解Attribute
    --創(chuàng)建LDIF文件
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市涌萤,隨后出現(xiàn)的幾起案子淹遵,更是在濱河造成了極大的恐慌口猜,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,542評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件透揣,死亡現(xiàn)場(chǎng)離奇詭異济炎,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)淌实,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,596評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén)冻辩,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人拆祈,你說(shuō)我怎么就攤上這事恨闪。” “怎么了放坏?”我有些...
    開(kāi)封第一講書(shū)人閱讀 158,021評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵咙咽,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我淤年,道長(zhǎng)钧敞,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,682評(píng)論 1 284
  • 正文 為了忘掉前任麸粮,我火速辦了婚禮溉苛,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘弄诲。我一直安慰自己愚战,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,792評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布齐遵。 她就那樣靜靜地躺著寂玲,像睡著了一般。 火紅的嫁衣襯著肌膚如雪梗摇。 梳的紋絲不亂的頭發(fā)上拓哟,一...
    開(kāi)封第一講書(shū)人閱讀 49,985評(píng)論 1 291
  • 那天,我揣著相機(jī)與錄音伶授,去河邊找鬼断序。 笑死,一個(gè)胖子當(dāng)著我的面吹牛糜烹,可吹牛的內(nèi)容都是我干的逢倍。 我是一名探鬼主播,決...
    沈念sama閱讀 39,107評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼景图,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼较雕!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,845評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤亮蒋,失蹤者是張志新(化名)和其女友劉穎扣典,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體慎玖,經(jīng)...
    沈念sama閱讀 44,299評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡贮尖,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,612評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了趁怔。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片湿硝。...
    茶點(diǎn)故事閱讀 38,747評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖润努,靈堂內(nèi)的尸體忽然破棺而出关斜,到底是詐尸還是另有隱情,我是刑警寧澤铺浇,帶...
    沈念sama閱讀 34,441評(píng)論 4 333
  • 正文 年R本政府宣布痢畜,位于F島的核電站,受9級(jí)特大地震影響鳍侣,放射性物質(zhì)發(fā)生泄漏丁稀。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,072評(píng)論 3 317
  • 文/蒙蒙 一倚聚、第九天 我趴在偏房一處隱蔽的房頂上張望线衫。 院中可真熱鬧,春花似錦惑折、人聲如沸授账。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,828評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至全肮,卻和暖如春敞咧,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背辜腺。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,069評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工休建, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人评疗。 一個(gè)月前我還...
    沈念sama閱讀 46,545評(píng)論 2 362
  • 正文 我出身青樓测砂,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親百匆。 傳聞我的和親對(duì)象是個(gè)殘疾皇子砌些,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,658評(píng)論 2 350

推薦閱讀更多精彩內(nèi)容

  • 6- 章的翻譯見(jiàn):http://www.reibang.com/p/835c2db4a1c4 說(shuō)明 該文檔根據(jù)官...
    耳邊的火閱讀 9,640評(píng)論 2 15
  • 1.測(cè)試環(huán)境 a) 安裝在虛擬機(jī)上的centos6.9b) openLADP 2.LDAP概述 LDAP 是輕量級(jí)...
    十二樓中月閱讀 24,599評(píng)論 0 14
  • 目錄服務(wù)就是按照樹(shù)狀存儲(chǔ)信息的模式。目錄服務(wù)的數(shù)據(jù)類型主要是字符型, 而不是關(guān)系數(shù)據(jù)庫(kù)提供的整數(shù)、浮點(diǎn)數(shù)存璃、日期仑荐、貨...
    黑色I(xiàn)幽默閱讀 4,307評(píng)論 0 4
  • ORA-00001: 違反唯一約束條件 (.) 錯(cuò)誤說(shuō)明:當(dāng)在唯一索引所對(duì)應(yīng)的列上鍵入重復(fù)值時(shí),會(huì)觸發(fā)此異常纵东。 O...
    我想起個(gè)好名字閱讀 5,257評(píng)論 0 9
  • 我敢打賭 這份難吃的牛排很信任我 味道不佳不是它的錯(cuò) 它正一臉無(wú)辜地等待著 我的血盆大口將它整個(gè)兒吞沒(méi) 雖然 它渾...
    貓畫(huà)符閱讀 273評(píng)論 1 1