OpenLDAP管理命令详解

一、OpenLDAP命令汇总

  • ldapsearch:搜索 OpenLDAP 目录树条目。
  • ldapadd:通过 LDIF 格式,添加目录树条目。
  • ldapdelete:删除 OpenLDAP 目录树条目。
  • ldapmodify:修改 OpenLDAP 目录树条目。
  • ldapwhoami:效验 OpenLDAP 用户的身份。
  • ldapmodrdn:判断 OpenLDAP 目录树 DN 条目。
  • ldapcompare:判断 DN 值和指定参数值是否属于同一个条目。
  • ldappasswd:修改 OpenLDAP 目录树用户条目实现密码重置。
  • slaptest:验证 slapd.conf 文件或 cn=配置目录。
  • slapindex:创建 OpenLDAP 目录树索引,提供查询效率。
  • slapcat:将数据小牧转换为 OpenLDAP 的 LDIF 文件。

二、OpenLDAP命令用例

2.1 ldapsearch 命令

ldapsearch 命令可根据用户定义的查询条件,对 OpenLDAP 目录树进行查找以及检索目录树相关条目。

1. 查找目录树所有条目

ldapsearch -x -b "dc=kwang,dc=com"

2. 根据过滤条件查找条目

ldapsearch -x -b "dc=kwang,dc=com" '(cn=kwanggroup)'  #根据cn过滤
ldapsearch -x -b "dc=kwang,dc=com" '(uid=kwang)'   #根据用户id过滤

2.2 ldapadd 命令

根据 ldif 文件添加条目

ldapadd -x -w <pwd> -D "cn=Manager,dc=kwang,dc=com" -f base.ldif

base.ldif 内容容下:

dn: dc=kwang,dc=com
dc: kwang
objectClass: top 
objectClass: domain

dn: ou=People,dc=kwang,dc=com
ou: People
objectClass: top 
objectClass: organizationalUnit

dn: ou=Group,dc=kwang,dc=com
ou: Group
objectClass: top 
objectClass: organizationalUnit

2.3 ldapmodify 命令

ldapmodify 命令是固定的,主要是通过配置文件实现不同的修改功能。

ldapmodify -x -D "cn=Manager,dc=kwang,dc=com" -w <pwd> -f modi.ldif

1. 向条目下添加成员参数

modi.ldif 文件如下,表示向 admin 这个组中添加成员 kwang。

dn: cn=admin,ou=Group,dc=dc=kwang,dc=com
changetype: modify
add: memberUid
memberUid: kwang

2. 修改条目的某个值

modi.ldif 文件如下,表示修改 uid=kwang 这个用户的 uidNumber 参数。

dn: uid=kwang,ou=People,dc=kwang,dc=com
changetype: modify
replace: uidNumber
uidNumber: 520

3. 删除条目下某个参数

modi.ldif 文件如下,表示删除 uid=kwang 这个用户下 pwdAccountLockedTime 参数。

dn: uid=kwang,ou=People,dc=kwang,dc=com
changetype: modify
delete: pwdAccountLockedTime

2.4 ldapdelete 命令

从当前目录树中删除 uid 为 kwang 的用户,删除前需要使用 ldapsearch 查看 kwang 的 DN 名称。

ldapsearch -x -b "dc=kwang,dc=com" '(uid=kwang)'  # 查看uid=kwang的dn名称,然后执行删除操作
ldapdelete -x -D cn=Manager,dc=kwang,dc=com -w <pwd"uid=kwang,ou=People,dc=kwang,dc=com"

以上四个命令是平时维护OpenLDAP目录树时最常用的操作,其他命令后续不断完善。

【参考资料】

[1]. https://wiki.shileizcc.com/confluence/pages/viewpage.action?pageId=39223593

原文地址:https://www.cnblogs.com/lemonu/p/11229231.html