基本配置

基本配置

我正在尝试设置一个测试 openldap 服务器,之前从未使用过 openldap。我在基于 redhat 的机器上使用标准 openldap-servers 包(使用 Oracle Linux)。我已经安装了这些包,并启动了服务器。

我现在不知道如何让服务器真正地做一些有用的事情;我无法使用 luma 浏览它(尝试访问顶级条目时出现“没有这样的对象”),openldap 文档对于如何真正让服务器进行基本的工作配置很晦涩,并且在线的所有信息都是针对旧的 slapd.conf 文件,而不是新的 slapd.d 和 cn=config。

我如何获得一个原始打包的 openldap 安装,以便我可以浏览到 luma 中的根 dn?

答案1

我感受到你的痛苦。

试试这个(它在 Scientific Linux 6.5 上测试过,所以它也应该在 OL 上运行):

  • 安装 OpenLDAP 服务器yum install openldap-servers openldap-clients:)
  • 开始slapd:(service slapd start也许chkconfig slapd on
  • cn=config使用 为 和您的普通 LDAP 管理员用户创建密码slappasswd。记下此输出。
  • 创建具有以下内容的 LDIF 文件:
dn:olcDatabase={0}config,cn=config
变更类型:修改
添加:olcRootPW
olcRootPW:{SSHA}TXcmvaldskl312012cKsPK1cY2321+aj

dn:olcDatabase={2}bdb,cn=config
变更类型:修改
添加:olcRootPW
olcRootPW:{SSHA}TXcmvaldskl312012cKsPK1cY2321+aj
-
替换:olcRootDN
olcRootDN:cn=a​​dmin,dc=your,dc=base,dc=com
-
替换:olcSuffix
olc后缀:dc=your,dc=base,dc=com
  • 的值应该被您之前记下olcRootPW的输出替换。slappaswd
  • 当然,olcSuffix并且olcRootDN应该适应您的新基础 DN。
  • 使用以下命令将所有这些提供给 LDAP 服务器:

    ldapmodify -a -Q -Y EXTERNAL -H ldapi:/// -f yourfile.ldif

此后,您应该能够通过 LDAP 连接到cn=config两者dc=your,dc=base,dc=com

答案2

在启动 OpenLDAP 服务器之前,您需要先设置一些东西。

基本配置

您需要设置 root 用户和密码,并定义基本 DN。在 中slapd.conf,查找以下行,并将它们设置为所需的值。

suffix "dc=example,dc=com"
rootdn "cn=root,dc=example,dc=com"

suffix通常,您的基本 DN(在文件中定义为)是您的域名的组成部分,以逗号分隔并以 为前缀dc=。因此,serverfault.com可能会变成dc=serverfault,dc=com。您的rootdn必须位于该后缀下。

您还需要更改定义 root 密码的行。您可以将其设置为纯文本值,或使用它slappasswd来创建哈希值。然后,您需要将纯文本值或哈希值放在slappasswd如下所示的行中:

rootpw myultrasecurepassword

架构

此时开始考虑要使用的架构是一个好主意。架构定义对象可以具有的属性,因此您需要包含包含所需属性的架构。这些架构包含在 的顶部slapd.conf,这里的架构通常是您需要的绝对基本架构:

include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/nis.schema

这些路径是 Arch Linux 中使用的路径,因此您可能需要调整它们以适合 Oracle Linux。

关于slapd.confvsslapd.d

OpenLDAP 已从离线配置(在 中完成slapd.conf)切换到在线配置,将数据存储在cn=config中的特殊树中slapd.d。修改ldifslapd.dslapd.conf是一个痛苦的过程,因此像上面那样编辑然后将其转换为新格式要容易得多slapd.d

首先,删除 中的所有内容slapd.d。接下来,运行以下命令,确保调整 Oracle Linux 的路径:

slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/

然后,只需将所有者递归地设置为该目录上的 LDAP 用户和组,就可以开始了。每次编辑时都需要这样做slapd.conf- 请记住在执行此操作之前停止 OpenLDAP 服务器!

初次运行

在实际使用目录之前,您需要创建基本 DN(和 root 用户)。创建一个.ldif文件,其中包含类似以下内容的行:

dn: dc=example,dc=com
objectclass: dcObject
objectclass: organization
o: example.com
dc: example

dn: cn=root,dc=example,dc=com
objectclass: organizationalRole
cn: root

现在启动 OpenLDAP 服务器。我们只需要将该信息推送到 LDAP 目录中:

ldapadd -D "cn=root,dc=example,dc=com" -W -f initial.ldif

显然,更改根 DN 和 ldif 文件名以匹配您所拥有的内容。

现在您应该已经设置好了一个可用的 LDAP 目录并准备进行填充!


Arch Linux wiki 是有关此主题的重要信息来源 - 请参阅https://wiki.archlinux.org/index.php/OpenLDAPhttps://wiki.archlinux.org/index.php/LDAP_Authentication如果你想了解更多。

相关内容