


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、安装和配置OPENLDAP必需的软件包在大多数基于软件包的系统上(例如,在基于RPM的分发版(distribution )上,女口 Red Hat、Mandrake和SuSE)安装和配置 OpenLDAP是一个相对比较简单的过程。第一步先确定将哪些OpenLDAP组件(如果有的话)作为初始Linux设置的一部分进行安装。从控制台窗口或命令行,输入:rootthor root# rpm -qa | grep openldaprootthor root#您应该看到类似上面的输出。注:Red Hat分发版安装OpenLDAP客户机软件,但不安装openldap-servers 软件包,即使您选择了服
2、务器配置也是如此。要安装 RPM软件包,在分发版媒质上找到所需文件的位置 并输入:rpm -ivh packagename配置 OpenLDAP服务器安装了必需的软件之后,下一步是要配置服务器。首先,备份原始配置文件以供今后参考(cp/etc/openldap/slapd.conf /etc/openldap/slapd.conf.orig )。现在,在您所喜爱 的文本编辑器中打开 /etc/openldap/slapd.conf文件,花几分钟时间通读注释。除了定义目录数据库类型、suffix、rootdn和存储目录数据库的位置的几个项外,slapd.conf中的大多数缺省设置都是适当的。da
3、tabaseldbmsuffix"dc=syroidmanor,dc="rootdn"cn=root,dc=syroidmanor.,dc="rootpwCRYPT05T/JKDWO0Suldirectory /var/lib/ldapindex objectClass,uid,uidNumber,gidNumber,memberUid eqindex ,mail,surname,givennameeq,subinitial保护 rootdnrootdn项控制谁可以对目录数据库进行写操作,以及他们要这样做所必须提供的密码。请确保阅读“访问控制”一章结束部
4、分的注释:# if no access controls are present, the default is:# Allow read by all# rootdn can always write!“ rootdn can always write!” ( rootdn总是可以写!)的意思正如它所表示的那样。您在rootdn项的=部分填充的任何项都是对数据库有完全读/写访问权的用户。另外,缺省配置文件使用“secret”作为密码,它以明文形式发送。如果只能从装了防火墙与外界隔离的部网访问您的LDAP服务器,并且确信将访问LDAP服务器的用户不知道有关信息包嗅探的任何事情,您大概可以以明文
5、形式安全地发送rootdn密码(只要确保将密码“ secret ”稍加修改,使之不易被猜出)。但是,如果您打算存储在目录中的数据只有一 点点性,则对密码进行散列处理。可以用 slappasswd实用程序完成它,如下所示:rootthor root# slappasswd -h crypt该程序将要求您输入密码,然后slappasswd将给出与所提供的项相对应的crypt字符串。将该字符串剪切并粘贴到 slapd.conf,如上一页所示。其它散列选项包含SSHA (缺省值)、SMD5、MD5和SHA。输入 man slappasswd,以获取更多信息。测试服务器现在是测试服务器的好时机了。这里的
6、配置相对比较简单也容易对可能出现的问题进行故障诊断。在RedHat Linux 系统上,命令是:rootthor root# service ldap start接下来,测试您访问目录的能力:rootthor root# ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts如果正确配置了服务器,您应该看到类似于下面的输岀(当然,有不同的dc):version: 2# filter: (objectclass=*)# requesting: namingContexts#dn:namingCont
7、exts: dc=syroidmanor,dc=# search resultsearch: 2result: 0 Success# numResponses: 2# numEntries: 1LDAP服务在重新引导如果您得到了错误消息,或输岀与上面有很大的不同,则返回并检查配置。要使 时自动启动,输入以下命令:rootthor root# chkconfig ldap on再提醒一下,上面的命令特定于Red Hat分发版配置ACL配置LDAP服务器的最后一步是设置一些基本访问控制。这样做可以确保用户只能访问他们需要访问的 项。在OpenLDAP下设置 ACL (访问控制表, Access C
8、ontrol List )的方法有两种:可以将 include行放在 /etc/openldap/slapd.conf 的顶部,指向一个单独的文件(例如,include /etc/openldap/slapd.access.conf ); 或者可以将 ACL直接添加到 slapd.conf。这完全由您选择 一Mandrake通常使用include行;Red Hat将 ACL添加到配置文件。ACL示例# Define ACLs - access control definitionsaccess to dn=".*,dc=syroidmanor,dc=" attr=userP
9、asswordby dn="cn=root,dc=syroidmanor,dc=" writeby self writeby * authaccess to dn=".*,dc=syroidmanor,dc=" attr=mailby dn="cn=root,dc=syroidmanor,dc=" writeby self writeby * readaccess to dn=".*,ou=people,dc=syroidmanor,dc="by * readaccess to dn=".*,dc=syr
10、oidmanor,dc="by self writeby * read上面的配置仅允许 userPassword属性的所有者修改项,但仅当所有者提供他或她的优先密码时才允许进行 修改。在所有其它情况下,只能出于认证目的来访问该项,而不能查看它。第二个access to.项允许用户修改自己的电子地址 (attr=mail)。第三个项指定除了rootdn夕卜,对于所有人,ou=people,dc=syroidmanor,dc=中的任何DN都是只读的。这可防止用户更改其用户名、uid、gid和主目录等。最后,最后一项是包容前面访问控制中未涉及的任何东西的安全的“大杂烩”。例如,它允许用户更
11、改其自己地址簿中的项。在服务器可以使用新的ACL之前,需要重新启动:service ldap restart。完成基本配置之后,应该将一些有用的项填充到数据库。填充数据进行到这一阶段,您应该大致了解了LDAP的部机制和结构,并且有了一个正在运行的OpenLDAP服务器。下一步是将联系人数据填充到您的目录,随后,电子应用程序将使用这些数据来查询电子地址。遗憾 的是,这会使事情变得有点儿棘手。有三种使联系人信息填入目录树的基本方法:从命令行手工输入,通过LDIF ( LDAP数据库交换文件(LDAP Database Interchange File)导入,或者通过使用脚本。棘手的部分是选择有效的
12、方法以及将数据正确地填入数据库而不岀差错。好处就是,一旦完成了,您不必再次执行整个过程一当然前提是您继续使用支持LDAP的应用程序。手工填充数据库是三种方法中最直接的一种(虽然,正如单词“手工”暗示的那样,它需要的劳动力最多),所以我们先处理这一过程。手工数据输入首先,从控制台窗口或命令行,输入下列命令:rootthor root# Idapadd -D "cn=root" -hserverpassword: *dn: uid=juser,ou=people,dc=syroidmanor,dc=uid: jusercn: Joe Usergivenname: Joesn:
13、Usermail: jusersyroidmanor.objectClass: topobjectClass: mailRecipientobjectClass: personobjectClass: inetOrgPersonADadding new entry uid=juser,ou=people,dc=syroidmanor,dc=rootthor root#上面概述的过程使用三个基本的LDAP操作:绑定操作、更新操作和隐式取消绑定操作。为了修改目录,您必须以特权用户身份绑定或连接到LDAP服务器。所显示的示例使用=root,因为那就是OpenLDAP服务器的配置方式。如果您对 sla
14、pd.conf中的rootdn项使用了其它名称,则用合适的替换它。在密码提示后,输入DN,后跟要与DN( RDN项)相关联的数据,后跟包含类型/值对的属性的对象类。过程结束部分的 CTRL-D会将数据发送给服务器,并隐式取消与服务器的绑定。然后,LDAP服务器用一条已经成功输入(已显示)数据的消息或错误消息来响应。常见错误是尝试添加类型/值,而不指定正 确的对象类、添加已经存在的用户或RDN或遗忘了 “MUST”项(例如,对象类人员同时需要givenname和sn)等。另外,在进行手工数据输入时,要知道以下几点:您必须知道哪个对象类拥有您正在添加的类型/值RDN数据的属性。该过程所需的工作量较
15、大。很容易错误地输入一个项,这会使目录树中有错误信息。一般而言,能使您的目录树布局可视化并熟悉配置LDAP服务器以使用的模式很重要。最后一点对于所有数据输入方法都适用,它正是LDAP入门一章的目的。熟悉LDAP的结构并清楚地知LDIF方法将数据插入 LDAP目录的第二种方法是使用LDIF文件。LDIF文件只是包含想要插入的以特定语法编排的数据的纯文本文档。您已经熟悉了语法:dn:后跟树中存储项的位置,后跟一个或多个RDN项(包含数据的类型/值对),后跟必需的对象类。要创建LDIF,使用纯文本编辑器,然后输入想要添加到目录中的数据。使用我们的上一个示例:dn: uid=juser,ou=peop
16、le,dc=syroidmanor,dc=uid: jusercn: Joe Usergivenname: Joesn: Usermail: jusersyroidmanor.objectClass: topobjectClass: mailRecipientobjectClass: personobjectClass: inetOrgPerson保存文件(比如,example.ldif),在控制台窗口或命令行上,输入:rootthor root# ldapadd -x -D "cn=root,dc=syroidmanor,dc=" -W -f sample.ldif将提示
17、您输入rootdn密码,通过认证后,包含在LDIF中的数据将被写入 LDAP数据库。LDIF方法的优缺点LDIF方法既有优点也有缺点。其优点为:在将文件导入数据库之前,您可以检查拼写和语法。可以创建带有许多项的LDIF文件,然后用一个操作将它们添加到目录中。如果导入失败,只要打开 LDIF文件,查找错误,并尝试重新导入即可。LDIF文件是一种开放标准,几乎可以将它们导入到任何目录服务器中。其缺点为:该过程仍需要较大的工作量一必须输入LDIF中的所有项,并遵循正确的语法。当LDAP服务器遇到导入文件中的错误时,它并不总是能方便地处理。虽然您可能会得到一条“ syntax error(语法错误)”
18、消息,但它不会告诉您,在一个相当大的LDIF文件中,错误在哪里。归结起来讲,比起从命令行手工输入数据,LDIF文件有某些明显的优势。但您仍必须遵守正确的语法来将联系人信息输入文件,并将它导入目录中。有没有一个更自动化的方法来填充LDAP数据库呢?一 请继续读下去。脚本方法可以使用通常用 Perl或PHP编写的脚本,它们的目的是接收您的数据并将它“自动”放到LDAP目录中。这种方法有两个问题。首先,也是最重要的,我亲自尝试过的任何脚本都有许多可恶的错误,在某些 最坏的情形下,会在导入期间毁坏您的数据或者破坏目录树本身。其次,使用脚本导入数据假设数据已经 以某种形式存在。当分别从/etc/pass
19、wd和/etc/groups导入用户密码和组信息时,这当然很好,但您的联系人信息可能不是通常可识别的格式。毕竟,本教程的主要目的是使联系人信息不受专用格式的支配。如果将联系信息数据导岀成纯文本、用逗号分隔的文件,并找到能够将数据导入LDAP目录的脚本,会怎么样呢?如果可以找到这种脚本,并且如果它运行得如它所宣称的那样,则您会得到所有的功能。请记 住,您的电子客户机对“用逗号分隔的文件”有其自己精确的解释。要在每行结束的地方添加回车吗?导 出程序如何处理嵌入字段中的空格?某些人通常窃用LDAP导入脚本来将他们的数据从应用程序A (已经以格式X导岀)传送到LDAP目录。如果他们的应用程序和导岀格式
20、与您的相合,则尝试它。不过要 确保先备份您的目录数据库,这样,如果导入失败,您就可以返回到“已知的好”状态。1、获得软件.ope nl /software/dow nl oad/.ope nl /software/repo.html2、解压gunzip -c openldap-VERSION.tgz | tar xfB -在当前工作目录下将产生一个ldap子目录。3、认真阅读 README 和口 INSTALL4、运行 con figure./c on figure查看con figure的可选项./c on figure -help5、编译 make depe n
21、dmake6 、测试编译结果cd testsmakecd .7 、安装软件su root -c make install8 、创建 SLAPD 的配置文件编辑 /usr/local/etc/slapd.conf 文件,该文件中包含下列格式的 LDBM 数据库定义 database ldbmsuffix "dc=MY-DOMAIN, dc=COM"rootdn "cn=Manager, dc=MY-DOMAIN, dc=COM"rootpw secret替换上面的 MY-DOMAIN 和 COM 成实际的域名,例如:database ldbmsuffix "dc=mydomain, dc="rootdn "cn
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 网络管理员考试变化试题及答案
- 2025届安徽省淮南市田家庵区数学七下期末经典试题含解析
- 法学概论中基本权利的探讨试题及答案
- 公司可持续发展战略题及答案
- 别具一格的VB考试试题及答案
- 游戏开发基础技能考题及答案
- 营销技术在软件开发中的应用试题及答案
- 针对性复习2025年法学概论考试试题及答案
- 2025年市场挑战与企业应对策略试题及答案
- 企业辉煌与顽疾风险考题及答案
- 2025四川西南发展控股集团有限公司招聘工作人员65人笔试参考题库附带答案详解
- 湖北省武汉市2025届高中毕业生四月调研考试数学试卷及答案(武汉四调)
- 故宫的资料简介(标准版)
- 内科、外科护理考核试题及答案
- 红字发票信息确认单
- 康复心理学心理评估课件
- 《常用偏旁名称表》
- 《民事诉讼法》 本科课件第16章 简易程序
- 标准名称中华人民共和国卫生部救护车专业标准
- 财税实务金融企业贷款损失准备金税前扣除的误区
- 各品牌挖掘机挖斗斗轴、马拉头尺寸数据
评论
0/150
提交评论