如何知道 openldap 指的是哪个 berkley db?

如何知道 openldap 指的是哪个 berkley db?

我在 RHEL 5.3 上安装了两个 Berkeley DB。现在,我很困惑,哪个 OpenLDAP 是其后端。

以下是 slapd.conf:

include /usr/local/etc/openldap2-4-30/schema/core.schema
include /usr/local/etc/openldap2-4-30/schema/cosine.schema
include /usr/local/etc/openldap2-4-30/schema/inetorgperson.schema

**# Define global ACLs to disable default read access.**

**# Do not enable referrals until AFTER you have a working directory**
**# service AND an understanding of referrals.**                  

pidfile /usr/local/var/openldap2-4-30/run/slapd.pid
argsfile    /usr/local/var/openldap2-4-30/run/slapd.args

**# rootdn can always read and write EVERYTHING!**
access to *
    by self write
    by * read

#########################################
**# uniquely identifies this server**
#########################################
serverID 1

#######################################################################
**# BDB database definitions**
#######################################################################
database bdb
suffix "dc=COMPANY,dc=CP"
rootdn "cn=Manager,dc=COMPANY,dc=CP"

**# Cleartext passwords, especially for the rootdn, should**
**# be avoid. See slappasswd(8) and slapd.conf(5) for details.**
**# Use of strong authentication encouraged.**
rootpw secret   

**# The database directory MUST exist prior to running slapd AND**
**# should only be accessible by the slapd and slap tools.**
**# Mode 700 recommended.**
directory   /usr/local/var/openldap2-4-30/Master1/openldap-data

请指导我如何知道在安装的 Berkeley DBS 中,OpenLDAP 使用哪个作为其后端?

注意:此问题链接到

slapd 未运行

感谢您。

答案1

看起来你应该只有一个根,每个新根包含一个

database        bdb
suffix  "dc=limepepper,dc=org"
directory       /var/lib/ldap/mycompany.org

類型块。

您是否已初始化新的根?

我认为您需要创建一个新的根 ldif 文件,并将这些条目导入到正在运行的 LDAP 服务器中,如下所示;

# cat /home/myuser/mynewroot.ldif
dn: dc=COMPANY,dc=CP
objectclass: dcObject
objectclass: organization
o: COMPANY CP
dc: COMPANY

dn: cn=Manager,dc=COMPANY,dc=CP
objectclass: organizationalRole
cn: Manager

然后将其导入到空的 LDAP 服务器中,如下所示;

# ldapadd -x -D "cn=Manager,dc=COMPANY,dc=CP" -W -f   /home/myuser/mynewroot.ldif

这里有一个关于设置新根的教程;
http://www.howtoforge.com/linux_openldap_setup_server_client

以及此处最小根所需的更多详细信息;
http://www.openldap.org/doc/admin22/dbtools.html

答案2

OpenLDAP 使用的数据库位于/usr/local/var/openldap2-4-30/Master1/openldap-data

答案3

怎么样:

$ ldd <path-to-slapd> | grep libdb

答案4

看来您在与 OpenLDAP 搏斗时混合了多个来源(信息和软件......)。我的建议:从头开始。

对于初学者,如果您yum install openldap-servers绝对不需要从网上下载任何 BDB 库,一切都为您设置好了。

其次,OpenLDAP 数据文件的“标准”路径是/var/lib/ldap。通常您不必关心这一点,您可以使用LDIF您选择的文本编辑器创建文件,然后使用slapadd命令创建这些 LDAP 树。之后,使用标准 LDAP 实用程序(例如Lumagqldapsearch/ldapadd/ldapremove您最喜欢的编程语言 LDAP 绑定)。

这是一个关于 (Open)LDAP 的优秀在线书籍,不要被标题吓到。

相关内容