1 LDAP概念介绍(网上很多,摘录人家的)
LDAP(轻量级目录访问协议,Lightweight Directory Access Protocol)是实现提供被称为目录服务的信息服务。目录服务是一种特殊的数据库系统,其专门针对读取,浏览和搜索操作进行了特定的优化。目录一般用来包含描述性的,基于属性的信息并支持精细复杂的过滤能力。目录一般不支持通用数据库针对大量更新操作操作需要的复杂的事务管理或回卷策略。而目录服务的更新则一般都非常简单。这种目录可以存储包括个人信息、web链结、jpeg图像等各种信息。为了访问存储在目录中的信息,就需要使用运行在TCP/IP 之上的访问协议—LDAP。
LDAP目录中的信息是是按照树型结构组织,具体信息存储在条目(entry)的数据结构中。条目相当于关系数据库中表的记录;条目是具有区别名DN (Distinguished Name)的属性(Attribute),DN是用来引用条目的,DN相当于关系数据库表中的关键字(Primary Key)。属性由类型(Type)和一个或多个值(Values)组成,相当于关系数据库中的字段(Field)由字段名和数据类型组成,只是为了方便检索的需要,LDAP中的Type可以有多个Value,而不是关系数据库中为降低数据的冗余性要求实现的各个域必须是不相关的。LDAP中条目的组织一般按照地理位置和组织关系进行组织,非常的直观。LDAP把数据存放在文件中,为提高效率可以使用基于索引的文件数据库,而不是关系数据库。类型的一个例子就是mail,其值将是一个电子邮件地址。
LDAP的信息是以树型结构存储的,在树根一般定义国家(c=CN)或域名(dc=com),在其下则往往定义一个或多个组织 (organization)(o=Acme)或组织单元(organizational units) (ou=People)。一个组织单元可能包含诸如所有雇员、大楼内的所有打印机等信息。此外,LDAP支持对条目能够和必须支持哪些属性进行控制,这是有一个特殊的称为对象类别(objectClass)的属性来实现的。该属性的值决定了该条目必须遵循的一些规则,其规定了该条目能够及至少应该包含哪些属性。例如:inetorgPerson对象类需要支持sn(surname)和cn(common name)属性,但也可以包含可选的如邮件,电话号码等属性。
参考:
2 OpenLDAP安装
下载OpenLDAP的exe文件,执行安装即可,我安装到了F:\139\ldap。
百度云:http://pan.baidu.com/s/1boFMrPt
安装后的目录结构:
启动OpenLDAP:
进入F:\139\ldap\libexec目录下,点击StartLDAP:
也可以用命令行:
启动后:命令行打印许多信息,可以看到slad starting,则OpenLDAP启来了。
3 OpenLDAP配置
slapd.conf文件为OPenLDAP的配置文件,可以配置打印日志和登陆信息等
打开F:\139\ldap\etc\openldap目录下的slapd.conf文件,找到下图的位置进行配置。
文件中的suffix、rootdn和rootpw都可以按照规则自己定义。
4 使用工具管理OPenLDAP
ldapbrowser是连接OPenLDAP的图形化的工具,可以在网上下载安装。
百度云:http://pan.baidu.com/s/1eR9A4Xs
打开ldapbrowser后,如图填写:
连上后:
没有数据时,显示只有配置的根节点dc=project,dc=com,工具会报错:no.. object..什么的。你可以将自己定义的数据导入即可,详细的可以参考本文中的相关连接。
5 Window下openldap死慢死慢怎么办?
到libexe目录下,把StartLDAP.cmd用文本编辑器打开,把最后的-1改成0,让后台不打印交互信息。