创建目录服务器实例之后,必须为服务器的目录信息树(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. pod install后出现: [!] `<PBXResourcesBuildPhase UUID=`xxxx`>` attempted to initialize an object with an unknown UUID

    [!] `<PBXResourcesBuildPhase UUID=`xxx`>` attempted to initialize an object with an unknown UU ...

  2. python的exec、eval详解

    exec exec语句用来执行储存在字符串或文件中的Python语句.例如,我们可以在运行时生成一个包含Python代码的字符串,然后使用exec语句执行这些语句.下面是一个简单的例子. exec ' ...

  3. C#结课报告

    Revision History Date Issue Description Author 18/May/2015 v1.0 Initial creation 邓彪翼 模拟图书馆的查询系统 1.ob ...

  4. json格式初涉

    json用{}表示json对象,[]表示数组,里面以值对的方式来存储信息 var jsondata='{"staff": [{"name":"jim& ...

  5. python中如何单独测试一个函数的作用

    #!/usr/bin/python import os def get_env_varible(key): return os.getenv(key) if __name__ == '__main__ ...

  6. Java中关于String的split(String regex, int limit) 方法

    今天在对一个String对象进行拆分的时候,总是无法到达预计的结果.呈现数据的时候出现异常,后来debug之后才发现,错误出在String spilt上,于是开始好好研究下这东西,开始对api里的sp ...

  7. 一个正整数N,拆成任意个正整数之和,怎样使这些数的乘积最大

    网上看到了如标题所示的题目,就开始想如果用程序来算的话,那么它的算法是怎样的. 自己想了半天,第一感觉要用递归, 如先算出 当 n=1 max=1 当 n=2 max=1 当 n=3 max=2 .. ...

  8. python web.py安装使用

    官方首页:http://webpy.org/) 它的源代码非常整洁精干,学习它一方面可以让我们快速了解python语法(遇到看不懂的语法就去google),另一方面可以学习到python高级特性的使用 ...

  9. bootstrap栅格布局,第一次成功

    代码: <div class="helper" style="background-color: #F7F7F9;height: 200px;padding-top ...

  10. 【转】Android开发工具--android-studio-bundle-141.2288178

    原文网址:http://www.androiddevtools.cn/ AndroidDevTools简介 Android Dev Tools官网地址:www.androiddevtools.cn 收 ...