openldap在windows安装配置
- 格式:docx
- 大小:278.02 KB
- 文档页数:8
Windows下安装使用openldapopenldap 比起其他商业目录服务器(比如 IBM Directory Server),特别的轻巧,十分适合于本地开发测试用,在产品环境中的表现也很优秀。
openldap 软件在它的官方网站, 不过下载过来是源代码,并没有包含 win32 下的 Makefile 文件,只提供了在 Unix/Linux 下编译用的 Makefile。
所以相应的在网上介绍在 windows 下安装使用 openldap 的资料比较少,而在 Unix/Linux 下应用文档却很丰富。
本文实践了在 Windows 下安装配 openldap,并添加一个条目,LdapBrowser 浏览,及 Java 程序连接 openldap 的全过程。
1. 下载安装 openldap for windows,当前版本2.2.29下载地址:/openldap/openldap-2.2.29/openldap-2.2.29-db-4.3.29-openssl-0.9.8a-win32_Setup.exe相关链接:/hacks/openldap/安装很简单,一路 next 即可,假设我们安装在 c:\openldap2. 配置 openldap,编辑 sldap.conf 文件1) 打开 c:\openldap\sldap.conf,找到include C:/openldap/etc/schema/core.schema,在它后面添加include C:/openldap/etc/schema/cosine.schemainclude C:/openldap/etc/schema/inetorgperson.schema接下来的例子只需要用到以上三个 schema,当然,如果你觉得需要的话,你可以把其他的 schema 全部添加进来include C:/openldap/etc/schema/corba.schemainclude C:/openldap/etc/schema/dyngroup.schemainclude C:/openldap/etc/schema/java.schemainclude C:/openldap/etc/schema/misc.schemainclude C:/openldap/etc/schema/nis.schemainclude C:/openldap/etc/schema/openldap.schema2) 还是在 sldap.conf 文件中,找到suffix "dc=my-domain,dc=com"rootdn "cn=Manager,dc=my-domain,dc=com"把这两行改为suffix "o=tcl,c=cn"rootdn "cn=Manager,o=tcl,c=cn"suffix 就是看自己如何定义了,后面步骤的 ldif 文件就必须与它定义了。
LDAP完全配置管理用户组服务器端一:安装相关软件yum -y install openldap* db4*二:安装配置1 创建复制BDB数据库配置文件LDAP服务器默认采用BDB(伯克利)数据库作为后台,CentOS中已经默认安装,需要先将/etc/openldap/目录下的DB-CONFIG.example文件复制到/var/lib/ldap/目录下并更名为DB-CONFIG并更改权限为ldap所有。
#cp /etc/openldap/DB_CONFIG.example /var/lib/ldap/DB_CONFIG#useradd -s /sbin/nologin ldap#chown ldap:ldap /var/lib/ldap/DB_CONFIG2 LDAP服务器的主配置文件为/etc/openldap/slapd.conf,找到suffix “dc=my-domain,dc=com”rootdn “cn=Manager,dc=my-domain,dc=com” 两行。
根据实际情况修改为:suffix “dc=langtaojin,dc=com” 设定域名后缀rootdn “cn=Manager,dc= langtaojin,dc=com ” 超级管理员密码设为简单的明码,把rootpw secret这行前面的注释去掉,注意此行前面一定不要留空格。
将secret替换成123456(自定义密码)(或者用slappasswd -h{SSHA} -s 123456生成你的暗文密码)找到access配置部分,添加如下语句:access to attrs=shadowLastChange,Userpasswordby self writeby * authaccess to *by * readLDAP服务器需要手动添加日志功能。
/etc/openldap/slapd.conf中末行添加directory /var/lib/ldaploglevel 296cachesize 1000checkpoint 2048 10local4.* /var/log/ldap.log (說明:local0-7为syslog的facilities,具体的程序应用的facility不一样,每一个facility都有它的数字代码,由这些代码加上错误信息的程度syslog 可以判断出信息的优先权。
导读LDAP(轻量级目录访问协议,Lightweight Directory Access Protocol)是实现提供被称为目录服务的信息服务。
目录服务是一种特殊的数据库系统,其专门针对读取,浏览和搜索操作进行了特定的优化。
目录一般用来包含描述性的,基于属性的信息并支持精细复杂的过滤能力。
目录一般不支持通用数据库针对大量更新操作操作需要的复杂的事务管理或回卷策略。
而目录服务的更新则一般都非常简单。
这种目录可以存储包括个人信息、web链结、jpeg图像等各种信息。
为了访问存储在目录中的信息,就需要使用运行在TCP/IP 之上的访问协议—LDAP。
LDAP目录中的信息是是按照树型结构组织,具体信息存储在条目(entry)的数据结构中。
常见的例子是通讯簿,由以字母顺序排列的名字、地址和电话号码组成。
目录服务与关系数据库之间的主要区别在于:二者都允许对存储数据进行访问,只是目录主要用于读取,其查询的效率很高,而关系数据库则是为读写而设计的。
也就是目录服务不适于进行频繁的更新,属于典型的分布式结构。
总结:对于查询操作多于更新操作的(认证)系统来说,使用OpenLDAP是一个比关系数据库如MySq、PostgreSQL等更好的选择。
LDAP的功能在LDAP的功能模型中定义了一系列利用LDAP协议的操作,主要包含以下4部分:查询操作:允许查询目录和取得数据,其查询性能比关系数据库好。
更新操作:目录的更新操作没关系数据库方便,更新性能较差,但也同样允许进行添加、删除、修改等操作。
复制操作:前面也提到过,LDAP是一种典型的分布式结构,提供复制操作,可将主服务器的数据的更新复制到设置的从服务器中。
认证和管理操作:允许客户端在目录中识别自己,并且能够控制一个会话的性质。
而本文所要将的OpenLDAP就是一个优秀的开源的LDAP实现。
OpenLDAP安装配置及疑惑解答1. 安装和配置OpenLDAP安装软件非常简单,但在配置过程中遇到了不少坎坷,不是服务启动不成功就是验证不成功。
Windows下OpenLDAP的安装与配置本文主要参考官方文档:/doc/admin24/quickstart.html和网上流传的教程:/?p=462OpenLDAP下载地址:/openldap/openldap-2.2.29/openldap-2.2.29-db-4.3.29-openssl-0.9.8a-win32_Setup.exe下载后点击安装即可。
配置sldap.conf :在安装目录下找到sldap.conf ,修改配置如下:suffix "dc=example,dc=com"rootdn "cn=Manager,dc=example,dc=com"rootpw secret启动OpenLDAP:进入cmd命令行,跳转到OpenLDAP安装目录下,运行:slapd -d 1用可以看到控制台下打印一片信息,openldap 默认是用的 Berkeley DB 数据库存储目录数据的。
再开一个cmd,跳转到OpenLDAP安装目录下。
测试OpenLDAP是否正常启动:ldapsearch -x -s base (objectclass=*) namingContexts官方文档里,这一条命令加了些单引号,但带单引号的命令在Windows环境下跑不通。
后面的命令也都避免使用引号。
如果返回:dn:namingContexts: dc=example,dc=com则说明OpenLDAP成功启动增加一个条目:1.做一个LDIF文件2.使用ldapadd命令1.在安装目录下,新建文件example.ldif,输入如下内容:dn: dc=example,dc=comobjectclass: dcObjectobjectclass: organizationo: Example Companydc: exampledn: cn=Manager,dc=example,dc=comobjectclass: organizationalRolecn: Manager注意:在文档每一行的开头和结尾不要有空格,文档最后最好也别回车。
一.Openldap的安装1.利用yum方式安装openldapyum install openldapopenldap-servers openldap-clients openldap-develcompat-openldap2.配置日志mkdir /var/log/slapdchmod 755 /var/log/slapd/chownldap:ldap /var/log/slapd/sed -i "/local4.*/d" /etc/rsyslog.confcat >> /etc/rsyslog.conf<< EOFlocal4.* /var/log/slapd/slapd.logEOFservice rsyslog restart3. 创建管理员密码,尽量使用高强度密码这里我设置的密码为3329728,ssha加密后生成的{SSHA}DOS0VOBzmvD3beMsuFllLBOi6CAt4Kcj 一会配置文件要用[root@openldap-master~]#slappasswdNew password:Re-enter new password:{SSHA}DOS0VOBzmvD3beMsuFllLBOi6CAt4Kcj4.修改slapd.conf配置为了使用默认的slapd.conf这种配置方式,我们移除slapd.d这个目录,并复制默认的slapd.conf文件。
命令如下Cp/usr/share/openldap-servers/slapd.conf.obsolete/etc/openldap/slapd.confmv /etc/openldap/slapd.d{,.bak}(备份slapd.d为slapd.bak)然后我们用vi修改/etc/openldap/spapd.conf这个文件修改suffix和rootdn,rootpw这几个的值其中rootpw后面是上面生成的sha密码!.Suffix后面可以是一级域名也可以是二级域名,这里我们用的是一级域名。
Windows 下搭建LDAP服务器并使用JNDI访问一、OpenLDAP安装和配置安装还是比较简单的,一直next就好。
这里记得把上面2个都选上,将LDAP注册为系统的一个服务,默认安装位置:C:\Program Files\OpenLDAP,进入安装目录,编辑slapd.conf文件:找到ucdata-path ./ucdatainclude ./schema/core.schema在下面加入:(注意你的系统路径,可能随安装位置不同而稍有差异)include ./schema/core.schemainclude ./schema/corba.schemainclude ./schema/dyngroup.schemainclude ./schema/java.schemainclude ./schema/misc.schemainclude ./schema/cosine.schemainclude ./schema/nis.schemainclude ./schema/inetorgperson.schemainclude ./schema/openldap.schema这个搞定以后,在同一文件后面的(大概65-66行,修改)suffix “o=anotherbug,c=com”rootdn “cn=manager,o=anotherbug,c=com”还有第70行的位置:rootpw secret,这里要修改为加密后的密码。
具体操作:打开命令行,定位到安装目录下,输入:slappasswd -h {MD5} –s “替换为你想要设置的密码,无引号”将生成的MD5密文:{MD5}Xr4ilOzQ4PCOq3aQ0qbuaQ==填入原来secret位置。
OK至此配置已经搞定,可以测试一下服务了。
打开命令行转到安装目录下输入:sldapd -d 1至此LDAP服务器已经搭建并可以跑起来了.下面要来测试怎么倒入.ldif格式的数据了。
OpenLdap使用手册一、文档概述 (2)二、LDAP简介 (2)2.1 LDAP介绍 (2)2.2 LDAP优劣 (3)2.3 LDAP协议 (3)2.4 LDAP服务器 (4)2.5 LDAP使用权限 (4)2.6 LDAP目标 (4)三、安装配置 (5)3.1 软件安装 (5)3.2 软件配置 (5)3.3 软件运行 (5)3.4 初始数据 (6)四、LDAP应用 (8)4.1 LDAP常用属性 (8)4.2LDAP Schema语法 (9)五、LDAP客户端 (9)5.1 增加目录属性 (10)5.2 删除目录属性 (11)5.3 修改目录属性 (11)5.4 增加目录 (11)5.5 修改目录 (12)5.6 删除目录 (13)六、应用举例 (14)附录: (15)X.500 (15)一、文档概述本文从介绍ldap入手,讲述了ldap的使用场合,并进一步的指导用户进行openldap安装与配置。
是新手入门的一个教程。
二、LDAP简介2.1 LDAP介绍LDAP的英文全称是Lightweight Directory Access Protocol,它是基于X.500标准的,但是简单多了并且可以根据需要定制。
与X.500不同,LDAP支持TCP/IP,这对访问Internet是必须的。
LDAP的核心规范在RFC中都有定义,所有与LDAP相关的RFC都可以在LDAPman RFC网页中找到。
LDAP目录中可以存储各种类型的数据:电子邮件地址、邮件路由信息、人力资源数据、公用密匙、联系人列表,等等。
通过把LDAP目录作为系统集成中的一个重要环节,可以简化员工在企业内部查询信息的步骤,甚至连主要的数据源都可以放在任何地方。
2.2 LDAP优劣目录服务的数据类型主要是字符型,为了检索的需要添加了BIN(二进制数据)、CIS(忽略大小写)、CES(大小写敏感)、TEL(电话型)等语法(Syntax),而不是关系数据库提供的整数、浮点数、日期、货币等类型,同样也不提供象关系数据库中普遍包含的大量的函数,它主要面向数据的查询服务(查询和修改操作比一般是大于10:1),不提供事务的回滚(rollback)机制,它的数据修改使用简单的锁定机制实现All-or-Nothing,它的目标是快速响应和大容量查询并且提供多目录服务器的信息复制功能。
RHEL6 OPENLDAP 的搭建及本地帐户向LDAP 的迁移一. 服务器环境准备1.防火墙、selinux配置安装RHEL6.0操作系统(注意是RHEL6.0,因为不同版本操作系统对应修改的配置文件可能就不一样)配置前我们需要先关闭iptables和selinux。
[root@ldap ~]# iptables -F[root@ldap ~]# service iptables saveiptables:将防火墙规则保存到 /etc/sysconfig/iptables: [确定] [root@ldap ~]# service iptables stopiptables:清除防火墙规则: [确定] iptables:将链设置为政策 ACCEPT:filter [确定] iptables:正在卸载模块: [确定] [root@ldap ~]# chkconfig iptables off[root@ldap ~]# setenforce 0[root@ldap ~]# getenforcePermissive[root@ldap ~]# grep disabled /etc/selinux/config# disabled - No SELinux policy is loaded.SELINUX=disabled2.网卡文件配置[root@ldap ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0DEVICE="eth0"HWADDR="00:0C:29:97:96:05"NM_CONTROLLED="yes"ONBOOT="static"IPADDR=192.168.37.37NETMASK=255.255.255.0GATEWAY=192.168.37.1DNS1=192.168.37.373.主机名配置[root@ldap ~]# cat /etc/sysconfig/networkNETWORKING=yesHOSTNAME=二. 安装配置Bind DNS Server1.安装软件Bind软件包Linux下面使用的DNS服务端软件叫bindrpm -qa | grep bind #查询是否安装了bind软件如果没有安装就需要安装了yum install bind* -y2.修改Bind配置文件修改根域配置文件如下,三个any。
OpenLDAP的安装配制当前(Debian/testing)提供的OpenLDAP的版本是: bf 2.3.25-1$ sudo aptitude install slapd ldap-utilsReading package lists... DoneBuilding dependency tree... DoneReading extended state informationInitializing package states... DoneReading task descriptions... DoneBuilding tag database... DoneThe following NEW packages will be automatically installed:db4.2-util libiodbc2 libldap-2.3-0The following NEW packages will be installed:db4.2-util ldap-utils libiodbc2 libldap-2.3-0 slapd0 packages upgraded, 5 newly installed, 0 to remove and 0 not upgraded. Need to get 1791kB of archives. After unpacking 4502kB will be used. Do you want to continue? [Y/n/?]Y其中:slapd 提供LDAP服务ldap-utils 提供客户工具安装完毕后, 其配制文件位于/etc/ldap/目录下:tony@tonybox:~$ ls -l /etc/ldap/total 16-rw-r--r-- 1 root root 333 2006-06-19 17:56 ldap.confdrwxr-xr-x 2 root root 4096 2006-12-29 11:33 schema-rw------- 1 root root 4351 2006-12-29 11:33 slapd.conf/etc/ldap/schema/目录下为schema文件$ ls /etc/ldap/schema/ -ltotal 208-rw-r--r-- 1 root root 8231 2006-11-11 05:39 corba.schema-rw-r--r-- 1 root root 20591 2006-11-11 05:39 core.ldif-rw-r--r-- 1 root root 19762 2006-11-11 05:39 core.schema-rw-r--r-- 1 root root 74080 2006-11-11 05:39 cosine.schema-rw-r--r-- 1 root root 1553 2006-11-11 05:39 dyngroup.schema-rw-r--r-- 1 root root 6360 2006-11-11 05:39 inetorgperson.schema-rw-r--r-- 1 root root 13984 2006-11-11 05:39 java.schema-rw-r--r-- 1 root root 2471 2006-11-11 05:39 misc.schema-rw-r--r-- 1 root root 7723 2006-11-11 05:39 nis.schema-rw-r--r-- 1 root root 3391 2006-11-11 05:39 openldap.ldif-rw-r--r-- 1 root root 1601 2006-11-11 05:39 openldap.schema-rw-r--r-- 1 root root 19689 2006-11-11 05:39 ppolicy.schema-rw-r--r-- 1 root root 2968 2006-11-11 05:39 README3.2 启动与停止服务启动$ sudo /etc/init.d/slapd start服务停止$ sudo /etc/init.d/slapd stop 服务重启$ sudo /etc/init.d/slapd restsart可以通过以下命令查看slapd是否启动$ ps aux |grep slapdopenldap 6406 0.0 0.2 14608 2764 ? Ssl 13:27 0:00/usr/sbin/slapd -g openldap -u openldaptony 6417 0.0 0.0 4892 752 pts/1 R+ 13:28 0:00 grep slapd3.3 配制比如说我们的域名是, 在配制文件/etc/ldap/slapd.conf中可以做如下调整database bdb #设置使用的资料库suffix "dc=debsir,dc=org" #设置目录后缀rootdn "cn=admin,dc=debsir,dc=org" #设置目录管理员directory "/var/lib/ldap" #设置数据库路径rootpw secret #设置管理密码这里用了明文的“secret”密码。
openLdap安装教程环境操作系统:centOS 7.0 OpenLDAP:2.4.X安装从yum源安装yum install openldap openldap-servers openldap-clients -y配置执⾏如下命令来初始化OpenLdap的配置cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG在/etc/openldap⽬录下新建openLdap配置⽂件cd /etc/openldaptouch slapd.confslapd.conf的⽂件内容为include /etc/openldap/schema/corba.schemainclude /etc/openldap/schema/core.schemainclude /etc/openldap/schema/cosine.schemainclude /etc/openldap/schema/duaconf.schemainclude /etc/openldap/schema/dyngroup.schemainclude /etc/openldap/schema/inetorgperson.schemainclude /etc/openldap/schema/java.schemainclude /etc/openldap/schema/misc.schemainclude /etc/openldap/schema/nis.schemainclude /etc/openldap/schema/openldap.schemainclude /etc/openldap/schema/ppolicy.schemainclude /etc/openldap/schema/collective.schema# OpenLDAP 服务允许连接的客户端版本。
Openldap在windows下的安装及配置
准备工作
Openldap官网只提供了linux平台相关安装文件,windows平台的安装包可以在以下网站下载:
erbooster.de/download/openldap-for-windows.aspx(本文使用:2.4.34)
/projects/openldapwindows/files/
http://sourceforge.jp/projects/openldapwin32/releases/
安装过程
按照提示一直next,直到安装完成:
安装完成后,在系统服务中,找到openldap service,根据自己的需要将启动类型修改为自动或手动。
配置过程
安装目录:E:\servers\OpenLDAP
编辑文件:E:\servers\OpenLDAP\slapd.conf 修改如下内容suffix "dc=maxcrc,dc=com"
rootdn "cn=Manager,dc=maxcrc,dc=com"
修改为:
suffix "dc=merit "
rootdn "cn=Manager,dc=merit"
新建一个文件:E:\servers\OpenLDAP\merit.ldif 内容如下
dn: dc=merit
objectClass: domain
objectClass: top
dc: merit
dn: ou=erds,dc=merit
objectclass: top
objectclass: organizationalUnit
ou: erds
dn: ou=tim,dc=merit
objectclass: top
objectclass: organizationalUnit
ou: tim
在系统服务中,找到openldap service,停止服务
再控制台中切换到openldap安装目录下执行命令:Slapadd–v –l merit.ldif
运行结果如下:
在系统服务中再启动openldap service即可。
可通过工具或代码连接目录服务显示正常即可。
schema管理
新建文件:E:\servers\OpenLDAP\schema\merit.schema 添加类似内容
attributetype ( 1.1.1.1.1.1
NAME 'meritAttr'
DESC 'meritAttr'
EQUALITY caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32768}
SINGLE-VALUE(选填,不填默认多值) )
objectclass ( 1.1.1.2.1.1
NAME 'meritClass'
DESC 'meritClass'
SUP top
MUST ou
MAY ( meritAttr $ sn $ cn ) )
编辑文件:E:\servers\OpenLDAP\slapd.conf 添加内容如下:include ./schema/merit.schema
重新启动openldap service,添加的schema即生效。