一、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:

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

OpenLDAP管理命令详解的更多相关文章

  1. 云计算:Linux运维核心管理命令详解

    云计算:Linux运维核心管理命令详解 想做好运维工作,人先要学会勤快: 居安而思危,勤记而补拙,方可不断提高: 别人资料不论你用着再如何爽那也是别人的: 自己总结东西是你自身特有的一种思想与理念的展 ...

  2. Linux就业技术指导(五):Linux运维核心管理命令详解

    一,Linux核心进程管理命令 1.1 ps:查看进程 1.1.1 命令解释 功能说明 ps命令用于列出执行ps命令的那个时刻的进程快照,就像用手机给进程照了一张照片.如果想要动态地显示进程,就需要使 ...

  3. linux初级学习笔记八:linux权限管理及权限管理命令详解!(视频序号:04_2)

    本节学习的命令:chown,chgrp,chmod,openssl,umask 本节学习的技能: 文件权限详解及对其的操作 生成随机密码命令 用遮罩码对用户权限进行修改 站在用户登陆的角度来说SHEL ...

  4. 4-1 Linux用户管理命令详解

    1. /etc/passwd 格式 用户名:密码:UID:GID:注释:家目录:默认shell useradd  [options ]    USERNAME -u: UID  要大于等于500, - ...

  5. crictl 命令 - Kubernetes 管理命令详解

    描述:crictl 是 CRI 兼容的容器运行时命令行对接客户端, 你可以使用它来检查和调试 Kubernetes 节点上的容器运行时和应用程序.由于该命令是为k8s通过CRI使用containerd ...

  6. LINUX的磁盘管理du命令详解

    LINUX的磁盘管理du命令详解 du(disk usage)命令可以计算文件或目录所占的磁盘空间.没有指定任何选项时, 它会测量当前工作目录与其所有子目录,分别显示各个目录所占的快数,最后才显示工作 ...

  7. Linux服务器,服务管理--systemctl命令详解,设置开机自启动

    Linux服务器,服务管理--systemctl命令详解,设置开机自启动 syetemclt就是service和chkconfig这两个命令的整合,在CentOS 7就开始被使用了. 摘要: syst ...

  8. Linux服务管理 systemctl命令详解

    Linux服务器,服务管理--systemctl命令详解,设置开机自启动 syetemclt就是service和chkconfig这两个命令的整合     任务 旧指令 新指令 使某服务自动启动 ch ...

  9. yum(Fedora和RedHat以及SUSE中的Shell前端软件包管理器)命令详解

    yum官方网站:http://yum.baseurl.org/ Fedora对于yum的介绍:http://fedoraproject.org/wiki/Yum yum(全称为 Yellow dog ...

随机推荐

  1. PAT Advanced 1008 Elevator (20 分)

    The highest building in our city has only one elevator. A request list is made up with N positive nu ...

  2. Python——DataFrame转list(包含两种)

    import pandas as pd df = pd.DataFrame({'a':[1,3,5,7,4,5,6,4,7,8,9], 'b':[3,5,6,2,4,6,7,8,7,8,9]}) df ...

  3. 什么是OAuth授权

    什么是OAuth授权?   一.什么是OAuth协议 OAuth(开放授权)是一个开放标准. 允许第三方网站在用户授权的前提下访问在用户在服务商那里存储的各种信息. 而这种授权无需将用户提供用户名和密 ...

  4. 扫描QPS控制——celery任务分多队列运行

    发包QPS控制,有两个难点. 1. redis交互流量的限制. 假设每分钟有1000条流量任务生成,每条跑20个插件,每个插件发5个数据包,每分钟约发十万请求. 那么在发包处做QPS会遇到一个问题,如 ...

  5. python2和python3编程差异杂谈(-)

    python2 默认编码ascii 在使用中文时要显示的声明   #-*-encoding:utf-8-*- python3 默认编码utf-8,良好的支持了中文输入 python2: print函数 ...

  6. Python 9--特殊方法

  7. 在使用Telnet连接localhost时所遇到的问题:出现 ‘telnet’ 不是内部或外部命令,也不是可运行的程序或批处理文件

    1.出现 ‘telnet’ 不是内部或外部命令,也不是可运行的程序或批处理文件.原因:因为本机的Telnet客户端默认是关闭的,所以我们要手动打开解决方案:打开控制面板–>程序–>打开或关 ...

  8. Spring Boot and Rabbit MQ 异常的时候消息的状态

    我们有一个处理消息的方法. 在处理消息的时候出现了异常,那出现异常后这个消息会怎么处理呢. 根据我们的实际情况的观察,如果出现了异常. 但是你没有捕获或者处理异常,这个消息会一直存在,并且你的系统会持 ...

  9. pat 甲级 1057 Stack(30) (树状数组+二分)

    1057 Stack (30 分) Stack is one of the most fundamental data structures, which is based on the princi ...

  10. bzoj4400

    /* * 此题同bzoj2725 * 增加了枚举边的操作 */ #include <bits/stdc++.h> ;// oo = 999999999; #define LL long l ...