当前位置:操作系统 > Unix/Linux >>

构建基于LDAP的地址薄之一提高篇

GUI 目录管理

  虽然大多数管理员都宁愿使用 LDIF 文件和 OpenLDAP 的命令行界面,但有几个可用的 GUI 目录管理程序,愿意尝试它们的人不妨试一下。有两个示例:

  Directory Manager(请参阅参考资料)是用于管理 LDAP 目录数据的开放源码图形工具。它包括与模式无关的编辑器、模式查看器和许多查看数据的不同方法。另外,Directory Manager 还有创建您自己的定制视图的功能。Directory Manager 需要 LDAP v3 服务器。尽管其版本号较早(0.91),但该产品非常有用,并以我的个人经验而言,在生产环境中使用它是安全的。

  由 Jarek Gawor 开发的 LDAP Browser/Editor(请参阅参考资料)是另一种目录管理实用程序。与某些允许用户浏览、搜索和编辑目录项的相似工具(当前版本是 2.8.1)相比,它更成熟且特性丰富。然而,它是收费产品,而且要求用户购买许可证。下面是 Jarek 的 LDAP Browser/Editor 的抓屏:

  [myimg]http://bbs.chinaunix.net/forum/uploadfile/111_22291094553224.jpg[/myimg]

  使用Rolodap创建地址簿

  介绍Rolodap

  对于所有那些不热衷于以手工方式或使用脚本来填充 LDAP 目录的用户,还有一个选择:Rolodap(有关信息和链接,请参阅参考资料)。Rolodap 是一个开放源码项目,它使用 LDAP 目录来存储联系信息。另外,Rolodap 提供一个由 PHP 驱动的 Web 界面,它允许您从任何 Web 浏览器维护您的地址簿(也允许多个地址簿)。

  有什么窍门?绝对没有,除此之外,为了使用 Web 界面,您需要安装和配置三个附加的软件包 — Apache、PHP 和 PHP-LDAP。本章描述如何安装和配置 Rolodap。

  软件包需求

  Rolodap 需要下列软件包:

  openldap-server

  openldap

  openldap-devel

  openldap-client

  apache

  php

  php-ldap

  上面的列表中故意没有列出版本号,因为到您阅读本文时,Apache 和 PHP 将很可能有更新的发行版。查看 Red Hat 站点,获取最新的稳定的软件包(有关链接,请参阅参考资料)。

  一旦安装完所有软件包,在继续之前,请检查一下以确保 Apache 和 PHP 都正确工作。

  下列配置步骤假设:

  Apache 的 DocumentRoot 是 /home/httpd/html。

  OpenLDAP 配置文件在 /etc/openldap 中。

  您以 root 用户身份登录。

  OpenLDAP 服务器将仅拥有 Rolodap 的数据项。

  您只使用 Apache 运行 Rolodap 界面,并且不为公共 Web 页面提供服务。

  最后这个问题很重要 — 在公共 Web 服务器上运行 LDAP 接口需要提供超出本教程范围的安全性。

  下载Rolodap

  Rolodap 的当前发行版是版本 1.0(有关下载链接,请参阅参考资料)。将用 gzip 压缩的 tar 包(加上附带的 schema、ldif 和 conf 文件)下载到您选择的目录,将文件移到 Apache 的 DocumentRoot,对它解压缩,然后重命名已创建的目录,如下所示:

  mv /temp/rolodap-v1.tar.gz /home/httpd/html

  cd /home/httpd/html

  tar xvzf rolodap-v1.tar.gz

  mv rolodap-v1 rolodap

  编辑 rolodap.conf

  下一步是配置 Rolodap。将 rolodap.conf 文件复制到 /etc(使用上一页中提供的示例路径 cp /home/httpd/html/rolodap/config/rolodap.conf /etc )。在您喜爱的文本编辑器中打开该文件( vi /etc/rolodap.conf ),通读注释,然后根据您的实现的需要编辑项。

  有关数据库布局的详细信息,请参阅 Rolodap 自述文件(/home/httpd/html/rolodap)。

  配置 OpenLDAP 服务器

  当前修订版级别的 Rolodap 只是为了用于存储在 OpenLDAP 服务器上的数据而设计的。如果这与您的方案匹配,则将 core.schema 和 rolodap.schema 从 /home/httpd/html/rolodap/ 复制到 /etc/openldap/schema。Rolodap 还包含位于 /home/httpd/html/rolodap/config 目录中的样本 slapd.conf 文件。或者将该文件复制到 /etc/openldap(备份原始 FIRST),或者记下必需的更改,然后根据需要编辑原始的 slapd.conf。与 Rolodap 捆绑在一起的自述文件包含有关必需更改的详细信息。

  如果正在使用 OpenLDAP 存储除 Rolodap 项之外的其它数据,您可能必须调整两个模式文件以及与 Rolodap 捆绑在一起的配置文件,以使每件事情都能象宣称的那样出色地完成。

  接下来,确保 /etc/openldap/slapd.conf 的文件权限是正确的。与 Red Hat 7.3 捆在一起的 OpenLDAP 服务器以用户 ldap 的身份运行,所以您必须确保该用户可以读文件:

  chgrp ldap /etc/openldap/slapd.conf

  chmod g+rw /etc/openldap/slapd.conf

  最后,重新启动 OpenLDAP 服务器,使更改生效: service ldap restart 。

  填充 LDAP 目录

  下一步是配置和填充初始的 Rolodap 数据库。编辑位于 /home/httpd/html/extras 中的 sample.ldif 文件以适应您期望的配置。明确地讲,您需要更改 DN 项、管理信息和 UID 等,以便符合您的系统配置。请记住,dn: o=contacts.company.net 只是 dn: ou=contacts,dc=company,dc=net 的替代项。如果您觉得后一种约定更方便,则适当地编辑 sample.ldif。当您感到满意时,输入下列命令以将包含在 sample.ldif 中的信息输入到 OpenLDAP 目录中:

  ldapadd -f sample.ldif -xv -h yourldapserver -D"cn=admin,dc=yourdomain,dc=com" -w password

  用服务器名替换“yourldapserver”,用您的域或组织替换“yourdomain”,用 sample.ldif 中用于管理用户的密码项替换“password”。如果在更新过程期间接收到错误消息,请仔细地检查一下 sample.ldif 中所有项的拼写和语法。

  最后,启动浏览器……

  后一步是通过细读新的 OpenLDAP 目录来尝试 Rolodap。将浏览器指向 http://localhost/rolodap。应该出现一个登录页面。输入您在 sample.ldif 中输入的(常规用户,而不是管理用户)用户名和密码,并花一些时间检查 Rolodap 的各种特性,添加一些新联系人或创建新的地址簿。下面的抓屏显示了简单搜索(上面)和用户“主页”(下面)的界面。

  [myimg]http://bbs.chinaunix.net/forum/uploadfile/111_58181094553334.jpg[/myimg]

  [myimg]http://bbs.chinaunix.net/forum/uploadfile/222_76511094553451.jpg[/myimg]

  如果您在访问或登录 Rolodap 时遇到困难,请检查 Apache 日志文件,以获取关于问题根源的任何线索。

  那么,可以将基于 Rolodap 的 LDAP 目录用作您所喜爱的电子邮件客户机的地址簿吗?当然……请继续读下去;下一章有所有的详细信息。

  配置支持LDAP的电子邮件客户机

  配置概述

  最后一章详细描述了访问存储在 LDAP 目录中的联系信息数据的最后一个步骤 — 配置电子邮件客户机以搜索 LDAP 目录,而不是搜索应用程序的缺省地址簿。设法为市场上的每种电子邮件客户机提供特定细节是不切实际的,但在所有支持 LDAP 的应用程序可以连接到目录服务之前,它们确实需要几条独特的信息:

  服务器的名称

  开始搜索所请求信息的位置或搜索库(search base)

  LDAP 服务器正在“侦听”的端口号(缺省值是 389)

  用户名和密码

  对于某些应用程序,需要搜索规则(search rule)(这通常缺省为“*”,表示所有记录)

  接下来的几页略述了三种常用的电子邮件客户机(Pine、Mulberry 和 Outlook Express)的必需过程。正如您将看到的,每个程序都有其自己的特点,但它们都遵循同一个通用过程。

  Pine

  许多 UNIX“顽固分子”都将 Pine 称为“一个真正的邮件程序”。Pine 是一种基于控制台/文本的客户机,它包含在大多数主要的 Linux 分发版中。下列指令基于运行于 Red Hat 7.3 上的 Pine 版本 4.44。

  从 Pine 主菜单,选择 Setup --> Directory。

  选择 Add Directory,然后输入下列命令:

  ldap-server: thor.syroidmanor.com(在这里替代服务器名)。

  search-base: ou=people(或联系人,取决于您的配置)。

  nickname: thor

  选中复选框“use-implicitly-from-composer”。

  在“search-rule”下,输入“*”。

  保存您的更改。现在,当您在编写消息时输入部分电子邮件地址,Pine 应该查找该项的匹配,并完成它。对于具有多个匹配的项,将弹出一个框,允许您选择要使用的地址。

  Mulberry

  Mulberry(请参阅参考资料,以获取链接)已经出现好几年了,它在许多平台上运行,是那些“隐藏的宝石”之一 — 很少有人听说过它,但使用它的人都信赖它。要配置 Mulberry 以将 LDAP 目录用作其缺省地址簿:

  从任何打开的窗口,选择 File --> Preferences。

  单击 Accounts 选项卡,然后从 Accounts 下拉列表选择 New。

  选择 New,输入帐户名称,然后从 Account Type 下拉列表,单击 LDAP Address Search。

  在 Authentication 选项卡上,选择 Method。

  在 Options 选项卡上,选中 Use when Searching,如果您愿意的话,还可
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,