创建目录服务器实例之后,必须为服务器的目录信息树(Directory Information Tree,DIT)创建一个或多个后缀。DIT由服务器中的所有条目组成,这些条目使用各自的标识名(DistinguishedName,DN)进行标识。DN的分层特性可创建分支和叶条目,从而以树的形式组织数据。DIT是以后缀和子后缀的形式进行定义和管理的。DSCC提供了用于创建和管理所有这些元素的控件。此外,也可以使用命令行工具。

1.创建根后缀
请确保服务器正在运行,然后键入以下命令:
$ dsconf create-suffix -h host -p port suix-DN
其中suix-DN是新后缀的完整DN。对于根后缀,此约定为使用域组件(dc)命名属性。

例如,要创建DN dc=example,dc=com的后缀,请用以下命令:
$ dsconf create-suffix -h host1 -p 1389 dc=example,dc=com
此命令将以如下方式创建新后缀:
■ 创建根后缀的顶级(或基)条目。
■ 创建后缀和数据库在cn=config中的配置条目。
■ 默认数据库名称基于后缀DN。

[root@rusky bin]# ./dsconf create-suffix -h rusky.com -p  dc=test-suffix
Certificate "CN=rusky.com, CN=22222, CN=Directory Server, O=Sun Microsystems" presented by the server is not trusted.
Type "Y" to accept, "y" to accept just once, "n" to refuse, "d" for more details: y
Enter "cn=Directory Manager" password:

2.查看后缀信息
有关所有后缀的信息(包括已创建的新后缀),请使用以下命令:

$ dsconf list-suffixes -h host -p port -v
-v选项显示详细模式,此模式将显示后缀上的条目数量,以及所有复制信息。注–如果有多个目录服务器实例,请使用-h host name和-p port number选项指定后缀所属的服务器实例。

[root@rusky bin]# ./dsconf list-suffixes -v
Enter "cn=Directory Manager" password:
Enter "cn=Directory Manager" password: SUFFIX_DN entry-count repl-role repl-agmts repl-priorities indexes encr-attrs
--------- ----------- -------------- ---------- --------------- ------- ----------
dc=test1 1 not-replicated N/A N/A 29 0
dc=test 1 not-replicated N/A N/A 29 0
The "list-suffixes" operation succeeded on "localhost:389".
[root@rusky bin]# ./dsconf list-suffixes -h rusky.com -p 11111 -v
Certificate "CN=rusky.com, CN=22222, CN=Directory Server, O=Sun Microsystems" presented by the server is not trusted.
Type "Y" to accept, "y" to accept just once, "n" to refuse, "d" for more details: y
Enter "cn=Directory Manager" password:
Enter "cn=Directory Manager" password: SUFFIX_DN entry-count repl-role repl-agmts repl-priorities indexes encr-attrs
-------------- ----------- -------------- ---------- --------------- ------- ----------
dc=test-suffix 1 not-replicated N/A N/A 29 0
The "list-suffixes" operation succeeded on "rusky.com:11111".

如果要为数据库文件指定非默认路径,请使用-L选项。可以在后面的阶段中更改后缀数据库路径。要执行此操作,请使用命令 dsconf set-suffix-prop suix-DN db-path:new-db-path,然后停止服务器,手动移动数据库文件,再重新启动服务器。

3.创建子后缀(如果需要):
$ dsconf create-suffix -h host -p port subSuix-DN
然后,将此子后缀连接到根后缀。
$ dsconf set-suffix-prop -h host -p port subSuix-DN parent-suffix-dn:parentSuix-DN
其中parentSuix-DN必须与上一步中的suix-DN具有相同的值。子后缀的suix-DN包含此子后缀的相对标识名(RelativeDistinguishedName, RDN)及其父后缀的DN。
例如,要创建子后缀ou=Contractors,dc=example,dc=com并将子后缀附加到根后缀,请键入:
$ dsconf create-suffix -h host1 -p 1389 ou=Contractors,dc=example,dc=com
$ dsconf set-suffix-prop -h host1 -p 1389 ou=Contractors,dc=example,dc=com \parent-suffix-dn:dc=example,dc=com
当此条目添加到目录中时,服务器的数据库模块将自动在以下目录中创建数据库文件:
instance-path/db/database-name
其中database-name是基于部分后缀自动生成的名称。例如,在前面的示例中,
database-name应该为Contractors

4.禁用后缀

有时可能需要禁用后缀以进行维护,或出于安全原因禁用后缀内容。如果禁用后缀,服务器将无法读取或写入后缀内容以响应任何客户端操作。禁用后缀时,您将不再具有该后缀的访问权限,并且引用模式将自动设置为禁用。注–无法禁用已启用复制的后缀,因为复制后缀的大多数属性都由复制机制确定。

$ dsconf set-suffix-prop -h host -p port suix-DN enabled:off

5,启用后缀
$ dsconf set-suffix-prop -h host -p port suix-DN enabled:on
6.设置引用并将后缀设置为只读

如果要限制对后缀的访问权限而不完全禁用后缀,则可以修改访问权限以允许只读访问。在这种情况下,必须定义对其他服务器的引用以执行写入操作。此外,还可以同时拒绝读取和写入访问,然后为后缀上的所有操作定义引用。引用还可用于临时将客户端应用程序指向其他服务器。例如,备份后缀内容时,可能要添加对其他后缀的引用。如果后缀是复制环境中的使用方,则复制机制将确定引用设置的值。尽管可以手动修改引用设置,但引用在下次复制更新时将被覆盖。

6.1设置引用URL。
$ dsconf set-suffix-prop -h host -p port suix-DN referral-url:LDAP-URL
其中LDAP-URL是有效的URL,包含主机名、端口号和目标的DN。
例如:
$ dsconf set-suffix-prop -h host1 -p 1389 dc=example,dc=com \referral-url:ldap://phonebook.example.com:389/
可以指定任意数量的LDAPURL。

6.2设置引用模式,使后缀变为只读状态。
$ dsconf set-suffix-prop -h host -p port suix-DN referral-mode:only-on-write
要使后缀无法用于读取和写入操作,并为所有请求返回引用,请将referral-mode设置为enabled。

只要命令执行成功,后缀即变为只读或不可访问状态,并可返回引用。

6.3(可选的)后缀变为可用状态时,请禁用引用,以使后缀再次变为读写状态。
$ dsconf set-suffix-prop -h host -p port suix-DN referral-mode:disabled
禁用引用时,后缀将自动变为读写状态,除非您通过将后缀的enabled属性设置为off 禁用了此后缀。

7..删除后缀

注–删除后缀时,将从目录中永久地删除该后缀的所有数据条目。此外,还将删除所后缀配置信息,包括其复制配置。

您无法删除父后缀,但将其子后缀保留在DIT中作为新的根后缀。如果要删除包含子
后缀的整个分支,则必须同时删除已删除的父后缀的子后缀及其可能的子后缀。

[root@rusky bin]# ./dsconf delete-suffix -h rusky.com dc=test1
Enter "cn=Directory Manager" password:
Enter "cn=Directory Manager" password: Deleting suffix "dc=test1" will remove all Directory Server data.
Do you want to continue [y/n] ? y

8.压缩后缀  

Directory Server 6.3支持脱机后缀压缩。此发行版中不支持联机压缩。如果有可用的存储空间,则压缩后缀将重新组织数据库键,从而可减小数据库大小。
脱机压缩后缀:
在执行此任务之前,请停止服务器并备份数据库。
压缩所需的后缀。
$ dsadm repack instance-path suix-dn
与指定后缀相关的所有.db3文件都将被压缩。
如果使用-b选项运行此命令,则可以指定后端数据库名称,而不是后缀DN。至少要指定一个后缀或一个后端。
From:Sun Java System Directory Server Enterprise Edition 6.3 Administration Guide

LDAP 后缀操作的更多相关文章

  1. linux 文件名称前后缀操作函数----取目录函数dir、取文件名称函数notdir、取后缀函数suffix、取前缀basename、加后缀函数addsuffix、加前缀addprefix、连接函数join

    1.1       文件名操作函数 下面我们要介绍的函数主要是处理文件名的.每个函数的参数字符串都会被当做一个或是一系列的文件名来对待. 1.1.1        取目录函数dir $(dir < ...

  2. LDAP相关操作注意事项

    lc.Modify(entry.DN, new LdapModification(LdapModification.REPLACE, new LdapAttribute("mDBUseDef ...

  3. LDAP学习笔记总结

    一.LDAP概念LDAP是轻量目录访问协议,英文全称是Lightweight Directory Access Protocol,一般都简称为LDAP.它是基于X.500标准的,但是简单多了并且可以根 ...

  4. LDAP基本概念

    LDAP(Lightweight Directory Access Protocol)是一种基于计算模型的客户机/服务器X.500目录服务访问协议.LDAP是从X.500目录访问协议的基础上发展过来的 ...

  5. [原创]django+ldap实现统一认证部分二(python-ldap实践)

    前言 接上篇文章 [原创]django+ldap实现统一认证部分一(django-auth-ldap实践) 继续实现我们的统一认证 python-ldap 我在sso项目的backend/lib/co ...

  6. LDAP注入与防御解析

    [目录] 0x1 LDAP介绍 0x2 LDAP注入攻击及防御 0x3 参考资料 0x1 LDAP介绍 1 LDAP出现的背景 LDAP(Lightweight Directory Access Pr ...

  7. Windows下LDAP服务器配置

    LDAP即轻量级目录访问协议(Lightweight Directory Access Protocol),基础知识不再赘述,本文主要记录我的配置与安装过程. LDAP for windows下载 o ...

  8. Im4java 操作 ImageMagick 处理图片

    背景 之前用的是JMagick,各种限制各种坑,直到使用了Im4java,真是相当的好用啊. 项目描述 ImageMagic的安装可参考:图片处理软件 ImageMagick 的安装和使用 Im4ja ...

  9. Centos下安装破解Jira7的操作记录

    Jira是一个集项目计划.任务分配.需求管理.错误跟踪于一体的工具,可以作为一个bug管理系统,可以将在测试过程中所发现的bug录入.分配给开发人员.前面介绍了Confluence在Centos下的安 ...

随机推荐

  1. [!] Unable to satisfy the following requirements:

    出现这个问题是由于我本地Podfile文件上第三方版本太低. 解决方案就是,更新一下本地Podfile文件上的第三方版本,也就是pod update --verbose一下. 注意一下,这个命令需要很 ...

  2. 单例模式 与lock用法

    在之前没用lock之前:如果我实现单例模式:直接就是下面的代码: public class Singleton    {        private static Singleton instanc ...

  3. mysql文件导入到数据库load data infile into table 的使用例子

    load data infile "C:/Users/Administrator/Desktop/1.txt"into table 要一个已经存的表名 字段默认用制表符隔开 文件 ...

  4. react-redux源码解析

    有理解不对的地方,欢迎大家指正!!! react为什么需要redux辅助???react是view层的单向数据流框架,数据需要一层一层往子组件传递(子组件并不会自动继承).子组件需要操作父组件的数据时 ...

  5. 微信 回复多图文 借助php框架

    private function replyMostPhoto($data,$arr){$this->logger("已经到达回复多图文!".$arr[0]['Title'] ...

  6. CentOS6.4 GOOGLE chrome install

    yum install http://people.centos.org/hughesjr/chromium/6/i386/RPMS/chromium-28.0.1500.45-205727.i686 ...

  7. 我自己的style

    /** DATE:Time AUTHOR:Zoe TEAM:公司名称 INTRO:cssName **/ @charset "utf-8"; /*通用公共样式 开始*/ /* 清除 ...

  8. css 选择器 (学习笔记)

    参考 http://zachary-guo.iteye.com/blog/605116 1. div+p  选择紧接在 <div> 元素之后的所有 <p> 元素.解释 : fi ...

  9. Keil C51对同一端口的连续读取方法

    C语言是当前举世公认的高效简洁而又非常贴近硬件的编程语言之一.将C语言向单片机MCS-51上的移植始于2O世纪8O年代的中后期,经过近1O年的发展,C语言克服了产生代码过长.运行速度较慢的缺点,并且由 ...

  10. C51程序优化

    1.指针: 对于大部分的编译器,使用指针比使用数组生成的代码更短,执行效率更高.但是在Keil中则相反,使用数组比使用的指针生成的代码更短.通常使用自加.自减指令和复合赋值表达式(如a-=1及a+=1 ...