当前位置: 主页 > 操作系统 > Win2003 > win 2003域管理常用工具

win 2003域管理常用工具

时间:2010-8-1来源:互联网 点击:

Windows Server 2003 中的内置命令行工具,这些工具可以让我们在 Active Directory 中创建、删除、修改和查找对象:

Dsget 和 Dsquery


ds* 命令行工具集还包括两个用于查询 Active Directory 获取信息而非用于创建或修改对象的工具。

Dsget 将对象的 DN 作为输入并为您提供您指定的一个或多个属性的值。Dsget 使用与 dsadd 和 dsmod 相同的子菜单 — user、computer、contact、group、ou 和 quota。


要获得用户帐户的 SAM 帐户名和安全标识符 (SID),请键入以下命令(请注意以下所有内容位于一行):


dsget user cn=afuller,ou=IT,dc=test,dc=com
–samAccountName –sid


Dsquery 将返回一个符合您指定条件的 Active Directory 对象的列表。无论您使用的是哪个子菜单,都可以指定以下参数:

dsquery <ObjectType> <StartNode> -s <Search Scope> -o <OutputFormat>

对于 ObjectType,dsquery 可以使用以下子菜单,每个子菜单都具有自己的语法:computer、contact、subnet、group、ou、site、server(请注意,服务器子菜单检索有关域控制器的信息,而不是环境中的任一成员服务器)、user、quota 和 partition。如果其中一个查询类型不符合需要,您可以使用 * 子菜单,这样您可以输入任意格式的 LDAP 查询。

StartNode 指定搜索在 Active Directory 树中的开始位置。您可以使用特定的 DN,如 ou=IT、dc=contoso、dc=com 或下列其中一个快捷说明符:domainroot,从特定域的根目录开始;forestroot,从使用全局编录服务器执行搜索的林根域的根目录开始。

最后,“搜索范围”选项指定 dsquery 搜索 Active Directory 树的方式。Subtree(默认方式)查询指定的 StartNode 及其所有子对象;onelevel 仅查询 StartNode 的直接子项;base 仅查询 StartNode 对象。

为了更好地理解搜索范围,假定有一个 OU,其中包含用户对象和一个子 OU,该子 OU 自身又包含其他对象。使用 subtree 范围将查询该 OU、包含在该 OU 内的所有用户对象和子 OU 及其内容。onelevel 范围仅查询包含在 OU 中的用户而不查询子 OU 及其内容。base 查询仅搜索 OU 本身而不查询其中包含的任何对象。

最后,您可以使用 Output Format 控制如何设置 dsquery 的结果的格式。默认情况下,dsquery 将返回与查询相匹配的所有对象的可分辨名称,如下所示:

"cn=afuller,ou=Training,dc=test,dc=com"
"cn=rking,ou=ITTraining,ou=Training,dc=test,dc=com"

要查询 IT OU 和任意子 OU 中包含的所有用户对象,请使用以下命令:

dsquery user ou=IT,dc=test,dc=com

一些第三方产品

Adfind 和 Admod

Adfind 和 admod 类似于 dsquery 和 dsmod;adfind 是 Active Directory 的命令行查询工具,admod 能够创建、删除或修改一个或多个 Active Directory 对象。


与具有多个子菜单并且开关依据对象类型而异的 ds* 工具不同,adfind 和 admod 具有一致的语法,与要尝试执行的查询或修改类型无关。adfind 的基本语法为:

adfind –b <Search Base> -s <Search Scope> -f <Search Filter>


attributesDesired

所以对域中所有计算机对象的 DN 和说明的查询应为:

adfind –b dc=test,dc=com –s subtree –f (objectclass=computer) dn
description

对所有用户对象的查询如下所示:

adfind –b dc=test,dc=com –s subtree –f "(&(objectcategory=person)
(objectclass=user))" dn description

注意,除了 LDAP 查询的内容外,语法没有任何更改。

使用 adfind 时,您将发现许多快捷操作符,可以减少许多键入内容。例如,-default 开关可以取代上一示例中的 -b dc=test,dc=com 并搜索整个域;-gc 搜索垃圾收集 (GC) 并返回 Active Directory 林中所有的用户。还可以使用 -rb 开关设置相对搜索库;如果要在 phl.east.us.test.com 域中搜索 Training OU,您可以通过仅仅指定 –default –rb ou=Training,而非 –b ou=Training, dc=phl,dc=east,dc=us,dc=test,dc=com,从而减少许多工作量。

Oldcmp

还有一个工具,我认为它是自动工具包中必不可少的一部分:oldcmp,该工具会扫描 Active Directory 数据库,查找在指定周数内未使用的计算机帐户,而且可以执行以下操作:

创建帐户报表而不对其进行任何操作
禁用未使用的计算机帐户
将计算机帐户移动到另一个指定的 OU 中
完全删除计算机帐户

CSVDE

逗号分隔值数据交换工具(即 CSVDE)使用 CSV 源文件将新对象导入到 Active Directory 中;此外,该工具还提供了将现有对象导出到 CSV 文件的功能。CSVDE 不能用于修改现有对象;在导入模式下使用此工具时,您只能创建全新的对象。

使用 CSVDE 导出现有对象的列表相当简单。将 Active Directory 对象导出到名为 ad.csv 的文件,方法如下:

csvde –f ad.csv

–f 开关表示后面为输出文件的名称。但是必须注意,根据环境的不同,此基本语法可能会生成不实用的大型输出文件。要将此工具限制为仅导出特定组织单位 (OU) 中的对象,可以将语句修改为如下形式:

csvde –f UsersOU.csv –d ou=Users,dc=test,dc=com

进一步假定我们只对将用户对象导出到 CSV 文件感兴趣。如果是那样的话,我们可以添加 –r 开关和 –l 开关,前者允许指定轻型目录访问协议 (LDAP) 筛选器进行搜索,后者可以限制导出的属性的数量(请注意以下所有内容位于一行):

csvde –f UsersOnly.csv –d ou=Users,dc=contoso,dc=com –r
"(&(objectcategory=person)(objectclass=user))" –l
DN,objectClass,description

通过 –i 开关,我们可以将对象从源 CSV 文件导入到 Active Directory。但是,使用 CSVDE 创建用户对象存在一个关键限制:不能使用 CSVDE 设置用户密码。因此,应该避免使用 CSVDE 创建用户对象。

LDIFDE

Active Directory 还提供了另外一个用于执行批量用户操作的内置工具,称为 LDIFDE,与 CSVDE 相比,此工具更强大,更灵活。除了可以创建新对象外,LDIFDE 还可以修改和删除现有对象,甚至扩展 Active Directory 架构。LDIFDE 虽然具有灵活性,但为了实现这种灵活性却必须要使用扩展名为 .ldf 的 LDIF 文件作为输出文件,这种文件与简单的 CSV 文件相比,格式更复杂。(只需少量操作就可以配置好用户密码,我稍后将对此进行介绍。)

我们从一个简单的示例开始,将某个 OU 中的用户导出到 LDF 文件中(请注意以下所有内容位于一行):

ldifde -f users.ldf -s DC1.contoso.com -d "ou=UsersOU,dc=contoso,dc=com"
–r "(&(objectcategory=person)(objectclass=user))"
与大多数命令行工具一样,我们可以通过运行 LDIFDE /? 命令找到 LDIFDE 开关的完整说明。

 

站长资讯网
.
分页: [1] [2]
TAG: windows 2003 域管理 工具
推荐内容最近更新人气排行
关于我们 | 友情链接 | 网址推荐 | 常用资讯 | 网站地图 | RSS | 留言