OpenLDAP 常用命令

本文原始地址:https://sitoi.cn/posts/5308.html

ldapsearch

ldapsearch - ldap 搜索工具

ldapsearch 实用程序可打开与 LDAP 服务器的连接,使用过滤器 filter 绑定并执行搜索。

如果 ldapsearch 找到一个或多个条目,则会检索由 attrs 指定的属性并且会将条目和值输出到标准输出。如果没有列出 attrs,则会返回所有属性。

选项 描述
-d debuglevel 设置 LDAP 调试级别。适用于 ldapdelete 的有用调试级别包括:1:跟踪 2:包 4:选项 32:过滤器 128:访问控制 要请求多个类别的调试信息,请将掩码相加。例如,要请求跟踪和过滤器信息,请将 debuglevel 指定为 33。
-x 进行简单认证
-D 用来绑定服务器的DN
-w 绑定DN的密码
-b 指定要查询的根节点
-H 制定要查询的服务器

例子

查询所有用户
ldapsearch -x -b "dc=sitoi,dc=cn" -H ldap://192.168.1.143
指定条件的查询
ldapsearch -x -b "dc=sitoi,dc=cn" "uid=demo" -H ldap://192.168.1.143
或条件查询配合正则匹配
ldapsearch -x -b "dc=sitoi,dc=cn" "(|(uid=*de*)(cn=*Ada Cather*))" -H ldap://192.168.1.143
与条件查询配合正则匹配
ldapsearch -x -b "dc=sitoi,dc=cn" "(&(uid=*de*)(cn=*Ada Cather*))" -H ldap://192.168.1.143

ldapadd

ldapadd - ldap 条目添加工具

ldapadd 实用程序是作为到 ldapmodify 工具的硬链接实现的。当作为 ldapadd 调用时,会自动打开 –a(添加新条目)选项。

选项 描述
-x 进行简单认证
-D 用来绑定服务器的DN
-h 目录服务的地址
-w 绑定DN的密码
-f 使用ldif文件进行条目添加的文件

例子

ldapadd -x -D "cn=root,dc=sitoi,dc=cn" -w sitoi -f demo.ldif
ldapadd -x -D "cn=root,dc=sitoi,dc=cn" -w sitoi #(这样写就是在命令行添加条目)

ldappasswd

ldapmodify - ldap 密码修改工具

ldapmodify 实用程序可打开与 LDAP 服务器的连接,修改条目密码。

选项 描述
-x 进行简单认证
-D 用来绑定服务器的DN
-w 绑定DN的密码
-S 提示的输入密码
-s pass 把密码设置为pass
-a pass 设置old passwd为pass
-A 提示的设置old passwd
-H 是指要绑定的服务器
-I 使用sasl会话方式

例子

ldappasswd -x -D 'cm=root,dc=sitoi,dc=cn' -w sitoi 'uid=Sitoi,dc=sitoi,dc=cn' -S
New password:
Re-enter new password:

就可以更改密码了,如果原来记录中没有密码,将会自动生成一个userPassword。

ldapmodify

ldapmodify - ldap 条目修改工具

ldapmodify 实用程序可打开与 LDAP 服务器的连接,绑定并修改或添加条目。条目信息是从标准输入或者从使用 –f 选项指定的 file 中读取的。ldapadd 实用程序是作为到 ldapmodify 工具的硬链接实现的。当作为 ldapadd 调用时,会自动打开 –a(添加新条目)选项。

ldapadd 和 ldapmodify 都拒绝同一条目的重复属性名/值对。

选项 描述
-a 添加新的条目.缺省的是修改存在的条目.
-C 自动追踪引用.
-c 出错后继续执行程序并不中止.缺省情况下出错的立即停止.比如如果你的ldif 文件内的某个条目在数据库内并不存在,缺省情况下程序立即退出,但如果使用了该选项,程序忽略该错误继续执行.
-n 用于调试到服务器的通讯.但并不实际执行搜索.服务器关闭时,返回错误;服务器打开时,常和-v 选项一起测试到服务器是否是一条通路.
-v 运行在详细模块.在标准输出中打出一些比较详细的信息.比如:连接到服务器的ip地址和端口号等.
-M[M] 打开manage DSA IT 控制. -MM 把该控制设置为重要的.
-f file 从文件内读取条目的修改信息而不是从标准输入读取.
-x 使用简单认证.
-D binddn 指定搜索的用户名(一般为一dn 值).
-W 指定了该选项,系统将弹出一提示入用户的密码.它和-w 选项相对使用.
-w bindpasswd 直接指定用户的密码. 它和-W 选项相对使用.
-H ldapuri 指定连接到服务器uri(ip 地址和端口号,常见格式为 ldap://hostname:port).如果使用了-H 就不能使用-h 和-p 选项.
-h ldaphost 指定要连接的主机的名称/ip 地址.它和-p 一起使用.
-p ldapport 指定要连接目录服务器的端口号.它和-h 一起使用.如果使用了-h 和-p 选项就不能使用-H 选项.
-Z[Z] 使用StartTLS 扩展操作.如果使用-ZZ,命令强制使用StartTLS 握手成功.
-V 启用证书认证功能,目录服务器使用客户端证书进行身份验证,必须与-ZZ 强制启用TLS 方式配合使用,并且匿名绑定到目录服务器.
-e 设置客户端证书文件,例: -e cert/client.crt
-E 设置客户端证书私钥文件,例: -E cert/client.key

例子

ldapmodify -x -D "cn=root,dc=sitoi,dc=cn" -W -f modify.ldif

modify.ldif 中的记录 更新 原有的记录。

ldapdelete

ldapdelete - ldap 删除条目工具

ldapmodify 实用程序可打开与 LDAP 服务器的连接,绑定并修改或添加条目。条目信息是从标准输入或者从使用 –f 选项指定的 file 中读取的。ldapadd 实用程序是作为到 ldapmodify 工具的硬链接实现的。当作为 ldapadd 调用时,会自动打开 –a(添加新条目)选项。

ldapadd 和 ldapmodify 都拒绝同一条目的重复属性名/值对。

选项 描述
-d debuglevel 设置 LDAP 调试级别。适用于 ldapdelete 的有用调试级别包括:1:跟踪 2:包 4:选项 32:过滤器 128:访问控制 要请求多个类别的调试信息,请将掩码相加。例如,要请求跟踪和过滤器信息,请将 debuglevel 指定为 33。
-D bindDN 使用标识名 bindDN 绑定到目录。
-f file 从 file 而不是从标准输入读取条目删除信息。
-h ldaphost 指定运行 LDAP 服务器的备用主机。
-p ldapport 指定 LDAP 服务器侦听的备用 TCP 端口。
-W password 指定在 –P 选项中给出的客户端密钥数据库的口令。对于基于证书的客户端验证,此选项是必需的。在命令行上指定 password 会有安全问题,因为系统上的其他人可以通过 ps 命令看到口令。请改用 –j 从文件中指定口令。此选项与 –j 互斥。
-w passwd 使用 passwd 作为用于对目录进行验证的口令。当使用 –w passwd 指定用于验证的口令时,系统的其他用户可以通过 ps 命令在脚本文件中或者在 shell 历史记录中看到口令。如果在不使用此选项的情况下使用 ldapdelete 命令,则该命令将提示输入口令并从标准输入中读取口令。不与 –w 选项一起使用时,其他用户将看不到口令。

例子

ldapdelete -x -D "cn=Manager,dc=sitoi,dc=cn" -w sitoi "uid=Sitoi,ou=People,dc=sitoi,dc=cn"

Tips:

如果o或ou中有成员是不能删除的,那么o或ou不能删除。

OpenLDAP 常用命令的更多相关文章

  1. LDAP常用命令解析

    OpenLDAP常用命令讲解: ldapadd      -x   进行简单认证      -D   用来绑定服务器的DN      -h   目录服务的地址      -w   绑定DN的密码    ...

  2. Linux基础 - 系统优化及常用命令

    目录 Linux基础系统优化及常用命令 Linux基础系统优化 网卡配置文件详解 ifup,ifdown命令 ifconfig命令 ifup,ifdown命令 ip命令 用户管理与文件权限篇 创建普通 ...

  3. Linux基础系统优化及常用命令

    # Linux基础系统优化及常用命令 [TOC] ## Linux基础系统优化 Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. - ...

  4. 运维 07 Linux系统基础优化及常用命令

    Linux系统基础优化及常用命令   Linux基础系统优化 引言没有,只有一张图. Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令 ...

  5. Linux 常用命令(持续补充)

    常用命令: command &:将进程放在后台执行 ctrl + z:暂停当前进程 并放入后台 jobs:查看当前后台任务 bg( %id):将任务转为后台执行 fg( %id):将任务调回前 ...

  6. LVM基本介绍与常用命令

    一.LVM介绍LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制LVM - 优点:LVM通常用于装备大量磁盘的系统,但它同样适 ...

  7. Linux学习笔记(一):常用命令

    经过统计Linux中能够识别的命令超过3000种,当然常用的命令就远远没有这么多了,按照我的习惯,我把已经学过的Linux常用命令做了以下几个方面的分割: 1.文件处理命令 2.文件搜索命令 3.帮助 ...

  8. git常用命令(持续更新中)

    git常用命令(持续更新中) 本地仓库操作git int                                 初始化本地仓库git add .                       ...

  9. 【原】npm 常用命令详解

    今年上半年在学习gulp的使用,对npm的掌握是必不可少的,经常到npm官网查询文档让我感到不爽,还不如整理了一些常用的命令到自己博客上,于是根据自己的理解简单翻译过来,终于有点输出,想学习npm这块 ...

随机推荐

  1. yum 初始化国内

    修改为阿里源备份默认的yum源文件 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 下载阿里 ...

  2. C++面向对象程序设计学习笔记(1)

    基本概念 对象: 面向对象程序设计中,对象是描述其属性的数据以及对这些数据施加的一组操作封装在一起构成的统一体,每个对象都是由数据和操作代码两部分构成的. 类: 面向对象程序设计中,类是具有相同的数据 ...

  3. Arduino SPI驱动7引脚0.96寸OLED SSD1306 调试笔记

    https://www.geek-workshop.com/thread-37818-1-1.html 2.下载最新库https://learn.adafruit.com/monoc ... ibra ...

  4. 11/8 <matrix> LC 48 54 59

    48. Rotate Image 先按对角线对称图形,再水平对折. class Solution { public void rotate(int[][] matrix) { //1.transpos ...

  5. 一致性算法Raft

    参阅:https://www.cnblogs.com/xybaby/p/10124083.html 可视化:http://thesecretlivesofdata.com/raft/

  6. Java GUI : 实现排序算法的动态演示

    0.用到的jar包 jcommon-1.0.16.jar.jfreechart-1.0.13.jar 1.实现思路 自定义一个类---用于存放排序算法的操作状态--SortEntity 定义一个方法类 ...

  7. ros wifi把信号弱的客户端踢出去的脚本

    以下脚本为小于75强度的都踢出去 非capman脚本: /interface wireless registration-table :do {:foreach i in=[find] do={:lo ...

  8. java web开发入门五(ssh整合)基于intellig idea

    SSH整合 1.引入jar包 Struts 核心jar Hibernate 核心jar Spring Core  核心功能 Web  对web模块支持 Aop   aop支持 Orm   对hiber ...

  9. js 编译原理

    引擎:从头到尾负责整个javaScript 程序的编译过程和执行过程. 编译器: 负责语法分析以及代码的生成. 作用域:负责收集并维护由所有声明的标识符(变量)组成的一系列查询, 并实施一套非常严格的 ...

  10. SQL Server使用加密连接SSL/TLS (转载)

    说明 应用程序通过未加密的通道与数据库服务器通信, 这可能会造成重大的安全风险.在这种情况下, 攻击者可以修改用户输入的数据, 甚至对数据库服务器执行任意 SQL 命令.例如,当您使用以下连接字符串时 ...