CentOS上安装LDAP,Java访问LDAP数据。

1、CentOS上yum方式安装openldap

    查看有没下面4个相关的openldap包;

[root@RDCenter125 yzwei]# rpm -qa|grep openldap
openldap-servers-2.3.27-8.el5_2.4
openldap-devel-2.3.27-8.el5_2.4
openldap-clients-2.3.27-8.el5_2.4
openldap-2.3.27-8.el5_2.4
 

    没有的话通过下面命令安装;

[root@RDCenter125 yzwei]# yum install openldap openldap-servers openldap-clients openldap-devel
base                      100% |=========================| 1.1 kB    00:00     
updates                   100% |=========================|  951 B    00:00     
addons                    100% |=========================|  951 B    00:00     
extras                    100% |=========================| 1.1 kB    00:00     
Setting up Install Process
Parsing package install arguments
。。。。。。

[root@RDCenter125 yzwei]#
 

    yum命令一个好处就是解决了大部分的包依赖关联,不用自己去安装,比如openldap默认存储的数据放在bdb中,这些包我们不用关心就帮我们安装好啦!yum方式安装的openldap命令在"/usr/bin"、"、usr/sbin"目录下,

    如:

         /usr/bin/ldapsearch

         /usr/bin/ldapadd

         /usr/sbin/slapadd

         /usr/sbin/slapdel

 

2、ldap配置

    修改slapd.conf配置文件, 主要修改部分如下;

database        bdb

suffix          "dc=chinahcn,dc=com"                            #修改domain信息
rootdn        "cn=Manager,dc=chinahcn,dc=com"       #修改domain信息
# Cleartext passwords, especially for the rootdn, should
# be avoided.  See slappasswd(8) and slapd.conf(5) for details.
# Use of strong authentication encouraged.
# rootpw                secret
# rootpw                {crypt}ijFYNcSNctBYg
rootpw                secret                                             #打开密码保护
 

 

    建立ldap到bdb的连接,并启动ldap;

[root@RDCenter125 yzwei]# cp /etc/openldap/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
[root@RDCenter125 yzwei]#
[root@RDCenter125 yzwei]# service ldap start
Checking configuration files for slapd:  config file testing succeeded
[  OK  ]
Starting slapd: [  OK  ]
 

3、ldap数据导入

    先停掉ldap服务,然后导入用户数据(数据在附件压缩包中).

[root@RDCenter125 data]# service ldap stop
......
[root@RDCenter125 data]# slapadd -v -l root-unit.ldif
......
[root@RDCenter125 data]# slapadd -v -l users.ldif
......
 

    ldap的数据默认放在"/var/lib/ldap"目录下,通过root账户运行slapadd命令添加的数据产生的文件属性属于root用户root组,但是service启动ldap是用ldap用户启动的,所以需要把这些文件的属性修改一下。下面这句脚本代码非常重要,否则数据只能读不能修改删除,血的教训。

[root@RDCenter125 data]# chown -R ldap.ldap /var/lib/ldap/
[root@RDCenter125 data]# service ldap start
......

    至此服务器端ldap完成,服务器端占用的端口默认是389。

 

4、Java访问ldap数据

    这块主要参考“陈轶”的文章,具体见连接"http://blog.csdn.net/njchenyi/archive/2008/01/11/2037837.aspx".

    直接可用代码见附件Java4Ldap.rar。

 

5、至此Ldap服务器搭建至Java客户端访问全部完成。

你可能感兴趣的:(java,.net,centos,脚本,UP)