OpenLDAP是?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OpenLDAP是?相关的知识,希望对你有一定的参考价值。

OpenLDAP是什么 具体解释 优点 作用等等
我是用来做印度NIIT(ISAS)考试的 最好是演讲稿形式的
求求各位帮帮忙 感激不禁啊
急用 我可以出高分
那为文笔好的而且精通电脑的大哥大姐帮帮小弟啊!~

你好,OpenLDAP是维客的意思
维客的原名为wiki(也译为维基),据说WikiWiki一词来源于夏威夷语的“wee kee wee kee”,原意为“快点快点”。它其实是一种新技术,一种超文本系统。这种超文本系统支持面向社群的协作式写作,同时也包括一组支持这种写作的辅助工具。也就是说,这是多人协作的写作工具。而参与创作的人,也被称为维客。

在维客页面上,每个人都可浏览、创建、更改文本,系统可以对不同版本内容进行有效控制管理,所有的修改记录都保存下来,不但可事后查验,也能追踪、回复至本来面目。这也就意味着每个人都可以方便地对共同的主题进行写作、修改、扩展或者探讨。同一维客网站的写作者自然构成了一个社群,维客系统为这个社群提供简单的交流工具。

维客的概念始于1995年,当时在PUCC(Purdue University Computing Center)工作的沃德·坎宁安(Ward Cunningham)建立了一个叫波特兰模式知识库(Portland Pattern Repository)的工具,其目的是方便社群的交流,他也因此提出了wiki这一概念。从1996年至2000年间,波特兰模式知识库得到不断的发展,维客的概念也得到丰富和传播,网上又出现了许多类似的网站和软件系统,其中最有名的就是维基百科(Wikipedia)。维基百科是一个国际性的百科全书协作计划,与传统百科全书不同的地方,它力图通过大众的参与,创作一个包含人类所有知识领域的百科全书。它还是一部内容开放的百科全书,允许任何第三方不受限制地复制、修改及再发布材料的任何部分或全部。

目前国内著名的维客(wiki)网站有:

维客网 http://www.wiki.cn/
维客中国 http://www.wikicn.com/ http://www.wikicn.net/
搜派百科 http://www.sopai.org/ http://www.sopai.com/
网络天书 http://www.cnic.org/
维库 http://www.wikilib.com/
天下维客 http://www.allwiki.com/
互动在线 http://www.hoodong.com/
维基百科 http://zh.wikipedia.org/(目前国内暂时无法访问)
参考技术A LDAP 用户利用客户/服务器的机制把信息发布到服务器。通过该机制,支持LDAP 的客户
端软件可以访问LDAP 服务器上的信息。通过使访问和管理目录信息的标准化,LDAP
(or Lightweight Directory Access Protocol )轻量级目录访问协议已经为一般的标准
邮件服务器所支持的协议。LDAP 是更复杂的目录访问协议X.500 Directory Access
Protocol 的一个子集.。作为Windows NT 的服务程序,LDAP 服务可以完全的在后台运
行或者是有部分交互的得运行。在你登出Windows NT 系统以后,LDAP 服务将会继续运
行。想了解更多的有关于LDAP 的信息,请参考Internet Requests for
Comments (RFCs)。IMail 服务器是依据RFC-2251 实现LDAP 服务。
Imail 的LDAP 的实现
IMail 服务器为IMail 用户数据库提供了一个LDAP 借口。IMail 用户数据库已经被扩
展包含了标准的LDAP属性(例如名字,地址,组织名字,电话号码)和其他的自定义的属
性。用户数据库不支持树状结构的组织形式。每一个Imail 系统中的用户有一个LDAP
纪录。当一个用户被加入到Imail 用户数据库中以后,LDAP 的属性有以下得属性:
ObjectClass 记录类型。该值应该是“Person.”
CN CommonName 用户的全名。
Mail 该用户的Imail 服务器上的邮件地址。该;邮件地址由用户账号和主机名构成。
UID Imail 服务器中的用户的帐号。
利用LDAP 客户端, 用户可以在他自己的LDAP 记录中增加,删除,修改信息。用户不可
以修改其它的用户的LDAP 信息。下面描述了用户可以增加的一些属性。
在LDAP 记录中这些属性实最常用的。其他的一些属性可以由系统管理员或者用户自己定
义。
系统管理员可以增加,删除用户,增加LDAP 属性,修改LDAP 属性:
• IMail Administrator — 想了解更多的相关信息,请参考第四章。
• A web browser. 想了解更多的相关得信息,请参考第六章。
注意
你可以用LDAP 客户端增加/修改属性(但不能增加/删除用户)。
SurName 用户名字的最后一个名字。
Organization 用户所在的公司的名字。
OrgUnit 用户所在的公司部门。
Street 用户的地址信息。
City 用户所在得城市。
ST 用户所在的省市。
Postal 用户所在区域的邮政编码。
C 用户的国籍。
Telephone 用户的联络电话号码。
对LDAP 目录服务的完整的支持
IMail 服务器支持LDAP 版本3, 该版本有以下得性能:
• 允许用户使用LDAP 客户端比如Netscape Communicator to:
• 确定LDAP 目录信息包括名字,电话号码,邮件地址,组织名称,部门和地址。
• 列出一台主机上的所有的用户。
• 根据给定的条件搜索用户。
• 在LDAP 目录中修改用户自己的信息。
• 主机管理员和系统管理员可以利用LDAP 客户端增加,删除,修改用户账号,包括
LDAP 目录信息.
• 你可以监视LDAP 服务器的运行状况.在服务器当机的时候可以收到警告.更具体得信
息可以参考第16章.
为没有登记的用户提供LDAP 信息
LDAP 的用户必须同时是Imail 邮件服务器中的用户.必须在邮件主机中有相应得邮件账
号.如果你想为没有邮件账号的用户提供LDAP 信息,你必须为他们创建账号然后在账号
的属性中选择Account Access Disabled .
从Microsoft 的邮件客户端访问LDAP 信息
如果你有客户使用Outlook Express 作为邮件客户端,无法从Imail 邮件服务器上访问
LDAP 信息, 用户可以更改Outlook Express 的设置. 如果该用户还没有建立IMail
LDAP 记录, 需要以下得步骤创建:
1 在Outlook Express 中, 在Tools 菜单中选择Accounts --> Directory Service -
->Add --> Directory Service .
2 在文本框Internet directory (LDAP) server 中,输入Imail 服务器的名字或者是
IP 地址和其他的信息.
3 完成以后单击按钮Finish .
一旦用户建立了LDAP 记录,用户必须编辑以下得LDAP 属性:
1 在Outlook Express 中, 选择Accounts -> Directory Service.
2 选择LDAP account.
3 选择Properties, 然后单击Advanced 标签.
4 在文本框Search Base 中, 输入:
objectclass=Person.
5 单击Apply, 然后单击OK, 接着单击Close.
Populating the LDAP Database
如果你需要一次加入大量的用户,你可能希望能够批处理的完成.请参考
“Populating the LDAP Database (ldaper.exe)”.
登入
缺省的,LDAP 服务用系统账号登入。你可以在用Windows NT/2000 控制面板中的
Services applet小程序更改这个设定。
1 在控制面板中,双击小程序Services 。
2 选择IMail LDAP Server 然后单击Startup.
3 (可选)选择希望的Startup Type.
4 在Log On As 下,选择正确的账号:
System Account. 如果您有邮件主机使用Windows NT 用户数据库作为主机用户数据库,
请采用该账号。
Allow Service to Interact with Desktop.选在该方式在服务启动以后将会在桌面上创
建一个Imail 的图标。任何帐号都可以看到该图标。
This Account. Select如果你没有邮件主机采用Windows NT 用户数据库作为主机数据
库,你可以指定一个用户账号登入。请确认,该账号是某一邮件主机的管理员。
注意
如果你有某个邮件主机的用户数据库是基于外部数据库的,请确认该用户账号有权限访问
外部数据库。
配置LDAP 服务器
1 在IMail Administrator 中, 在左边的面板中选择“localhost”.
2 选择目录“Services”, 然后单击按钮LDAP. LDAP 标签出现.
3 输入在后面描述的选项配置LDAP 服务器.
4 单击按钮Apply 保存你得设置.
5 更改设置以后,停止服务,等待5-10 秒然后重新启动服务以确保设置生效.设置将会
被自动的保留.
日志选项
在框Log To 中,选择你希望使用得日志记录方式。
• sysMMDD.TXT .改选项会把事件信息记录到一个纯文本文件中。mm 代表月份, dd 代表日
期。改文件存在于目录Spool .
• No Log. 该选项关闭日志功能。
• App Log . 该选项利用Windows NT 应用程序日志记录事件日志。
• Log Server . 该选项利用日志服务器文件记录日志。文件由标签Log Files 中指定,存
在于目录Spool 中。
Allow queries only. 当选中该选项时,LDAP 客户端向LDAP 服务器查询LDAP 信息,
得到查询结果。但是不能输入或者修改LDAP 信息。
Allow “Search All” requests. 你可以关闭该选项以强迫LDAP 客户端在进行查询时
提供查询的条件。
Maximum number of matches returned per request. 设置该数值为一个较低的数字,以
限制因为LDAP 请求产生的服务数目。
Referrals. 设置对其他的LDAP 数据库的引用. 该功能可以在LDAP 客户端无法在本地
的LDAP 服务器上找到需要的信息时,可以在其它的哪些LDAP 服务器寻找:
Mode. 决定了对于LDAP 客户端的查询的反馈。
• Send data only 只反馈Imail LDAP 服务器上的数据,不返回引用。
• Send referral only 只反馈其他的LDAP 服务器的主机名的引用。
• Send both 反馈Imail LDAP 服务器上的数据,同时也反馈其他的LDAP 服务器的主机
名的引用。
Hosts. 输入其他的远端的LDAP 服务器的主机名。你可以输入多个主机名,之间用逗号
隔开。
Server Status. 在按钮Start/Stop 左边出现的显示当前服务器状态的信息。包括版本
信息,服务是否正在运行。
Start/Stop Service. 该按钮用来启动/停止服务。

参考资料:http://www.5dmail.net/html/2004-9-21/200492102235.htm

参考技术B 介绍如何安装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数据库的连接过程的输出
参考技术C   OpenLDAP是轻型目录访问协议(Lightweight Directory Access Protocol,LDAP)的自由和开源的实现,在其OpenLDAP许可证下发行,并已经被包含在众多流行的Linux发行版中。
  它主要包括下述4个部分:
  slapd - 独立LDAP守护服务
  slurpd - 独立的LDAP更新复制守护服务
  实现LDAP协议的库
  工具软件和示例客户端
参考技术D openldap-2.1.17
简单介绍OpenLDAP
下载地址(HTTP):
下载地址 (FTP): ftp://ftp.OpenLDAP.org/pub/OpenLDAP/openldap-release/openldap-2.1.17.tgz
使用版本: 2.1.17
软件包大小: 2.0 MB
预计磁盘使用空间: 102 MB

OpenLDAP 提供了一个 Lightweight Directory Access Protocol(轻量目录控制协议) 的开放源码实现。

OpenLDAP 依赖于: db-4.1.25

安装 OpenLDAP
安装OpenLDAP 可以使用下面命令:

./configure --prefix=/usr --sysconfdir=/etc --disable-debug \
--libexecdir=/usr/sbin --enable-ldbm &&
make depend &&
make &&
make test &&
make install &&

安装命令解释
--prefix=/usr:把差不多所有文件的安装路径前缀设置为 /usr.

--sysconfdir=/etc:把配置文件路径前缀改成 /etc,而不是缺省的 /usr/etc.

--libexecdir=/usr/sbin:把服务器的可执行程序放在 /usr/sbin 而不是缺省的 /usr/libexec.

--enable-ldbm:使用最新版本的 Berkely DB.

--disable-debug:禁止调试代码。

make test:验证软件包是否编译正确。

配置 OpenLDAP
ldap 所需的唯一配置是运行 ldconfig. LDAP 服务器用 /usr/sbin/slapd 来运行,在 slapd(8) 的 man 手册页里有说明。

可以用 ldapadd 把数据增加到 LDAP 数据库。其他可以使用这个数据库的程序包括 ldapsearch, ldapmodify, ldapdelete, 和 ldappasswd.要了解更多信息,请查阅相应的 man 手册页。

内容
OpenLDAP 包括 slapd, slurpd, LDAP 库文件, 和多种工具,程序以及示例客户端。

说明
slapd
slapd 是独立进程的 LDAP 服务器.

slurpd
slurpd 是独立进程的 LDAP 副本服务器。

LDAP 库文件
LDAP 库文件支持 LDAP 程序,向其他程序提供 LADP 接口。

工具,程序以及示例客户端
软件包还提供了多种支持性程序。

兄弟 我打了好长时间 你不会不给我分吧 - - !

OpenLDAP主配置文件slapd.conf介绍

include /etc/openldap/openldap/schema/core.schema
此 句是用来将目录所用到的schema文件包含进来;openldap一般默认带有几个schema,在我们的配置文件安装目录下的schema目录中存 放。本句中的core.schema是LDAP V3中必须的,它给出了LDAP V3中最基本的attribute和objects的定义。其它的还有:corba.schema、dyngroup.schema、 java.schema nis.schema、openldap.schema、cosine.schema、 inetorgperson.schema、misc.schema、ppolicy.schema
pidfile /usr/local/openldap/var/run/slapd.pid
此句用来定义slapd进程运行时的pid文件,需要使用绝对路径。
argsfile /usr/local/openldap/var/run/slapd.args
此句用来定义包含当前正在运行的slapd进程所用到的命令行参数的文件,需要使用绝对路径。
# Load dynamic backend modules:
# modulepath /usr/local/openldap/libexec/openldap
# moduleload back_bdb.la
# moduleload back_ldap.la
# moduleload back_ldbm.la
# moduleload back_passwd.la
# moduleload back_shell.la
以上用来指定动态加载的后端模块。
# Sample security restrictions
# Require integrity protection (prevent hijacking)
# Require 112-bit (3DES or better) encryption for updates
# Require 63-bit encryption for simple bind
# security ssf=1 update_ssf=112 simple_bind=64
以上是安全相关的声明语句。常用到的参数有五类,除了Require和security外还有Allow、Disallow和password-hash等。
Require参数用来使管理员指定访问目录时必须遵循的规则和条件;这种指定可以是全局的,也可以仅用来限制对某个后端数据库的访问限制。
security参数用来让管理员指定加强安全性的一般规则。
# Sample access control policy:
# Root DSE: allow anyone to read it
# Subschema (sub)entry DSE: allow anyone to read it
# Other DSEs:
# Allow self write access
# Allow authenticated users read access
# Allow anonymous users to authenticate
# Directives needed to implement policy:
# access to dn.base="" by * read
# access to dn.base="cn=Subschema" by * read
# access to *
# by self write
# by users read
# by anonymous auth
#
# if no access controls are present, the default policy
# allows anyone and everyone to read anything but restricts
# updates to rootdn. (e.g., "access to * by * read")
#
# rootdn can always read and write EVERYTHING!
以上主要是用来定义访问控制列表。
#######################################################################
# BDB database definitions
#######################################################################
database bdb
定义使用的后端数据存储方式。其后可以跟的值有bdb、ldbm、passwd和shell。bdb指使用Berkley DB 4数据库。
suffix "dc=my-domain,dc=org"
定义suffix,以上部分可以改作你的域名中相关的部分,如"dc=example,dc=com"。
rootdn "cn=Manager,dc=mydomain,dc=org"
定义此目录的超级管理员帐号,类同于系统中的root。由于访问控制对此用户是不生效的,因此存在很大的安全隐患。建议安装配置及调试完成以后移除此帐号。
rootpw secret
定 义超级管理员帐号的密码,这里使用的是明文存储(secret即是其密码)的方式。这是极不安全的,建议使用加密方式存储,可以使用的加密方式有: CRYPT、MD5、SMD5、SHA和SSHA。产生加密密码散列的方法是使用slappasswd命令,用-h选项指明加密时使用的方式。示例如下:
# /usr/local/openldap/sbin/slappasswd -h {SSHA}
New password: 
Re-enter new password: 
{SSHA}k2H1GPM/95VfgsKg2jZv9hV+2GCH04hC
directory /usr/local/openldap/var/openldap-data
这一句用来指定目录相关数据的存放位置。此目录最好只能由运行slapd进程的用户所有,推荐权限为700
index objectClass eq
此 句用来指定slapd索引时用到的attribute,eq指索引时的匹配规则。主要是用来优化查询的。常用到的匹配规则有:approx(模糊匹配, approximate)、eq(精确匹配,equality)、pres(现值匹配,若某记录的此attribute没有值则不进行匹配, presence)和sub (子串匹配,substring)。

有时候由于数据库损坏数据有问题,可以清除 /var/lib/ldap/目录下所有文件。


本文出自 “smile_青春” 博客,请务必保留此出处http://smileyouth.blog.51cto.com/7273768/1746929

以上是关于OpenLDAP是?的主要内容,如果未能解决你的问题,请参考以下文章

openldap ldapadd导入ldap数据库问题

Openldap安装部署

OpenLdap介绍

windows的域使用openldap作为用户权限认证

03-openldap服务端安装配置

OpenLDAP学习笔记(基于OpenLDAP-2.4.x)