如何设置一个基本的OpenLDAP Server

原创 2004年12月30日 13:01:00

如何设置一个基本的OpenLDAP Server
本文出自:http://www.linuxforum.net 作者:吴阿亭 Jephe wu (2001-09-04 15:00:01)

      一. 目的 

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

      二. 安装 

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


      #tar cvfz openldap-stable-20010524.tgz 
      #cd openldap-2.0.11 
      #./configure 
      #make depend 
      #make 
      #make test 
      #make install 

      我的操作环境是redhat 6.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的"ldbm database definitions"部分更改相应的
      suffix,rootdn行如下 

      database ldbm 
      suffix "o=yourdomain,c=us" 
      rootdn "cn=root,o=yourdomain,c=us" 
      rootpw secret 
      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/bin and /usr/local/libexec加到搜索路径中,即加到
      /etc/profile 
      中的PATH行: 
      PATH="$PATH:/usr/X11R6/bin:/usr/local/bin:/usr/local/libexec" 
      这样下次登录后只需键入 slapd 。 

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

      #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=Jephe Wu,o=yourdomain,c=us 
      objectclass: inetorgperson 
      cn: Jephe Wu 
      sn: Wu 
      mail: jephe_wu@yourdomain.com 


      ......more users...... 

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

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

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

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

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

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

      四. 常见使用问题 

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

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

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

      # tcpdump port 389 
 

openldap命令汇总

1. 查找用户 ldapsearch -x -LLL -b dc=cscw 'uid=Jane' cn mail 输出结果类似于: dn: uid=Jane,ou=Users,dc=cscw cn...
  • jenyzhang
  • jenyzhang
  • 2016年11月07日 11:03
  • 1008

如何利用OpenLDAP工具管理并使用LDAP Server

提供:ZStack云计算 内容介绍如果对于相关工具以及LDAP所要求的信息及方法不太熟悉,LDAP系统的管理工作往往难度较高。在本教程中,我们将探讨如何利用由OpenLDAP团队开发的相关工具与LDA...
  • zstack_org
  • zstack_org
  • 2017年04月18日 09:47
  • 2192

openldap连接数过多的解决与性能优化

From : http://blog.sina.com.cn/s/blog_467b0fd50100wl8d.html 1. 连接数过高时候(超过1024),ldap就会hang死,有类似下面日...
  • u014461454
  • u014461454
  • 2014年03月31日 18:01
  • 1562

OpenLDAP的密码策略实现

OpenLDAP的密码控制策略很强大,可以控制: 密码的生命周期(最大和最小值);保存密码历史,避免在一段时间内重用相同的密码;密码强度,新密码可以根据各种特性进行检查;密码连续认证失败的最大次数;...
  • wilbertzhou
  • wilbertzhou
  • 2013年12月16日 09:57
  • 10861

如何配置OpenLDAP并执行LDAP管理任务

提供:ZStack云计算 内容介绍如果对于系统配置不够熟悉或者不知如何获取必要的关键信息,那么OpenLDAP系统的管理任务确实令人头痛。在本教程中,我们将探讨如何查询OpenLDAP服务器中的关键信...
  • zstack_org
  • zstack_org
  • 2017年04月14日 13:18
  • 814

OpenLDAP在win2008上安装配置

OpenLDAP在win2008上安装配置OpenLDAP在win2008上安装配置 安装准备工作 安装步骤 在win2008上安装是很简单步骤 简单导入数据使用 客户端的使用 总结业务需要,将企业员...
  • shenhonglei1234
  • shenhonglei1234
  • 2017年03月21日 17:41
  • 807

OpenLdap使用手册

OpenLdap使用手册   一、文档概述 本文从介绍ldap入手,讲述了ldap的使用场合,并进一步的指导用户进行openldap安装与配置。是新手入门的一个教程。   二、LDAP简介 ...
  • lqc1002000
  • lqc1002000
  • 2013年04月14日 23:19
  • 8636

Windows下安装使用openldap

openldap 比起其他商业目录服务器(比如 IBM Directory Server),特别的轻巧,十分适合于本地开发测试用,在产品环境中的表现也很优秀。 openldap 软件在它的官方网...
  • softn
  • softn
  • 2016年07月03日 08:51
  • 1431

openldap为一个用户设置为多个组

使用ldap创建账号体系,除了要给每个员工、用户创建账号,还需要给他们分配一个组的角色,有了组,就能比较好的进行权限控制,比如ssh+ldap这样的组合,可以通过组来对组成员的sudo权限进行控制,但...
  • Dolphin_h
  • Dolphin_h
  • 2017年02月21日 23:51
  • 2460

Openldap修改管理员密码

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://jerry12356.blog.51cto.com/4308715/1857969...
  • developerinit
  • developerinit
  • 2017年07月26日 13:00
  • 921
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何设置一个基本的OpenLDAP Server
举报原因:
原因补充:

(最多只允许输入30个字)