ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:30.65KB ,
资源ID:9266064      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9266064.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(LDAP 概念与架设.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

LDAP 概念与架设.docx

1、LDAP 概念与架设LDAP概念与架设 現今網路常用的服務,以 HTTP、Mail 和 File System (Samba) 為最常用的服務,然而在這些常用的服務裡,會有使用者帳號的問題,每當要使用 Mail 時要輸入 Mail 的帳號密碼,存取 File System 要有 File System 帳號密碼,再更多的服務就要記更多的帳號密碼,小弟曾看過某機關,一位承辦人居要要背五組以上的的帳號密碼,而每兩個月又要修改一次,想想看這是多麼恐怖的一件事。LDAP 是一種目綠服務,可使用 LDAP 記錄各種的人員資訊,就像是通訊錄一樣,又更進階一點,他也可以拿來做帳號整合,若是在 AP 上都有所

2、支援,那麼要使用同一組帳號秘碼就不再是難以搞定的事了。在小弟等當兵的這一段日子裡,打算使用 LDAP 來做 Linux login(new window)、Postfix(new window)、Samba、HTTP 等帳號密碼整合。所以,我將會寫一系列的 LDAP 整合文章,當然,太深入、難以說明或是太過於理論的地方我都不會講,因為這只是筆記,我會儘量說明清楚。為了要讓閱讀本文章的讀者們可以更容易的找到相關書籍,我在文章裡也會提供參考圖書或網頁的資料。無論如何,小弟只對 Redhat Linux 的部份較為熟悉,所以在以下文章裡所提到的 LDAP,其實是指 OpenLDAP 套件,跟 Mic

3、rosoft 的 Active Directory 沒有關係,因為小弟對 AD 也不熟。在這個章節裡,我將要介紹基本的 LDAP 觀念和如何使者用 ldap command 來新增、查尋資料。而在實作的環境裡,我是使用 CentOS 4.0,也就是說若您的系統是使用 CentOS 4、Redhat Enterprise Linux 4、Fedora Core 3 或 Fedora Core 4 的話應該都可以照著本文章實作,當然,CentOS 4.0 裡附的 OpenLDAP 版本是 openldap-2.2。安裝要實作 LDAP 的話,當然一定要安裝 LDAP 套件了,包含了 server

4、及 devel 相關的套件,你可以查看系統有無 LDAP Server 套件。root # rpm -qa | grep openldapopenldap-2.2.13-2openldap-devel-2.2.13-2openldap-servers-2.2.13-2openldap-clients-2.2.13-2 root #若沒有的話,可使用 CentOS 4 光碟所附的 RPM 來安裝就可以了。root # rpm -ivh openldap* 中間略 root #規劃其實 LDAP 也不用想得太難,把他想成資料庫的一種就對了,對於有資料庫設計經驗的人應該不成問題,但是若你之前都沒有碰

5、過,那就把 LDAP 想成組織圖一樣就可以了,只是這個組織圖是在你腦海裡浮現,所以你最好要再準備一張紙,把你的架構畫出來才行。就我這次提供的組織來看,大約是以下這樣:l-penguin.idv.tw / login company / / user group unit customer / | mis account hr為了這次的實做,我把這個 l-penguin.idv.tw 分成主要兩個部份,login 部份是用來做有關 login 的資料,所有有關 login 的機制都是放在這裡。而 company 裡面,就只單純提供通訊錄的查尋而已。而這個架構圖,在之後的 LDAP 系列文件裡,還

6、會出現,我現在的實做,是以 l-penguin.idv.tw - company - unit 這個路線走,在最後的結果,可以查到在每個部份下的人員。 Note: 這個部份,我還沒有講到 LDAP 的表示法,主要是要讓各位讀者明白,在使用 LDAP 之前要先有一個架構,畫出來再依圖實做就會很好理解。這個部份,可以參考 LDAP 系統管理 第二章 LDAPv3 概論。LDAP 表示法若要表示一筆人員記錄,可使用:cn=user name,ou=gourp,dc=your,dc=domain若是以本例來說,在 mis 部門下有一位 steven,那麼對於這位 steven 的表示法為:cn=ste

7、ven,ou=mis,ou=unit,ou=company,dc=l-penguin,dc=idv,dc=tw這一長串,我們稱之為一個 dn 值,在 LDAP 的表示方法都是由小到大,也就是人名先表示、再表示部門、單位(這和老外的門牌表示法是一樣的意思)。當然,經過這麼一說你就可以知道 cn 值在同一個 ou 下是不可以重複的,就是說在 ou=mis 下不可以有兩位 steven,不然就照成資料重複。當然,在同一公司裡叫 steven 的人可能到處跑,但是同一部門下同時叫 steven 的機率就就會降低了。LDAP 也可以使用中文,比方說小弟是在 mis 部門下的,若依名字設定 dn 的話,就

8、會變成:cn=廖子儀,ou=mis,ou=unit,ou=company,dc=l-penguin,dc=idv,dc=tw相信,有了中文的支援下,大家對 LDAP 應該不會太排斥才對。主要設定檔在使用 LDAP 之前,一定要先設定好主要設定檔,如此才能讓你的 LDAP 正常使用。OpenLDAP 主要設定檔在 /etc/openldap/slapd.conf,這個 slapd.conf 若要各位用手打出來可能會讓大家反彈,所幸裡面已經有最主要的設定了,這些設定可以符合大部份的需求,剩下來的只需要一些微調而已。Note: 主要設定檔, 在 LDAP 系統管理 第三章 OpenLDAP 裡可得到

9、詳細資訊。DB_CONFIG 檔案設定了 index 的快取數量,可調整效能的表現,在一開始建置時需要先行建立,這個檔案的預設範例可以從 /etc/openldap 下取得,並把它複製到 /var/lib/ldaproot # cp /etc/openldap/DB_CONFIG.example /var/lib/ldap/DB_CONFIG設定 /etc/openldap/slapd.conf 檔案 以上略 suffix dc=l-penguin,dc=idv,dc=twrootdn cn=Manager,dc=l-penguin,dc=idv,dc=twrootpw secret 以下略

10、好了,三行,三行就符合本篇的主要設定,現在我就來解釋一下這三行的意思:suffix dc=l-penguin,dc=idv,dc=tw suffix 就是用來定義你 LDAP 的根尾碼rootdn cn=Manager,dc=l-penguin,dc=idv,dc=tw Unix/Linux root 裡有至高無尚的地位,可以打破任何規定,而在這裡,這個 rootdn 就是指 LDAP 的 root,設定了之後就可以對整個 LDAP 系統資料做新增、刪除、修改等動作。一般 cn 值會是 Manager。rootpw secret 故名思意就是指定剛剛那個 Manager 的密碼,而在這個範例中

11、,我們是使用 secret 這個明碼的文字,當然是為了解說方便,真正在管理時還是以加密過的文字較為安全。設定完之後,你應該可以體會到這個 slapd.conf 有多重要,因為裡面包含了最大權限管理者的帳號密碼,所以除了相關帳號之外,應該不允許有其它人修改和閱讀。設計機關檔 / 啟動 ldap當完成最主要的設定之後,系統內不會有任何資料,所以我們必需逐步建立,當然最重要的是機關設吧!記錄資訊的格式我們一般取為 *.ldif 檔,一般第一次接觸會顯得很陌生,在這裡我將設計一個符合我規劃的 LDIF 檔案,並存在 /etc/openldap/data/root-unit.ldif 檔裡:# root

12、 nodedn: dc=l-penguin,dc=idv,dc=twdc: l-penguinobjectClass: dcObjectobjectClass: organizationalUnit ou: l-penguin Dot idv Dot tw好的,以上我們是一層一層的規劃下來,每一筆新的記錄和前一筆新記錄要使用一行空白行來隔開表示示別;而每一筆一開頭就要表示這筆資料的完整 dn 值,就像是絕對路徑一樣;在每一筆資料的參數裡,可以自行選用要使用那些 objectClass。當然,各位若不想用手慢慢 key 這些無聊的文字,可以由此下載 root-unit.ldif 檔案。現在設定完

13、了之後,我們要這些機關新增到 LDAP 裡,可以使用 slapadd 來新增:root # slapadd -v -l /etc/openldap/data/root-unit.ldifadded: ou=login,dc=l-penguin,dc=idv,dc=tw (00000005)added: ou=user,ou=login,dc=l-penguin,dc=idv,dc=tw (00000006)added: ou=group,ou=login,dc=l-penguin,dc=idv,dc=tw (00000007)added: ou=company,dc=l-penguin,dc=

14、idv,dc=tw (00000008)added: ou=unit,ou=company,dc=l-penguin,dc=idv,dc=tw (00000009)added: ou=hr,ou=unit,ou=company,dc=l-penguin,dc=idv,dc=tw (0000000a)added: ou=mis,ou=unit,ou=company,dc=l-penguin,dc=idv,dc=tw (0000000b)added: ou=account,ou=unit,ou=company,dc=l-penguin,dc=idv,dc=tw (0000000c)added: o

15、u=customer,ou=company,dc=l-penguin,dc=idv,dc=tw (0000000d) root #現在你可以很清楚的看到,你的機關名錄都被新增進去了!若確定了之後,再來就啟動 DLAP 吧,若你和我一樣是由 RPM 安裝的,就很簡單了:root # service ldap startChecking configuration files for : config file testing succeededStarting slapd: OK root #這樣就完成了!Note: 在使用 slap* 工具之前,並不可以啟動 LDAP。再來,查看 LDAP 資

16、料錄,下面的指令可以查看所有項目:root # ldapsearch -x -b dc=l-penguin,dc=idv,dc=tw# extended LDIF# LDAPv3# base with scope sub# filter: (objectclass=*)# requesting: ALL# l-penguin.idv.twdn: dc=l-penguin,dc=idv,dc=twdc: l-penguinou: l-penguin Dot idv Dot twobjectClass: dcObjectobjectClass: organizationalUnit# login,

17、 l-penguin.idv.twdn: ou=login,dc=l-penguin,dc=idv,dc=twou: loginobjectClass: organizationalUnit# user, login, l-penguin.idv.twdn: ou=user,ou=login,dc=l-penguin,dc=idv,dc=twou: userobjectClass: organizationalUnit# group, login, l-penguin.idv.twdn: ou=group,ou=login,dc=l-penguin,dc=idv,dc=twou: groupo

18、bjectClass: organizationalUnit 其它略 # search resultsearch: 2result: 0 Success# numResponses: 11# numEntries: 10 root #你得到的結果會是一長串的項目,雖然有可能會看不懂,但你最少可以確定剛剛新增的資料都有成功的進去。對於一開始接觸 LDAP 的各位讀者,一長串總比“什麼都沒有”來得好吧 :)設計人員名錄人員名錄和機關設計原理一樣,也是使用文字檔的 ldif 來做設計。在這裡我準備新增幾個人員加入到各不同的單位裡,當然所示範的資料裡人員或身份證都是瞎掰杜撰的 我把設定檔存成 /etc

19、/openldap/data/users.ldif#設定 吳怡君 通訊錄dn: cn=吳怡君,ou=hr,ou=unit,ou=company,dc=l-penguin,dc=idv,dc=twcn: 吳怡君sn: N/Aobjectclass: personobjectclass: inetOrgPersongivenName: 吳怡君mail: c293831287l-penguin.idv.twtelephoneNumber: 02-29587572mobile: 0939689593postalAddress: 台北縣中和市景平路1號postalCode: 235ou: 人力資源部o:

20、 l-penguin Corp.labeledURI: http:/www.l-penguin.idv.tw/ title: 辦事員礙於篇幅上面這只是一個人員的資料而已,這位隸屬於人事資源部的吳小姐 (?!) ,我使用了 inetOrgPerson 和 person 這兩個 objectclass。其它的請望文生意吧,尤其是你不應該再問那個 dn: 值是什麼意思。有一點值得題的是,上面 sn: 這個參數,其實是“姓”啦!對於開始規劃使用 LDAP 的公司來說,要手動 key 這些名錄可能會死人,你可以請工讀生幫忙做這些鎖事,或是略施小計,使用 Shell Script 或 Perl 來產生吧,

21、這樣就可以很快的建立這些名錄了。好吧,我還是知道有人先抱著玩玩的心態來做實驗,但是又沒有現成的人名資料可以參考,那麼我就把本次的 users.ldif 給各位下載了。Note: 關於 inetOrgPerson 和 person 這兩個 objectClass 可以查閱 LDAP 系統管理 第四章 4.2 定義綱要。新增人員名錄建立好人員名錄之後,請得要注意下列幾項:1. 轉換到 unix 格式 2. 中文字元和 UTF-8 我相信,很多人一定是在 Windows 編好 ldif 檔之後再傳到主機上,但是在 Windows 編好的文件,有經驗的使用者會發現用 vi 一打開之後每一行的最後面會多

22、一種 M 的字元,這種字元在 Linux 可是不被認得的,若沒有消除就會造成新增錯誤。你可以使用 vi 取代掉,或是使用更簡單的方法,讓 dos2unix 來幫你做:root # dos2unix /etc/openldap/data/users.ldif root #中文字元的問題,因為在 Windows 編完之後,會使用 Big5 編碼,所以,我們要把他轉成 UTF-8 字元,為什麼?因為 LDAP 就規定了 ldif 文件需要使用 UTF-8 格式,這樣子明白了吧!要讓 Big5 變成 UTF-8 可以使用 iconv 這個程式來轉換:root # iconv -f big5 -t UT

23、F-8 -o users.ldif.utf8 users.ldifroot # file users.ldif.utf8users.ldif.utf8: UTF-8 Unicode text root #好了,經過一翻煩雜的設定之後就可以開始來新增資料了,新增資料可使用 ldapmodify 來完成任務:root # ldapmodify -D cn=Manager,dc=l-penguin,dc=idv,dc=tw -w secret -x -a -f /etc/openldap/data/users.ldif.utf8 中間略 root #好了,若中間沒有發生任何的問題,就表示新增成功,一

24、樣我們使用 ldapsearch 來查看吧:root # ldapsearch -x -b ou=unit,ou=company,dc=l-penguin,dc=idv,dc=tw# extended LDIF# LDAPv3# base with scope sub# filter: (objectclass=*)# requesting: ALL# 略 # E9BB83E680A1E99A86, hr, unit, company, l-penguin.idv.twdn: Y2496buD5oCh6ZqGLG91PWhyLG91PXVuaXQsb3U9Y29tcGFueSxkYz1sLXB

25、lbmd1aW4sZGM9aWR2LGRjPXR3cn: 6buD5oCh6ZqGsn: N/AobjectClass: topobjectClass: personobjectClass: inetOrgPersongivenName: 6buD5oCh6ZqGmail: d197700415l-penguin.idv.twtelephoneNumber: 02-29587572mobile: 0939689593postalAddress: 5Y+w5YyX57ij5Lit5ZKM5biC5pmv5bmz6LevMeiZnw=postalCode: 235ou: 5Lq65Yqb6LOH5

26、rqQo: l-penguin Corp.labeledURI: http:/www.l-penguin.idv.tw/title: 5Lq65LqL6LOH5rqQ6YOo5Li75Lu7# E590B3E5AEB6E887BB, hr, unit, company, l-penguin.idv.twdn: Y2495ZCz5a626Ie7LG91PWhyLG91PXVuaXQsb3U9Y29tcGFueSxkYz1sLXBlbmd1aW4sZGM9aWR2LGRjPXR3cn: 5ZCz5a626Ie7sn: N/AobjectClass: topobjectClass: personob

27、jectClass: inetOrgPersongivenName: 5ZCz5a626Ie7mail: d295723341l-penguin.idv.twtelephoneNumber: 02-29587572mobile: 0939689593postalAddress: 5Y+w5YyX57ij5Lit5ZKM5biC5pmv5bmz6LevMeiZnw=postalCode: 235ou: 5Lq65Yqb6LOH5rqQo: l-penguin Corp.labeledURI: http:/www.l-penguin.idv.tw/title: 6L6m5LqL5ZOh 略 # s

28、earch resultsearch: 2result: 0 Success# numResponses: 22# numEntries: 21 root #GUI 工具哎呀,人客呀,大家一看到這個小單元,可能會認為自己又誤上賊船了,千辛萬苦努力看完前面的廢話之後居然又出現一個 GUI 工具,但是,大家千萬不要認為小弟誘拐大家上賊船,明明有很方便的 GUI 工具還不放在第一個介紹可別誤會呀,若各位是從頭開始看的話,那麼已經可以開始使用文字模式來新增了,GUI 只是一種輔助而已,若是不了解其原理,那麼就算有 GUI 工具還是無法使用順手。在這裡我介紹的 GUI 工具是 ldapbrowser,這

29、工具可用來新增、移除、修改你的資料。使用方法就由各位去發現吧!名稱:ldapbrowser首頁:http:/www-unix.mcs.anl.gov/gawor/ldap/下載:http:/www-unix.mcs.anl.gov/gawor/ldap/download.html系统管理员须了解的LDAP服务器 用 Python-LDAP 执行 LDAP 的 CRUD(创建、读取、更新和删除)操作: 大多数系统管理员在职业生涯中都会遇到需要与 LDAP 服务器交互的情况。本文讲解如何使用 LDAP 实现 Apache 身份验证,以及如何使用 Python 模块 python-ldap 在 Op

30、enLDAP 数据库上执行 CRUD(即创建、读取、更新和删除)操作。 简介 在本文中,作者将讲解如何在 Amazon EC2 虚拟机上安装 OpenLDAP 的实例,设置 Apache/LDAP 身份验证,然后使用 Python 执行 CRUD(即创建、读取、更新和删除)操作。一定要注意,可以在 Fedora、Ubuntu、Red Hat、AIX? 等操作系统上安装 LDAP。但是在本文中,我们决定采用 Amazon EC2 虚拟机。您可以在任何 Linux? 发行版或手边的任何环境中进行实践。最后,我们将在本文中讨论许多代码和复杂的技术。您应该首先下载 示例代码,供阅读本文时参考。 通过程序控制 LDAP 常常是系统管理员的工作,所以 Python 中存在一个用来操作 LDAP 的库就不奇怪了。python-ldap 模块已经存在了一段时间了,在 参考资料 一节中可以找到官方文档的链接。 我们假设您熟悉一般的 LDAP 概念,比如目录模式、Distinguished Names (DN)、Common Names (CN)、过滤器和属性。本文不是 LDAP 教程;我们不喜欢大谈理论,而是主要关注使用和管理 LDAP 数据库的实际示例。 什么是 LDAP 以及它的用途是什么?那么

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1