一、活动目录修改及查询命令

dsadd命令(创建活动目录对象)

使用dsadd命令可以在活动目录中创建OU、用户、组、联系人等对象,下面逐一进行介绍。

1、创建组织单位:

命令格式:dsadd ou <OUDN> [-desc 描述] [{-s 服务器|-d 域}] [-u 用户名] [-p {密码|*}] [-q] [{-uc|-uoc|-uci}]

注意:OU名称应为要创建的OU的LDAP绝对路径(DN,Distinguished Name),如果DN中包含空格,应该在路径两端使用双引号。

例如要在yjx.com域中建立一个名为finance的OU,可以执行以下命令:

C:\>dsadd ou ou=finance,dc=yjx,dc=com -desc "财务部"

dsadd 成功:ou=finance,dc=yjx,dc=com

2、创建域用户帐户

命令格式:dsadd user <UserDN> [-samid <SAMName>] -pwd {<Password>|*} –upn UPN

例如要在yjx.com域中建立一个名为mike的用户帐户,该用户将位于sales OU中,其显示名称为“mike yang”,则可以执行以下命令:

C:\>dsadd user cn=mike,ou=sales,dc=yjx,dc=com -samid mike -pwd benet3.0 -display “mike yang”

dsadd 成功:cn=mike,ou=sales,dc=yjx,dc=com

3、创建计算机帐户

命令格式:dsadd computer <ComputerDN>

要在yjx.com域中的sales OU中建立一个名为client-2的计算机帐户,可以执行以下命令:

C:\>dsadd computer cn=client-2,ou=sales,dc=yjx,dc=com

dsadd 成功:cn=client-2,ou=sales,dc=yjx,dc=com

要在yjx.com域中的sales OU中建立一个名为client-3的计算机帐户,并设置计算机账户的描述信息为“测试工作站”,可以执行以下命令:

C:\>dsadd computer cn=client-3,ou=sales,dc=yjx,dc=com -desc 测试工作站

dsadd 成功:cn=client-3,ou=sales,dc=yjx,dc=com

4、创建联系人

命令格式:dsadd contact <ContactDN> [-fn <FirstName>] [-mi <Initial>] [-ln <LastName>] [-display <DisplayName>] [-desc <Description>]

要在yjx.com域中的sales OU中建立一个名为杨建新的联系人,执行以下命令:

C:\>dsadd contact cn=杨建新,ou=sales,dc=yjx,dc=com -fn jianxin -ln yang -display 杨建新

dsadd 成功:cn=杨建新,ou=sales,dc=yjx,dc=com

以上创建操作完成后,sales OU的基本情况如下图所示:

dsmod命令(修改活动目录对象)

dsmod命令用来修改活动目录对象的属性,可以对OU、用户、组、联系人等对象进行修改。此处属性值较多,不再一一叙述。可以运行命令dsmod user /?查看对用户帐户属性的修改:

C:\>dsmod user /?

描述: 修改目录中现有的用户。

语法: dsmod user <UserDN ...> [-upn <UPN>] [-fn <FirstName>]

[-mi <Initial>] [-ln <LastName>] [-display <DisplayName>]

[-fnp <first name phonetic>] [-lnp <last name phonetic>]

[-displayp <display name phonetic>]

[-empid <EmployeeID>] [-pwd {<Password> | *}]

[-desc <Description>] [-office <Office>] [-tel <Phone#>]

[-email <Email>] [-hometel <HomePhone#>] [-pager <Pager#>]

[-mobile <CellPhone#>] [-fax <Fax#>] [-iptel <IPPhone#>]

[-webpg <WebPage>] [-title <Title>] [-dept <Department>]

[-company <Company>] [-mgr <Manager>] [-hmdir <HomeDir>]

[-hmdrv <DriveLtr>:] [-profile <ProfilePath>]

[-loscr <ScriptPath>] [-mustchpwd {yes | no}]

[-canchpwd {yes | no}] [-reversiblepwd {yes | no}]

[-pwdneverexpires {yes | no}]

[-acctexpires <NumDays>] [-disabled {yes | no}]

[{-s <Server> | -d <Domain>}] [-u <UserName>]

[-p {<Password> | *}] [-c] [-q] [{-uc | -uco | -uci}]]

几个具体用法如下:

重置用户帐户的密码

dsmod user UserDN -pwd 新密码 [-mustchpwd {yes | no}] 下次登录时修改此密码

启用或禁用账户

dsmod user UserDN 可分辨名称 -disabled {yes|no} yes 禁用 no 启用

修改计算机帐户属性的格式为:

dsmod computer ComputerDN ...[-desc Description] [-loc Location] [-disabled {yes | no}] [-reset] [{-s Server | -d Domain}] [-u UserName] [-p {Password | *}] [-c] [-q] [{-uc | -uco | -uci}]

重设计算机帐户

dsmod computer ComputerDN -reset

启用或禁用计算机帐户

dsmod computer ComputerDN 可分辨名称 -disabled {yes|no} yes 禁止登录 no 允许登录

将计算机帐户添加到组中

dsmod group GroupDN -addmbr ComputerDN

要创建一个sales全局组,并将用户mike加入到该组中,可以执行以下命令:

C:\>dsadd group cn=sales,ou=sales,dc=yjx,dc=com -desc 销售部

dsadd 成功:cn=sales,ou=sales,dc=yjx,dc=com

C:\>dsmod group cn=sales,ou=sales,dc=yjx,dc=com -addmbr cn=mike,ou=sales,dc=yjx,dc=com

dsmod 成功:cn=sales,ou=sales,dc=yjx,dc=com

dsget命令(查看活动目录对象的属性)

dsget命令用户查看活动目录对象的各个属性,基本用法如下:

l dsget computer - 显示目录中计算机的属性。

l dsget contact - 显示目录中联系人的属性。

l dsget subnet - 显示目录中子网的属性。

l dsget group - 显示目录中组的属性。

l dsget ou - 显示目录中组织单位的属性。

l dsget server - 显示目录中服务器的属性。

l dsget site - 显示目录中站点的属性。

l dsget user - 显示目录中用户的属性。

l dsget quota - 显示目录中配额的属性。

l dsget partition - 显示目录中分区的属性。

以下命令分别用来查看用户的基本信息、SID、显示名称以及所属的组:

C:\>dsget user cn=mike,ou=sales,dc=yjx,dc=com

dn desc samid

cn=mike,ou=sales,dc=yjx,dc=com mike

dsget 成功

C:\>dsget user cn=mike,ou=sales,dc=yjx,dc=com -sid

sid

S-1-5-21-91321346-2733940933-1992975926-1120

dsget 成功

C:\>dsget user cn=mike,ou=sales,dc=yjx,dc=com -display

display

mike yang

dsget 成功

C:\>dsget user cn=mike,ou=sales,dc=yjx,dc=com -memberof

"CN=sales,OU=sales,DC=yjx,DC=com"

"CN=Domain Users,CN=Users,DC=yjx,DC=com"

其他命令(dsquery、dsmove、dsrm)

其他的活动目录操作命令还包括dsquery、dsmove、dsrm等,分别用于活动目录对象的查询、移动和删除。

要查找sales OU中的所有用户,可以执行以下命令:

C:\>dsquery user ou=sales,dc=yjx,dc=com -name *

"CN=mike,OU=sales,DC=yjx,DC=com"

"CN=user1,OU=sales,DC=yjx,DC=com"

"CN=user2,OU=sales,DC=yjx,DC=com"

要查找sales OU中已经3个星期不活动的用户,可以执行以下命令:

C:\>dsquery user ou=sales,dc=yjx,dc=com -inactive 3

要将mike用户移动到finance OU中,可以执行以下命令:

C:\>dsmove cn=mike,ou=sales,dc=yjx,dc=com -newparent ou=finance,dc=yjx,dc=com

dsmove 成功:cn=mike,ou=sales,dc=yjx,dc=com

要删除sales OU中的用户user1,可以执行以下命令:

C:\>dsrm cn=user1,ou=sales,dc=yjx,dc=com

您确认要删除 cn=user1,ou=sales,dc=yjx,dc=com 吗(Y/N)? y

dsrm 成功:cn=user1,ou=sales,dc=yjx,dc=com

二、批量导入导出命令(csvde、ldifde)

使用csvde和ldifde命令可以批量导入活动目录对象,也可以将活动目录的内容导出,从而节省创建活动目录对象的时间。其中csvde命令使用.csv文件格式,即使用逗号分隔符的文本文档。

csvde命令的基本语法:

csvde [-i] [-f FileName] [-s ServerName] [-c String1 String2] [-v] [-j Path] [-t PortNumber] [-d BaseDN] [-r LDAPFilter] [-p Scope] [-l LDAPAttributeList] [-o LDAPAttributeList] [-g] [-m] [-n] [-k] [-a UserDistinguishedName Password] [-b UserName Domain Password]

常用参数

-i:指定导入模式。如果未指定导入模式,则默认模式为导出。

-f FileName

标识导入或导出文件名。

-s ServerName

指定域控制器执行导入或导出操作。

-v

设置详细模式。

-j Path

设置日志文件位置。默认路径为当前路径。

-d BaseDN

为数据导出设置搜索基础的可分辨名称。

-k

在导入操作期间忽略错误并继续处理。以下是已忽略错误的完整列表:

对象已存在。

约束冲突。

属性或值已存在。

-a UserDistinguishedName Password

将该命令设置成使用提供的 UserDistinguishedName 和 Password 来运行。默认情况下,将使用当前登录到网络的用户的凭据运行该命令。

-b UserName Domain Password

将该命令设置为作为 UserName Domain Password 运行。默认情况下,将使用当前登录到网络的用户的凭据运行该命令。

例如,要导出sales OU中的对象,并指定日志路径为c:\,可以执行以下命令:

C:\>csvde -f c:\sales.csv -d ou=sales,dc=yjx,dc=com -j c:\

连接到“(null)”

用 SSPI 作为当前用户登录

将目录导出到文件 c:\sales.csv

搜索项目...

写出项目

.........

导出完毕。后续处理正在进行...

导出了 9 个项目

命令已成功完成

导出结果如下: