简单介绍一下ldapsearch命令,在ldap搜索条目时很有用,只要适当调整filter就可以。

命令如下:

  ldapsearch -h hostname -p port -b baseDN -D BIND_DN  [options] filter [attribute]...

  参数说明:  

    -h:主机名或ip地址

    -p:端口号 

    -b:suffix dn

    -D:使用搜索绑定的用户

  其他参数一般很少使用。下面举几个例子看一下:

1)搜索所有条目:

  ldapsearch -h host -b "dc=example,dc=com" "(objectclass=*)"

2)搜索cn为指定名字的条目

  ldapsearch -h host -b "dc=example,dc=com" "(cn=Babs Jensen)"

3)使用filter文件进行搜索

  filter文件内容:

  sn=Francis

  givenname=Barbara

  指定搜索:

  ldapsearch -b "dc=example,dc=com" -h host -f filters cn uid

4)模糊查询,uid包含test的条目

  ldapsearch -h host -b "dc=example,dc=com" "(uid=*test*)"

5)同时满足多个属性,uid包含test,givenName包含test的条目

  ldapsearch -h host -b "dc=example,dc=com" "(|(uid=*test*)(givenName=*test*))"

这里filter的书写规则和aci的filter中书写规则相同。

通过ldapmodify可以更改条目属性,下面简单介绍一下,ldapmodify在添加,删除,更新,更改dn的操作

1,添加条目,在使用ldapmodify添加条目的时候,可以手动输入要添加的条目的所有属性,也可以通过使用文件的方式进行添加;

  文件内容如下(add.ldif):在编辑文件时须将必填属性,例如uid,cn,sn等写完整

  dn: uid=bcubbins,ou=People,dc=example,dc=com
  objectclass: top
  objectclass: person
  objectclass: organizationalPerson
  objectclass: inetOrgPerson
  uid: bcubbins
  givenName: Bartholomew
  sn: Cubbins
  cn: Bartholomew Cubbins
  mail: bcubbins@example.com
  userPassword: bcubbins
  facsimiletelephonenumber: +1 234 567 8910  

  使用命令:

  ldapmodify -a -h host -D uid=bjensen,ou=people,dc=example,dc=com -w - -f add.ldif

  如果不是用文件,则需要在命令行下手动输入如上内容,完成后按回车键。例如:

  dn: uid=bcubbins,ou=People,dc=example,dc=com

  changeType:add

  objectclass: top
  objectclass: person
  objectclass: organizationalPerson
  objectclass: inetOrgPerson
  uid: bcubbins
  givenName: Bartholomew
  sn: Cubbins
  cn: Bartholomew Cubbins
  ....

  

2,修该条目,修改条目和删除条目操作类似

 通过文件修改:

  dn: uid=bcubbins,ou=People,dc=example,dc=com

  changetype: modify
  add: description
  description: Added with ldapmodify
  -
  replace: mail
  mail: bart@example.com

  执行ldapmodify命令

  ldapmodify -h host -c -v -D uid=bjensen,ou=People,dc=example,dc=com -w - -f modify.ldif

 如果不通过文件修改,则需手动输入如上所有红色字体内容

3,删除条目,删除条目是可以通过指定文件内容删除,手动输入需删除条目

  ldapmodify -h host -D uid=bjensen,ou=People,dc=example,dc=com -w -  

  dn: uid=bcubbins,ou=People,dc=example,dc=com
  changetype: delete
  deleting entry uid=bcubbins,ou=People,dc=example,dc=com

4,移动条目,即更改条目uid,dn

  ldapmodify -h host -D uid=hmiller,ou=people,dc=example,dc=com -w -  

  changetype: modrdn
  newrdn: uid=jwallace
  deleteoldrdn: 0
  newsuperior: ou=special users,dc=example,dc=com

  deleteoldrdn:0,保留原dn;1,删除原dn。再进行条目移动时,需具有import和export权限。

ldap数据库--ldapsearch,ldapmodify的更多相关文章

  1. ldap数据库--ODSEE--suffix

    ldap数据库的suffix是建立ldap之间复制协议的基础,suffix的创建也可以通过管理界面进行,也可以通过命令行进行.不同点是通过管理界面创建的suffix会自动创建一条对应该suffix的匿 ...

  2. ldap数据库--ODSEE--安装

    在安装之前最好查看一下服务器硬件是否满足要求,是否需要更改一些系统配置来达到使用ldap数据库的最有性能.实际使用的ldap数据库是oracle的产品,DS70即ODSEE. 安装环境:solaris ...

  3. ldap数据库--ODSEE--复制协议

    简单介绍一下ODSEE的复制拓扑的建立,复制协议可以通过管理界面进行创建,也可以通过命令行创建.在此之前需要了解一些复制协议的相关概念,这里针对OESEE. 1,复制角色 master(提供者,也可以 ...

  4. ldap数据库--ODSEE--ACI

    查看跟DN下的aci ldapsearch -h hostname -p port -D "cn=Directory Manager" -w - -b "BASE_DN& ...

  5. ldap数据库--ODSEE--schema

    ldap服务器包含上百个对象类型(object class)和属性,这些对象类和属性都可以满足大部分需求,如果你想定义自己的schema,你只能继承扩展现有的schema进行操作. tip: 增加的新 ...

  6. ldap数据库--ODSEE--卸载

    针对ldap实例的卸载,即删除,可以通过管理界面进行操作也可以通过命令行进行操作.卸载顺序为ldap实例--agent--ads.这里主要介绍命令操作步骤 1,ldap实例卸载 从ads注销,即不在需 ...

  7. [ldap]slapcat/ldapsearch与ldap备份

    http://serverfault.com/questions/577356/ldap-backup-with-slapcat-vs-ldapsearch Used: openldap-server ...

  8. LDAP分布式数据库的介绍和安装使用

     目录服务 目录是一个为查询.浏览和搜索而优化的专业分布式数据库,它呈树状结构组织数据,就好象Linux/Unix系统中的文件目录一样.目录数据库和关系数据库不同,它有优异的读性能,但写性能差,并且没 ...

  9. centos 6.5 配置LDAP服务器+客户端!

    各种度娘!各种歌哥!网上教程参差不齐,历时1天,终于完成,不敢独享,遂,总结分享之,有问题可以留言,知无不言...开始吧 Note: 本次配置的服务器环境是<redhat enterprise ...

随机推荐

  1. XSS跨站脚步攻击及防范

    XSS(Cross Site Script)跨站脚本攻击.它指的是恶意攻击者往Web 页面里插入恶 意html 代码,当用户浏览该页之时,嵌入其中Web 里面的html 代码会被执行,从而达到侵害用户 ...

  2. 【MVC】MvcPager分页及边界传递数据示例

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  3. SQL查询和删除重复字段的内容

    --例如: id NAME VALUE 1 a pp 2 a pp 3 b iii 4 b pp 5 b pp 6 c pp 7 c pp 8 c iii --id是主键 --要求得到这样的结果 id ...

  4. asp.net中配置使用Sqlite轻型数据库

    Sqlite 管理工具 SQLiteDeveloper及破解 功能特点 表结构设计,数据维护,ddl生成,加密数据库支持,sqlite2,3支持 唯一缺憾,收费,有试用期 破解方法: 注册表删除 HK ...

  5. php 连接mysql数据库以及增删改查

    php 连接数据库 一般是用面向对象的方法,需要先创建一个对象,即造一个连接对象,然后再写sql语句,(增改查删),最后执行sql语句 其中在创建连接对象时 我们用到的是MySQLI  是不区分大小写 ...

  6. C++大数精度计算(带小数点)

    转: (原出处不可考,若有侵权,请联系我立即删除) 头文件: // WTNumber.h: interface for the CWTNumber class. // //////////////// ...

  7. 《剑指Offer》面试题5-替换空格

    题目:请实现一个函数,把字符串中的每个空格替换成"%20".例如输入"We are happy.",则输出"We%20are%20happy.&quo ...

  8. Centos7安装Python3的方法

    由于centos7原本就安装了Python2,而且这个Python2不能被删除,因为有很多系统命令,比如yum都要用到. [root@VM_105_217_centos Python-]# pytho ...

  9. Mysql编写sql语句的小技巧

    1.查询数据(保证查询性能) SELECT * 和 SELECT t.id , t.name:后者性能其实总体优于前者. 2.在查询的时候最好给表起个 别名,方便找到表中要查询的字段.执行sql的进行 ...

  10. PHP垃圾回收机制

    一.引用计数基本知识 每个php变量存在一个叫"zval"的变量容器中,当一个变量被赋常量值时,就会生成一个zval变量容器.一个zval变量容器,除了包含变量的类型和值,还包括两 ...