fedora26下安装和配置openldap(1)

来源:互联网 发布:贵州 大数据大诚信 编辑:程序博客网 时间:2024/05/29 18:41

2017/10/24  周二  大晴天

笔者已经被OpenLDAP折磨了俩星期,今天终于能用了(太菜啦再见...

我就把我自己完整的安装和配置过程写写吧 (大佬们请无视)

一、安装BerkeleyDB

 (1)Oracle官网下载安装包:

 http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/downloads/index.html

我刚开始下的是 Berkeley DB 6.2.32.tar.gz

(2)解压到本地

(3)切换到build_unix 目录

   # cd build_unix

   # ../dist/configure

   # make

   # make install

安装的默认路径是 /usr/local/BerkeleyDB.6.2

(4)查看安装

   # ls /usr/local/BerkeleyDB.6.2/lib

libdb-6.2.a   libdb-6.2.la  libdb-6.2.so   libdb-6.so   libdb.a  libdb.so 

 (5) 设置到系统变量

不设置的话,等下安装OpenLDAP时候执行./configure检查时候还会报同样的错

  # vim /etc/ld.so.conf

添加一行:

usr/local/BerkeleyDB.6.2/lib/

保存退出

执行生效:ldconfig –v


二、安装OpenLDAP

(1)去OpenLDAP官网下载安装包:

 http://www.openldap.org/software/download/

 我下载的是openldap-2.4.45.tgz(见附件)

(2)解压到本地

(3)切换到openldap目录下,执行configure文件

  #cd /home/zzj/openldap-2.4.45

  #./configure

执行后报错:

error: BerkeleyDB version incompatible with BDB/HDB backends

这个错误明显就是和之前装的BDB不匹配啊...然后我就懵了,内心OS:我哪知道openldap和哪个版本的BDB匹配阿??于是各种找网上的博客一通大改,然而并没有什么用,还是报同样的错误...就在我想改成用yum装的时候,我又打开了一篇博客,神奇的发现了README这个文件:

SLAPD:                                                                                                      BDB and HDB backends require Oracle Berkeley DB 4.4 - 4.8,         or 5.0 - 5.1.  It is highly recommended to apply the                          patches from Oracle for a given release.  

                              

与之匹配的版本里面写的很清楚啊!!!

好吧,只有重新下载BerkeleyDB了,我又从官网上下载了Berkeley DB 4.6.21.tar.gz,安装步骤同第一大点

(4)安装好匹配的BDB后,接着安装openldap

#./configure

#make depend

#make

#make install

到这里openldap-2.4.45已经成功的安装到我的系统当中,默认的配置文件在 /usr/local/etc/openldap 下。

三、配置ldap服务器

(1) 配置ldap的dc和cn

#vim /usr/local/etc/openldap/slapd.conf

修改其中的下面两行:

suffix      "dc=example,dc=com"

rootdn      "cn=Manager,dc=example,dc=com"

可以改成自己喜欢的域名:

database        bdb                                             suffix          "dc=zhouzj,dc=com"                       rootdn          "cn=Manager,dc=zhouzj,dc=com"rootpw          secret  

(2)启动slapd

#cd /usr/local/libexec/

#./slapd

验证一下能不能使用:

# ldapsearch -x -b '' -s base'(objectclass=*)'

                                                            # LDAPv3                                             # base <> with scope baseObject    # filter: (objectclass=*)# extended LDIF                                 #                                                            # LDAPv3                                             # base <> with scope baseObject    # filter: (objectclass=*)                      # requesting: ALL                               #                                                                                                                           #                                                            dn:                                                         objectClass: top                                   objectClass: OpenLDAProotDSE                                                                     # search result                                    search: 2                                              result: 0 Success                                                                                              # numResponses: 2                           # numEntries: 1


说明ldap服务器已经可以使用了。

(3)新建管理账号

建立一个user.ldif 文件

# vim user.ldif

dn: cn=Manager,dc=zhouzj,dc=comobjectclass: organizationalRole        cn: Manager

将账号导入插入数据库

# ldapadd -x -D "cn=Manager,dc=zhouzj,dc=com" -W -f user.ldif

如果需要密码,我的默认密码是:secret(位于/usr/local/etc/openldap/slapd.conf

Enter LDAP Password:                                               adding new entry "cn=Manager,dc=zhouzj,dc=com"

这里可以看到节点已经插入到ldap了。这里的zhouzj是我起的域名,您也可以根据需要设置一个自己喜欢的域名。

查询一下:

#ldapsearch -x -b "dc=zhouzj,dc=com"

# extended LDIF                                                        #                                                                                   # LDAPv3                                                                    # base <dc=zhouzj,dc=com> with scope subtree # filter: (objectclass=*)                                             # requesting: ALL                                                       #    # Manager, zhouzj.com                                              dn: cn=Manager,dc=zhouzj,dc=com                       objectClass: organizationalRole                                cn: Manager

添加成功!

这个时候说明Openldap已经可以使用了




 

原创粉丝点击