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. SQL Server 迁移数据库 (二)分离和附加

    分离和附加其实比导入和导出,步骤要少一些,但是数据量大的话,跨服务器拷贝数据文件可能要慢一些 1. 分离数据库 这里最好选择断开链接,断开之前要确保你记得数据库的路径,一般默认都是C:\Program ...

  2. Ubuntu放弃战斗, Linux桌面的悲哀 - 简书

    Ubuntu放弃战斗, Linux桌面的悲哀 - 简书 https://www.jianshu.com/p/86dd6e34ce91

  3. MySQL基础指令和安装

    数据库概念 那Mysql能干嘛呢?它就是一款软件,安装在任何一台计算机或者服务器上的时候,只要我告诉它创建一个文件,新增一个数据,删除一个数据它就能帮我去做想要的操作 那我们暂且能不能理解为mysql ...

  4. 为某金融企业开发团队分享DevOps Server流水线使用经验

    http://www.cnblogs.com/danzhang/  DevOps MVP 张洪君

  5. Spring boot使用influxDB总结

    项目中需要存放大量设备日志,且需要对其进行简单的数据分析,信息提取工作. 结合众多考量因素,项目决定使用时序数据库中的领头羊InfluxDB. 引入依赖 项目中使用influxdb-java,在pom ...

  6. vertica创建新用户并授权

    1.创建用户,并设置密码: create user user1 identified by 'pwd1'; 2.把角色授权给用户(dbduser是普通角色): grant dbduser to use ...

  7. [数据分析]利用pandasticsearch批量读取ES

    1.git地址 https://github.com/onesuper/pandasticsearch 2.建立连接 from pandasticsearch import DataFrame use ...

  8. CopyOnWriteArraySet 源码分析

    CopyOnWriteArraySet  源码分析: 1:数据结构: private final CopyOnWriteArrayList<E> al; 内部维护的是一个CopyOnWri ...

  9. 【Luogu5349】幂(分治FFT)

    [Luogu5349]幂(分治FFT) 题面 洛谷 题解 把多项式每一项拆出来考虑,于是等价于要求的只有\(\sum_{i=0}^\infty i^kr^i\). 令\(f(r)=\sum_{i=0} ...

  10. Mysql系列(五)—— 分页查询及问题优化

    一.用法 在Mysql中分页查询使用关键字limit.limit的语法如下: SELECT * FROM tbl LIMIT 5,10; # Retrieve rows 6-15 limit关键字带有 ...