欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 锐评 > OpenLDAP 在 ubuntu 24.04 上安装

OpenLDAP 在 ubuntu 24.04 上安装

2025/11/10 18:06:09 来源:https://blog.csdn.net/weixin_43215826/article/details/148865241  浏览:    关键词:OpenLDAP 在 ubuntu 24.04 上安装

文章目录

      • 1. openldap 安装
      • 2. 配置 openldap
        • (1)使用命令直接修改原配置
        • (2)重新初始化的方式
      • 3. 查询
      • 4. 扩展

1. openldap 安装

$ apt-cache search openldap$ apt list -a slapd        // 可以使用的版本为 2.6.7
$ apt-get install slapd     // 第一次安装时会提示你输入管理员密码
...
Configuring slapd
-----------------Please enter the password for the admin entry in your LDAP directory.Administrator password:Please enter the admin password for your LDAP directory again to verify that you have typed it correctly.Confirm password:
...

// 卸载 slapd

$ apt-get remove slapd --purge          // 删除包,包含配置文件等
$ systemctl status slapd
$ systemctl enable slapd

默认情况下,管理员:cn=admin,dc=nodomain ,密码为刚才设置的密码
在这里插入图片描述

dc=nodomain 这是根据 olcSuffix 自动生成的根目录。

$ ldapsearch -x -b 'dc=nodomain' '(objectClass=*)'
# extended LDIF
#
# LDAPv3
# base <dc=nodomain> with scope subtree
# filter: (objectClass=*)
# requesting: ALL
## nodomain
dn: dc=nodomain
objectClass: top
objectClass: dcObject
objectClass: organization
o: nodomain
dc: nodomain# search result
search: 2
result: 0 Success# numResponses: 2
# numEntries: 1

2. 配置 openldap

(1)使用命令直接修改原配置
$ cat > change_suffix.ldif <<EOF
dn: olcDatabase={1}mdb,cn=config
changetype: modify
replace: olcSuffix
olcSuffix: dc=xiodi,dc=cndn: olcDatabase={1}mdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=admin,dc=xiodi,dc=cn
EOF$ ldapmodify -Y EXTERNAL -H ldapi:/// -f change_suffix.ldif

断开之前的连接,使用:cn=admin,dc=xiodi,dc=cn 再次连接,此时可以正常连接,但不会自动生成目录树,需要手工添加。
在这里插入图片描述

$ cat > root-tree.ldif <<EOF
dn: dc=xiodi,dc=cn
objectclass: top
objectclass: dcObject
objectclass: organization
o: aishangwei
dc: xiodi
EOF$ ldapadd -x -D "cn=admin,dc=xiodi,dc=cn" -W -f root-tree.ldif

// 刷新后查看
在这里插入图片描述

(2)重新初始化的方式

// 删除安装重新开始

$ apt-get remove slapd --purge
$ apt-get install slapd
$ cat /var/lib/ldap/data.mdb

[info]如果不删除重新安装的话,mdb 数据库会保留有之前的数据,也可以通过下面的方式删除数据。

在这里插入图片描述

// 生成加密密码

$ systemctl stop slapd
$ cd /etc/ldap
$ mv slapd.d slapd.d.bak
$ slappasswd
New password:
Re-enter new password:
{SSHA}WVbwMlKWGKu0Q7GEfitVZvkiRIZpJphP

// 配置初始文件

$ mkdir slapd.d
$ cp /usr/share/slapd/slapd.init.ldif ./
$ vim slapd.init.ldif
...
olcSuffix: dc=xiodi,dc=cn
...
olcRootDN: cn=xiodiadmin,dc=xiodi,dc=cn
olcRootPW: {SSHA}WVbwMlKWGKu0Q7GEfitVZvkiRIZpJphP
...$ slapadd -n 0 -F slapd.d -l slapd.init.ldif
$ chown -R openldap:openldap slapd.d
$ systemctl start slapd
$ systemctl status slapd

[warning]这里的 include 文件,我们保持了默认,如果需要添加或修改 include 文件,请注意顺序,有可能会导致生成配置文件失败。

// 配置基本域

$ cat > root-tree.ldif <<EOF
dn: dc=xiodi,dc=cn
objectclass: top
objectclass: dcObject
objectclass: organization
o: aishangwei
dc: xiodi
EOF$ ldapadd -x -D "cn=xiodiadmin,dc=xiodi,dc=cn" -W -f root-tree.ldif

3. 查询

// 查询

$ ldapsearch -x -b 'dc=xiodi,dc=cn' '(objectClass=*)'
$ ldapsearch -H ldapi:/// -Y EXTERNAL -b "cn=config" -LLL –Q

4. 扩展

// 初始化 slapd 配置脚本

$ cat  > init_slapd.sh <<EOF
#!/bin/bash
set -e
systemctl stop slapd
rm -rf /etc/ldap/slapd.d/*
slapadd -n 0 -F /etc/ldap/slapd.d -l /etc/ldap/slapd.init.ldif
chown -R openldap:openldap /etc/ldap/slapd.d
systemctl start slapd
EOF

[danger]注意,如果是生产环境下,请提前做好 /etc/ldap/slapd.d 目录的备份

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词