当前位置: 首页 > 图文教程 > 服务器 > Linux服务器 > 如何设置一个基本的OpenLDAPServer

Linux服务器
网管经验:打造网吧Linux代理服务器
Linux下如何使用光驱及读取非linux分区等
Linux主要shell命令详解
Linux下宽带设置使局域网连接互联网实例
网管入门之Linux服务器启动过程详解----通过/etc/inittab文件进行初始化
网管入门之Linux服务器启动过程详解----执行init进程
网管入门之Linux服务器启动过程详解----加载内核
网管入门之Linux服务器启动过程详解----启动GRUB/LILO
网管入门之Linux服务器启动过程详解----从BIOS到内核
如何恢复误删除的Linux文件
在Linux系统下建立强大的FTP搜索引擎
Linux操作系统的Configure参数解释说明
Linux系统下查CPU个数的方法
Linux攻略 DNS服务器安装配置方法详细介绍
Linux操作系统平台Vi指令大全
浅析linux操作系统登录帐户的管理和审计
在Linux上架设支持JSP+PHP的Web服务器
linux操作系统中bsd套接口开发的基础介绍
享受便利的应用方式—linux系统三则超酷技巧
LINUX VMWare-TOOLS的安装

Linux服务器 中的 如何设置一个基本的OpenLDAPServer


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-18   浏览: 59 ::
收藏到网摘: n/a


一.目的
本文旨在介绍如何安装OpenLDAP并且设置一个公司内部的集中化的邮件地址薄服务器供客户端查询。
基本上,OpenLDAPg还应用在其它许多方面,象集中化的用户帐号验证服务器,但邮件地址薄查询是最常用的。

二.安装
从www.openldap.org下载最新的openldap软件包,按照编译和安装的步骤,依次运行:

#tarcvfzopenldap-stable-20010524.tgz
#cdopenldap-2.0.11
#./configure
#makedepend
#make
#maketest
#makeinstall

我的操作环境是redhat6.1,如果没有遇到任何错误,最后默认安装LDAP后台程序slapd到目录/usr/local/libexec;配置文件在目录/usr/local/etc/openldap/并且放各种OpenLDAP工具ldapadd,ldapdelete,ldapmodify,ldapmodrdn,ldappasswd,ldapsearch在目录/usr/local/bin,运行时数据库在/usr/local/var/openldap-ldbm。

三.设置
1)更改配置文件/usr/local/etc/openldap/slapd.conf在include/usr/local/etc/openldap/schema/core.schema这行后面加上下面的行,包括所有的方案。

include/usr/local/etc/openldap/schema/corba.schema
include/usr/local/etc/openldap/schema/cosine.schema
include/usr/local/etc/openldap/schema/inetorgperson.schema
include/usr/local/etc/openldap/schema/java.schema
include/usr/local/etc/openldap/schema/krb5-kdc.schema
include/usr/local/etc/openldap/schema/misc.schema
include/usr/local/etc/openldap/schema/nadf.schema
include/usr/local/etc/openldap/schema/nis.schema
include/usr/local/etc/openldap/schema/openldap.schema

2)在文件slapd.conf的"ldbmdatabasedefinitions"部分更改相应的suffix,rootdn行如下

databaseldbm
suffix"o=yourdomain,c=us"
rootdn"cn=root,o=yourdomain,c=us"
rootpwsecret
directory/usr/local/var/openldap-ldbm

有各种格式你可以用,这里我用的是o=yourdomain,c=us说明你的公司域名和所在的国家或地区rootdn的格式安装后默认为cn=Manager,这里改为root完全是自己的喜好,这样符合Unix/Linux中root具有最高权限的传统。

3)现在可以启动slapd了,运行/usr/local/libexec/slapd。

可以考虑把/usr/local/binand/usr/local/libexec加到搜索路径中,即加到/etc/profile中的PATH行:
PATH="$PATH:/usr/X11R6/bin:/usr/local/bin:/usr/local/libexec"这样下次登录后只需键入slapd。

4)测试ldapserver是否正常工作。
运行下面的命令检查是否有相应的输出。

#ldapsearch-x-b'o=yourdomain,c=us''(objectclass=*)'

5)编辑.ldif文本文件,用ldapadd添加记录进入LDAP数据库。
文件内容如下:

dn:o=yourdomain,c=us
objectclass:dcobject
objectclass:organization
o:yourdomain
dc:yourdomain

dn:cn=JepheWu,o=yourdomain,c=us
objectclass:inetorgperson
cn:JepheWu
sn:Wu
mail:[email protected]

......moreusers......

依次类推,添加每个人的记录进入该文件中,注意对象类型inetorgperson至少必须要有cn和sn,这里我们用cn,sn,mail三项定义,这对我们的邮件地址薄功能来说已经足够。你还可以定义象mobile,homephone,pager......等等。

然后用下面的命令添加上面的.ldif文件进入LDAP数据库

#ldapadd-x-D"cn=root,o=yourdomain,c=us"-wsecret-f"yourldiffilename"

注:上面的文件的第一部分"dn:o=yourdomain,c=us"是必须的,否则不能添加数据。用你的公司的域名替换上面的"yourdomain"。

6)设置OutlookExpress,允许用LDAP服务器查询邮件地址。

"工具/帐号/添加--目录服务",填入你的服务器的IP地址或者主机全称域名,在下一个屏幕中选yes以允许用目录服务来查询地址,最后在"目录服务"栏中选中刚才设置的项目击“属性/高级",在"搜索库"中填入"o=yourdomain,c=us"。
Netscape请根据上面的信息设置相应的选项。

四.常见使用问题
1)能启动slapd没有问题,但不能添加数据库,运行ldapadd添加时出错"ldap_bind:cannotcontactLDAPServer"。
答:最可能的原因是在/etc/hosts中没有127.0.0.1localhost项目。

2)注意查询顺序:如果在OutlookExpress的地址薄中有内容,则检查地址时地址薄优先,如果在本地地址薄中找不到相应记录,然后再查询LDAP服务器。

3)用下面的命令确信客户端与LDAP服务器有通讯,在服务器运行下面的命令,然后在OE中测试检查地址,你将会得到查询LDAP数据库的连接过程的输出。

#tcpdumpport389