OpenLDAP在win2008上安装配置
业务需要,将企业员工信息统一管理,OpenLdap是目录数据库和一套访问协议组成的系统,适合使用,它有以下特点:
- LDAP的结构用树来表示
- C/S模型,Server用户存储数据,Client为操作目录树的工具
- 查询数据比较快,修改和添加的话,会相对较慢
- LDAP协议是跨平台的,所以不需要考虑系统的问题
- OpenShift、CloudForms、Alfresco等,都支持LDAP的集成
安装准备工作:
- 官网地址:
http://www.userbooster.de/en/download/openldap-for-windows.aspx
- 百度云地址:
链接: http://pan.baidu.com/s/1pKIiQqZ 密码: qc3p
安装步骤
在win2008上安装,是很简单步骤
1.
2.
3.
4.
5.
6.
简单导入数据,使用
在安装目录下,添加一个data.ldif的文件
一:data.ldif的文件内容如下:
dn:dc=ecdata,dc=com
objectclass:top
objectclass:domain
dc:ecdata
o:ecdata,Inc
dn:ou=managers,dc=ecdata,dc=com
ou:managers
objectclass:organizationalUnit
dn:cn=Kevin,ou=managers,dc=ecdata,dc=com
cn:Kevin
sn:Black
objectclass:person
dn:ou=employees,dc=ecdata,dc=com
ou:employees
objectclass:organizationalUnit
dn:cn=Mary,ou=employees,dc=ecdata,dc=com
cn:Mary
sn:Brown
objectclass:person
二:修改第二个地方:
三:使用cmd命令,将数据导入到数据库
注:1:如果ldap server开着呢,请将它关闭
2:再执行slapadd -v -1 data.ldif
3:再启动ldap server
到目前,已经安装成功,并导入了ldif格式的数据,到库里。
可以通过客户端,访问了。
客户端的使用
LDAP管理工具Apache Directory Studio下载地址:
http://directory.apache.org/studio/
授权后可以在studo里,进行CRUD的操作,密码:secret(安装时设置的)
总结
遇到的问题如下:
1:ldap_url_parse_ext(ldap://localhost/)
ldap_init: trying .\ldap.conf
ldap_init: HOME env is NULL
ldap_init: trying ldaprc
ldap_init: LDAPCONF env is ..\etc\openldap\ldap.conf
ldap_init: trying ..\etc\openldap\ldap.conf
ldap_init: using ..\etc\openldap\ldap.conf
ldap_init: LDAPRC env is ..\bin\ldaprc
ldap_init: HOME env is NULL
ldap_init: trying ..\bin\ldaprc
ldap_init: using ..\bin\ldaprc
563ab66f @(#)
OpenLDAP:slapd2.4.38(Dec3201301:42:10)
@LONDON:/src/openldap-2.4.38/servers/slapd
563ab66f daemon_init: ldap://localhost/ ldaps://localhost/
563ab66f daemon_init: listen on ldap://localhost/
563ab66f daemon_init: listen on ldaps://localhost/
563ab66f daemon_init: 2 listeners to open…
ldap_url_parse_ext(ldap://localhost/)
563ab66f daemon: bind(2) failed errno=10013 (WSAEACCES)
563ab66f daemon: bind(3) failed errno=10013 (WSAEACCES)
563ab66f slap_open_listener: failed on ldap://localhost/
563ab66f slapd stopped.
563ab66f connections_destroy: nothing to destroy.
解决方案:
自己遇到问题原因:389端口占用
在windows命令行窗口下执行:
C:>netstat -aon|findstr “389”
TCP 127.0.0.1:389 0.0.0.0:0 LISTENING 2448
看到了吗,端口被进程号为2448的进程占用,继续执行下面命令:
C:>tasklist|findstr “2448”
AD 2016 Console 0 16,064 K
很清楚吧,AD占用了你的端口,Kill it
具体如何确认?是这样做的。