计算机是模拟现实生活的电子设备,联网的计算机模拟客观世界人与人之间的关系。在现实世界中,人人都有一个身份,每个人的身份决定了每人的工作于职权范围。同样,在网络中每台计算机和计算机的使用者也都有其各自不同的身份,拥有不同的访问或管理权限。域用户身份相当于网络中的“×××”。


用户类型

    计算机中的用户分为本地用户和域用户账户,两种账户类型应用范围不同。本地用户账户主要只用于工作组环境和个人环境,域用户账户主要适用于Windows域环境。


什么是用户

    每个使用计算机的人都有一个代表“身份”的名称,称为“用户”。用户的权限不同,对计算机及网络控制的能力域范围也不同。

    Windows操作系统中有两种不同类型的用户,即只能访问本地计算机(或使用远程计算机访问本计算机)的“本地用户账户”和可访问网络中所有计算机的“域用户账户”。在非域控制器中,本地用户和组是主要的管理对象。本章内容着重阐述“域用户账户”的挂你。计算机中的用户分为本地用户账户和域用户账户两部分,用户组可以分为本地用户组和域用户组,而域用户组又可以分为通信组和安全组。为了实现高级网络管理,从Windows 2000开始,就引入了“OU”组织单位。


本地用户账户

    本地用户账户针对某一台计算,对于网络中的某一台计算机来说(域控制器除外),每台计算机都可以创建若干个“本地用户账户”,使用这些创建的“本地用户账户”就可以使用(或通过远程访问)这台计算机。使用“本地用户账户”只能访问某一台计算机,不同的计算机有不同的本地用户账户。

    1.定义登录用户

    安装Windows操作系统(Windows XP/7/8,Windows Server 2000/2003/2008/2008R2/2012)过程中,都会显示一个窗口***要安装者定义登录用户名称(以安装Windows 8操作系统为例)。***要定义用户名、密码、重新输入密码以及密码提示等信息。本例中定义名称为“admin”的用户,该用户默认作为当前计算机的管理员。

    操作系统安装完成后,以定义的用户名称登录。

    登录成功后,使用“whoami”命令可以查看当前登录的计算机名称,使用“net localgroup administrators”命令,查看用户是否为本地管理员组“administrators”中成员。

    2.创建用户之一

    以本地管理员身份打开应用程序“计算机管理”(或者运行命令“compmgmt.msc”),选择“本地用户和组”-“用户”选项,显示Windows Server 2012安装完成后默认安装过程中创建的用户,其中“Administrator”是默认的管理员用户,具备当前计算机的最高执行权限,用户“Guest”是来宾访问用户,默认该用户被禁用。

    如果***要创建新用户,中间窗格中单击鼠标右键,在弹出的快捷菜单中选择“新用户”命令。

    命令执行后,打开“新用户”对话框。各个文本框中键入用户对应信息,注意,***置的密码***要符合当前计算机的密码***置策略。单击“创建”按钮,创建新用户。同样的方法可以创建任意多个***要的用户。

    3.创建用户之二

    除了使用“计算机管理”窗口创建用户之外,还可以是使用“NET”命令创建用户,例如创建名称为“mxl”的用户。在命令行提示符下,键入如下命令。

    net user mxl 12345!A /add

    命令执行后,创建新用户。注意,如果***置的用户密码不符合密码规则,创建用户将出现错误。

    删除用户执行后,删除目标用户。

    4.批量创建用户

    创建100个名称已“wsj”开头的用户,在命令行提示符下,键入如下命令。

    For /: %a in(1,1,100)do net user wsj%a 12345!A /add

    命令执行后,创建100个以“wsj”开头的用户。

    For /L %a in(1,1,100)do net user wsj%a /del

    命令执行后,删除所有“wsj”开头的用户。

    5.查询普通用户的SID

    使用“whoami /user”命令,查询当前登录用户的SID

    6.创建新租之一(略)

    7.创建新租之二

    除了使用“计算机管理”窗口创建组之外,还可以使用“NET”命令创建组,例如创建名称为“TestHR”的组。在命令提示符下,键入如下命令。

    net localgroup TestHR /add

    命令执行后,创建目标新组。

    键入如下命令,将用户添加到目标组。

    net localgroup TestHR wsj /add

    命令执行后,将用户“王淑江”添加到“TestHR”组

    删除组执行以下命令。

    net localgroup TestHR /del

    命令执行后,删除目标组

    批量新建用户并添加到“TestHR”组,执行以下命令。

    For /L %a in(1,1,100)do net user wsj%a 12345!A /add

    For /L %a in(1,1,100)do net olcalgroup TestHR wsj%a /add

    使用以下命令查询组中的用户。

    net localgroup TestHR


域用户账户

    “域用户账户”在网络中的域控制器上创建,使用“域用户账户”可以(根据权限***置)访问网络中的所有计算机或某些计算机。

    1.管理平台变化

    独立服务器提升为域控制器后,用户管理方式发生改变。原独立计算机的用户管理方式为“计算机管理”应用程序,域控制器中用户管理被“Active Directory管理中心”、“Active Directory用户和计算机”“DS命令组”、“PowerShell命令组”所代替,“NET命令组”在Windows Server 2012中同样支持。

    域控制器中打开应用程序“计算机管理”后,“本地用户和组”选项已经取消,“计算机管理”不具备管理用户和组权限。

    取而代之的是“Active Directory管理中心”、“Active Directory用户和计算机”。

    2.用户名称变化

    加域前用户名称为计算机名“+”+用户名称,例如book\administrator。通过“whoami”命令可以查看当前登录用户名称。

    3.用户SID变化

    使用“whoami /user”命令,查询当前登录用户的SID

    使用“ds”命令组,查询域内用户的SID。在命令行提示符下,键入如下命令。

    dsquery user-limit 200 | dsget user -sid

    命令执行后,显示域内200个用户的sid

    4.用户位置变化

    独立服务器中所有用户信息存储在“SAM”数据库中,提升为域控制器后,所有用户信息存储到“Active Directory数据库”中,数据库文件名称为“NTDS.dit”,数据库文件位置为“%systemroot%\ntds”。打开“Active Directory用户和计算机”控制台后,所有用户移动到“Users”容器中。用户默认隶属于“Domain users”组,所有域内用户都是该组成员。

    5.用户属性变化    

    以用户“wsj100”为例说明用户属性发生的变化。

    独立计算机中用户“wsj100”打开属性对话框后,“常规”选项卡-“隶属于”选项卡

    提升为域控制器后,用户“wsj100”打开属性对话框后,“常规”选项卡,该选项卡中用户可以用属性较独立计算机中扩展较多,“隶属于”选项卡。同事,用户属性“地址”、“账户”等多个选项卡都可以独立进行配置。用户所有属性信息全部保存在Active Directory数据库中。

    6.组位置变化

    独立服务器中所有组信息存储在“SAM”数据库中,提升为域控制器后,所有组信息存储到“Active Directory数据库”中。打开“Acitve Directory用户和计算机”控制台后,独立计算机中的所有组移动到“Users”容器中。例如,TestHR组。

    7.组属性变化

    以“TestHR”组为例说明组属性发生的变化。

    独立计算机中该组属性。该组中存在系列以“wsj”开头的用户。

    提升为域控制器后,使用“Active Directory用户和计算机”打开“TestHR”组,“常规”选项卡显示组作用域和组类型。“成员”选项卡显示该组中的成员信息。注意,成员身份隶属于“Book/Users”组。


用户命名原则

    当企业员工从计算机登录到域时,该员工必须由一张被域控制器认可认可的“×××”,这张×××在域中就是用户账户。在域中创建和管理用户账户的操作必须在域控制器中进行。用户账户名称必须是唯一的,不能出现重名。

    1、用户作用

    用户账户的用途如下。

    ·验证用户或计算机的身份。用户账户使用户能够利用经域验证后的表示登录到计算机和域。登录到网络的每个用户应有自己的唯一账户和密码。为了获得最高的安全性,应避免多个用户共享一个账户。

    ·授权或拒绝访问域资源。一旦用户已经过身份验证,那么久可以根据指派给用户的权限,授***或拒绝该用户访问域资源。

    ·管理其他用户账户。在本地域中可以使用委派控制,允许对某个用户进行单独权限委派,例如,使某个用户具备更改其他用户密码的权限。

    ·审核使用用户或计算机账户执行的操作。审核有助于监视账户安全性。

    2.用户命名原则

    在企业网络中,使用计算机的每个人都拥有一个账户,计算机使用者使用自己的账户访问网络中发布的资源,并完成域其相对应的管理任务。

    命名习惯通常如下。

    ·对于每个使用者,通常都是使用期“姓”的全称+“名”的简称,例如王淑江的用户名为wangsj。

    ·如果使用简称之后有“重名”的现象,可以对重名的用户使用全称或者加序号标识,例如wangsj01.


用户密码

    密码是用户登录网络的钥匙,如果没有钥匙总要是费一番力气后,才能登录到目标操作系统。无论***者采用何种远程***,如果无法获得管理员或超级管理员的用户密码,就无法完全控制整个系统。若想访问系统,最简单也是必要的方法就是窃取用户的密码。因此,对管理员账户来说,最***要保护的就是密码,如果密码被盗,也就意味着灾难的降临。

    据统计,大约70%以上的安全隐患是由于密码***置不当引起的。因此,密码的***置无疑是十分讲究技巧的。在***置密码时,请遵守密码安全***置原则,该原则适用于任何使用密码的场合。

    1.不能让账号与密码相同

    如果密码***置得与用户账户相同,几乎所有的密码破解软件都讲轻而易举地探测出来。

    2.不能使用自己的姓名作为密码

    使用自己的姓或名,甚至是姓名作为密码,是在是不堪一击。对于本单位和熟悉本单位的人来讲,姓名无疑是***的首选,因为这几乎谁都能猜得到。

    3.不能使用常用的英文词组

    一些常用或别致的英文单词往往是用户***置密码时的最爱。在他们看来,这类密码既便于记忆,又凸显自己的个性。单事实上,那些绝顶聪明的***者们也早已猜到并详细地讲起编入密码猜解字典之后,因此,常用英文此组绝不可用作密码。

    4.不能使用特定意义的日期

    以具有特定意义的日期作为密码任何人都十分喜爱。这一类日期通常有自己的生日、父母生日、儿女生日、朋友生日、重大节日以及个人纪念日等。不用说熟悉的人可以猜得到,即使是陌生人也可以通过穷举的方式而得手。在***者的密码猜解字典中,几乎全部罗列以上所有的几个组合。

    5.不能使用简单的密码

    一个以密码暴力蔡姐软件每秒钟可以尝试10万次之多。字数越少,字符越简单化,排列组合的结果也就越少,也就越容易被攻破。

    6.经常修改密码

    账户密码应当定期修改,尤其是当发现有不良***时,更应及时修改复杂密码,以免被破解。为必秒密码因过于复杂而忘记,可用笔记本记录下来,并保存在安全的地方,或随身携带避免丢失。

    7.密码***置原则

    综上所述,若欲保证密码的安全,应当遵循以下规则。

    ·用户密码应包含英文字母的大小写、数字、可打印字符,***置是费打印字符。建议将这些符号排列组合使用,以期达到最好的保密效果。

    ·用户密码不要太规则,不要使用用户姓名、生日、电话号码以及常用单词作为密码。

    ·根据Windows系统密码的散列算法原理,密码长度***置应超过7位,最好为14位或更长。

    ·密码不得以明文方式存放在系统中,确保密码以加密的形式写在硬盘中,且包含密码的文件是只读的。

    ·密码应定期修改,应避免重复使用旧密码,应采用多套密码的命名规则。

    ·启用账号锁定机制。一旦同一账号密码校验错误若干次即断开连接并锁定该账号,经过一段时间才解锁。

    在Windows Server 2012系统中,如果在“密码策略”中启用了“密码必须符合复杂要求”***置的话,则对用户的密码***置有如下要求。

    ·不包含全部或部分的用户账户名。

    ·长度至少为7个字符。

    ·包含以下4种类型字符中的3种字符。

        -英文大写字母(从A到Z)

        -英文小写字母(从a到z)

        -10个基本数字(从0到9)

        -非字母字符(例如!、$、#、%)


用户登录方式

    Windows客户端操作系统(XP/7/8)登录域时,可以使用以下几种方式登录。

    ·UPN(User Principal Name)方式登录。

    ·登录名方式登录。

    ·登录名(Windows 2000以前版本)方式登录


    UPN方式登录

    UPN即User Principal Name(用户主体名称),格式和E-mail地址相同,例如“wsj@book.com”。其中,wsj称为用户主体名称前缀,一般对应用户登录名;book.com为用户主体名称后缀,一般为根域的域名。

    使用用户主体名称的优点如下:

    ·当将一个用户帐号移动到不同域时用户主体名称不变,因为该名字在活动目录中具备唯一性,因此可以使用同一个UPN名称登录。

    ·用户主体名称和用户的E-mail地址名一样,可以与Exchange Server消息协作系统集成。

    UPN登录

    UPN(User Principal Name),用户主体名称格式为用户名+“@”+域名,例如waj@book.com和电子邮件地址相同。

    1.UPN应用环境

    域管理中经常遇到以下情况,域用户(wsj@book.com)使用的第三方的邮件地址(wsj@hotmail.com),并且已经习惯该种应用方式,登录域时希望使用该种方式登录。通过UPN方式登录可以解决该问题。

    2.设置UPN后缀

    AD DS域服务安装完成后,默认UPN后缀为空,管理员可以设置需要的UPN后缀。

    第1步,打开“Acitve Directory域和信任关系”控制台,右击“Active Directory域和信任关系”,在弹出的快捷菜单中选择“属性”命令。

    第2步,命令执行后,打开“Acitve Directory域和信任关系”对话框。默认没有设置任何UPN名称。在“其他UPN后缀”文本框中,键入需要定义的UPN后缀名称,例如hotmail.com,单击“添加”按钮,UPN名称添加到下方列表中,使用该方式添加需要的所有UPN名称,单击“确定”,完成UPN后缀的设置。

    3.设置用户UPN

    新建用户时,“用户登录名”右侧选择用户使用的UPN名称

    4.UPN用户登录


常用用户属性

    查看用户属性

    1.Active Directory用户和计算机(略)

    2.DS命令组

    通过“dsget user”命令查看目标用户信息,例如查看用户“王淑江”的登录名、描述信息、User Principal name信息。

    在命令行提示符下,键入如下命令。

    dsget user CN=王淑江,CN=Users,DC=book,DC=com -samid -desc -upn

    Dsget user命令参数可以通过“Dsget user /?”查询

    3.PowerShell命令组

    PowerShell命令查询用户信息,也是建议使用的用户查询方式。

    在命令行提示符下,键入如下命令。

    Get-ADUser-Identity wangsj


    DN和RDN

    LDAP是用来访问Acitve Directory数据库的目录服务协议。AD DS域服务通过使用LDAP名称路径表示对象在Active Directory数据库中的位置。管理员使用LDAP协议来访问活动目录中的对象,LDAP通过“命令路径”定位对象在数据库中的位置,即使用标识名(Distinguished Name,DN)和相对标识名(Eelative Distinguished Name,RDN)标识对象。DN标识对象在活动目录中完整路径,RDN用来标识容器中的一个对象,是DN中最前面(第一个逗号前)的一项。

    例如,通过“Acitve Directory用户和计算机”控制台查看用户“wsj”。

    ·book.com域创建OU:HR

    ·HR包括子OU:CHR;

    ·CHR包括用户“wsj”

    则用户“wsj”完整DN标识为CN=wsj,OU=CHR,OU=HR,DC=book,DC=com。

    RDN为CN=wsj。

    参数说明如下。

    ·DC(Domain Name)标识DNS域名。例如DC=book,DC=com表示的域名为book.com。

    ·OU(Organization Unit)标识组织单位。DN中何时使用OU而不是使用CN呢?只要组织单位是管理员手动创建,非系统默认容器,就需要使用OU做为标识。例如OU=CHR,OU=HR,CHR是HR的子OU,两个OU都是管理员手动创建。

    ·CN(Common Name),何时使用CN呢?CN是通用名称,除了OU、DC需要特殊标识,其他容器全部使用CN作为标识。

    ·如果DN中包含空格,需要使用引号将整个DN括起来做为一个完整的整体。例如“CN=wsj,CN=Users,DC=book,DC=com”。


    GUID

    GUID即Global Unique Identifier(全局唯一标识符)。GUID是一个128的数值,所建立的任何一个对象,系统都会自动给这个对象指定一个唯一的GUID,即使对象名称更改,GUID保持不变。


创建域用户

    活动目录中域用户是最小的管理单位,域用户最容易管理同时又最难管理,如果赋予域用户的权限过大,将对网络安全带来隐患,如果权限过小将限制域用户的正常工作。同时域用户的种类不同,管理任务也不同。

    用户类型

    域中常见的用户类型包括普通域用户、域管理员以及企业管理员。

    ·普通域用户:通过Net、Dsadd、Powershell或者“Active Directory用户和计算机”创建的普通域用户,默认用户添加到“Domain Users”中。

    ·域管理员:普通域用户添加到“Domain Admins”组中后,其权限提升为域管理员权限。

    ·企业管理员:普通域用户添加到“Enterprise Admins”组中后,其权限提升为企业管理员权限。企业管理员具备域中最高权限。


    默认用户

    1.域控制器默认用户

    Windows Server 2012提升为域控制器后,“administrator”作为默认域管理员账户,“Guest”用户被禁用


默认用户账户                           功能
Administrator账户Administrator账户具有域的完全控制权限,可以根据需要将用户权利和访问控制权限分配给域用户,此账户仅用于需要管理凭据的任务,建议使用强密码来设置此账户,Administrator账户是下列Acitve Directory组的默认成员:Administrators、Domain Admins、Enterprise Admins、组策略创建者所有者组和Schema Admins,永远也不可以从管理员组删除Administraotr账户,但可以重命名或禁用该账户,Adminsitrator账户是通过“Acitve Directory域服务安装向导”设置新域时创建的第一个账户,即使已经禁用了Administrator账户,仍然可以在安全模式下使用该账户访问域控制器
Guest账户在域中没有实际账户的人员可以使用Guest账户,如果已禁用某用户的账户(但尚未删除),则该用户还可以使用Guest账户,Guest账户不需要密码,可以像任何用户账户一样设置Guest账户的权限,默认情况下,Guest账户是内置“来宾”组和“域来宾”全剧组的成员,这允许用户登录到域上,默认情况下将禁用Guest账户,并且建议将其保持禁用状态
Krbtgt帐号Krbtgt帐号是在新建一台域控制器时,由系统自动创建使得,用于Kerberos验证的服务帐号,同时,系统会随机分配一个密码给到Krbtgt帐号,krbtgt帐号是kerberos的服务帐号,默认无法删除

    2.非域控制器默认用户

    默认用户应该还包括在独立计算机中创建的用户。

    如果用户在网络中的第一台域控制器中创建,创建的用户添加到本地管理员组中,则用户将被一同提升为域管理员。如果是普通用户,则添加到“Domain users”组中。独立计算机中设置的用户密码,提升为域控制器后同样有效。

    如果用户不再网络中的第一台域控制器中创建,创建的用户仅对当前计算机有效。不会自动提升到域控制器中。


创建单一普通域用户


批量创建普通域用户

    1.Csvde工具批量创建用户

    Csvde工具只能用于添加对象,在导入模式下不能通过导入的文件修改已有对象。

    数据格式说明如下。

    Csv文件中第一行数据是域用户属性标识符。各属性数据之间使用“,”分隔。

    Csv文件中第二行数据是与第一行属性标识符相对应的数据值。

    在命令行提示符下,键入如下命令。

    csvde -i -f c:\userlist.csv -j c:\

    命令执行后,将“userlist.csv”的用户配置文件导入到活动目录,产生的日志文件输出到“c:\csv.log”。


批量导入用户过程中出现的问题

    批量导入用户过程中,经常遇到用户导入成功后显示乱码的问题。

    出现该问题的原因是字符编码问题,默认状态下Windows Server 2012采用“Unicode”编码,用户配置文件一般使用“ANSI”编码,因此将用户配置文件“另存为”支持“Unicode”格式的CSV文件或者txt文件即可。


创建域管理员

    创建完成的域用户添加到“Domain Admins”组后,普通域用户提升为域管理员。


创建企业管理员

    域中具备最高管理权限的用户不是“Administrators”和“Domain Admins”组成员,而是“Enterprise Admins”组成员。默认管理员“Administrator”是“Enterprise Admins”组中的成员,也是唯一的成员。因此默认管理员账户“Administrator”具备企业的最高管理权限。

    由于众所周知的原因,“Administrator”是一个不安全的因素,建议将“Administrator”管理员账户降级为普通的用户,使其具备最低的权限,禁止或者重命名此账户。创建一个新的账户,使其据别Acitve Directory中最高的管理权限。


用户配置文件

    用户配置文件,是用户登录时系统加载所需环境的设置和文件的集合,包括所有用户专用的配置设置,如程序项目、屏幕颜色、网络连接、打印机连接、鼠标设置及窗口的大小和位置等。当用户使用Windows 2000以上操作系统的计算机第一次登录到域时,就会为用户自动创建专用配置文件。


用户配置文件

    用户配置文件包括所有用户专用的配置设置,仅对当前用户生效。

    1.用户配置文件类型

    用户配置文件有4种配置文件类型,分别为本地用户配置文件、漫游用户配置文件、强制用户配置文件以及临时配置文件。

    ·本地用户配置文件。用户第一次登录到计算机上时创建,任何对本地用户配置文件所做的更改都只对当前的计算机产生作用。

    ·漫游用户配置文件。本地配置文件副本储存在服务器中。当用户每次登录到网络上的任一台计算机上时,自动下载配置文件,当用户注销时,用户配置文件自动与服务器同步。

    ·强制用户配置文件。特殊类型的配置文件,管理员可为用户指定特殊的设置。只有管理员才能强制修改用户配置文件。当用户从系统注销时,用户对桌面做出的修改就会丢失。

    ·临时配置文件。临时配置文件只有在因一个错误而导致用户配置文件不能被加载时才会出现。临时配置文件允许用户登录并改正任何可能导致配置文件加载失败的配置。临时配置文件在每次会话结束后都将被删除。注销时对桌面设置和文件所做的更改都会丢失。


    2.用户配置文件存储位置。

    用户配置文件分为2种类型:本机用户配置文件和域用户配置文件

    如果本机用户和域用户都在本机登录过,将在同名文件夹后面附加后缀。后登录的用户的文件夹添加域名为后缀。如果首先域用户方式登录,然后本地计算机用户登录,后创建的用户配置文件夹后缀为计算机名称。


漫游用户配置文件

    域环境中,默认状态下所有域用户可以在域内任意一台计算机登录。当用户在一台计算机上登录并配置之后,默认情况下,用户配置文件保存在登录过的本地计算机中。到其他计算机上登录时,所有的设置还原为原始设置。如果在域环境中,任何一台计算机登录都使用相同的配置,该如何实现?

    1.漫游用户配置文件

    漫游用户配置文件是使用户登录到域中的计算机后,将用户配置文件存储在由管理员指定的服务器中。当用户成功登录后,用户配置文件将复制到当前登录的本地计算机中。当本地计算机上的用户配置文件修改并注销用户后,所做的更改将复制到存储在服务器上的用户配置文件中,并在下次用户登录时应用。

    从“Active Directory用户和计算机”控制台中,可以为用户配置文件指派服务器位置。如果用户的域账户中输入了用户配置文件的路径,当用户注销时,该用户本地用户配置文件的副本将保存到本地和用户配置文件路径位置。用户下次登录时,用户配置文件路径位置中存储的配置文件将与本地用户配置文件文件夹中的副本进行比较,然后打开最新的配置文件副本。由于存储在指定的服务器中,该本地用户配置文件将称为漫游用户配置文件。不论用户在什么地方登录,都可以使用其设置和文档。

    2.配置漫游用户配置文件

    管理员可以通过多种方式配置漫游用户配置文件存储位置。用户登录后,从服务器中将用户配置文件下载到本地并加以应用。当用户注销时,将把本地的用户配置文件同步到服务器,保证服务器和本地计算机用户配置文件同步。


    用户漫游配置文件注意事项

    漫游用户配置文件必须存储在服务器中,用户注销时,相关更改会自动保存到服务器中。域中户无论下次从域中哪一台计算机登录,都可以使用最后保存的配置文件作为工作环境。在应用中需要注意以下问题。

    ·漫游用户配置文件只适用于域用户使用。只有在域(Active Directory)环境中才能够使用漫游配置文件。本地计算机用户无法使用漫游配置文件。

    ·只有在域用户注销时配置更改才会保存到配置文件中。例如域用户在桌面保存一个文档。在没有注销前,这个文档不会保存到漫游配置文件中。此时该域用户在其他计算机中需要使用该文档,最新的更改将不会被应用,该文档还没有被保存在漫游配置文件中,仅保存在本地。

    ·由于漫游配置文件存放在网络中的服务器中,而不是存储在本地,如果内部网络出现故障,用户将不能读取服务器中的用户配置文件。因此,部署前建议先评估当前的网络环境。


用户基础管理

    用户基础管理,是域管理员最常见的管理任务,完成用户的基本管理工作,例如解锁用户、添加到组、启用账户、删除账户、重命名用户、移动用户等。每个管理任务都可以通过“Active Directory管理中心”、“Acitve Directory用户和计算机”、“DS命令组”以及“Powershell命令组”完成相同的功能。

    复制

    添加到组

    禁用账户

    启用账户

    重置密码

    删除用户

    重命名用户

    移动用户


用户管理实战

查询用户

    1.查询所有用户

    Dsquery user

    2.查询组中所有用户

    dsget group "CN=Domain Admins,CN=Users,DC=book,DC=com" -members

    3.查询组织单位中所有成员

    dsquery user"OU=hr,dc=book,dc=com"

    4.查询名称包括“admin”字符串的所有用户

    dsquery user -name admin*

    5.查询域中所有被禁用的用户

    dsquery user -disbaled


批量解锁被锁定的账户

    网络由于病毒等原因,部分域用户被锁定,策略锁定时间是30分钟。30分钟之前,锁定的用户无法登录域并使用域内的资源。管理任务:找到所有被锁定的账户并快速解锁账户。

    1.“Acitve Directory用户和计算机”查询并启用域中被禁用的账户(略)

    2.“DS命令组”查询并启用域中被禁用的账户

    dsquery user -disabled | dsmod user -disabled no

    注意:不能在内置账户“krbtgt”上运行启用账户命令。


统一更改默认本地管理员密码

    客户端计算机安装操作系统时,无论Windows XP操作系统还是Windows 7/8操作系统,默认安装用户都使用具备本地管理员权限的用户安装。网络中部署域服务后,用户只能登录到域,不能使用本地管理员账户登录。因此需要统一修改客户端计算机本地默认管理员“administrator”的密码。

    1.部署策略

    打开“组策略管理器”控制台,选择目标组策略对象,本例以默认“Default Domain Policy”为例说明。编辑该策略,选择“用户配置”-“首选项”-“控制面板设置”,选择“本地用户和组”选项。

    右侧空白处,单击鼠标右键,在弹出的快捷菜单中选择“新建”选秀爱那个,在弹出的级联菜单中选择“本地用户”命令。

    命令执行后,打开“新建本地用户属性”对话框。“用户名”文本框中设置本地管理员的用户名称。注意,根据需要定制本地管理员名称。“密码”和“确认密码”文本框中键入本地管理员用户使用的新密码。设置密码权限管理方式。

    单击“确定”按钮,显示“密码警告”对话框。提示密码存储位置。注意,密码以加密方式存储。

    单击“确定”,完成策略设置。

    2.策略测试

    策略生效后,对所有操作系统(Windows XP/7/8)生效。使用客户端计算机的用户,由于不知道本地管理员“Administrator”密码因而无法等落,从而提升系统安全。


禁止删除用户

    Windows Server 2008之后的AD DS域服务支持禁止删除用户功能,启用该功能后执行删除操作将不能删除用户。如果用户使用“Acitve Directory用户和计算机”创建用户,创建过程中不能设置该功能,只能在创建用户完成后在属性中设置。如果使用“Acitve Directory管理中心”创建用户,可以直接启用该功能。

    1.设置用户属性

    打开“Acitve Directory用户和计算机”,单击菜单栏的“查看”菜单,在显示的下拉菜单列表中选择“高级功能”命令。选择目标用户,右击目标用户,在弹出的快捷菜单中选择“属性”命令,打开用户属性对话框,切换到“对象”选项卡。选择“防止对象被意外删除”选项,单击“确定”按钮,启用用户被禁止删除功能。

    2.用户删除验证


用户登录时只能登录到域

    用户登录时,根据输入的用户名(UPN、用户登录名)将登录到不同的应用环境。以Windows 7操作系统为例说明,如果用户登录过程中输入的用户名为“.\demo”,则登录本地,如果输入“book\demo”或者“demo@book.com”,则登录到域。在部署AD DS域服务的网络环境中,不允许使用本地用户登录,只能使用域用户登录到域或者本地管理员用户登录到本地。本地管理员用户同意管理,本地管理员(默认管理员“administrators”)密码作为机密资料管理,不对任何用户公开。

    1.部署域策略

    打开“组策略管理器”控制台,选择目标组策略对象,本例以默认“Default Domain Policy”为例说明。编辑该策略,选择“计算机配置”-“策略”-“Windows设置”-“安全设置”-“本地策略”-“用户权限分配”选项,选择“允许本地登录”策略,默认状态下该策略没有设置。

    启用“允许本地登录”策略,将需要限制的用户或者组添加到列表中,本例中允许本地管理员组和域用户登录到本地计算机中,因此需要将“Domain Users”组和“administrators”组添加到允许的用户列表中。

    策略设置完成后,使用“gpupdate /force”命令刷新策略。

    2.客户端计算机验证

    客户端计算机运行Windows 7操作系统,并加入到域中。其中:

    ·用户“wsj”是本机计算机中创建的用户并且添加到“Power Users”组。

    ·默认所有用户(包括“Domain Users”)都属于本地计算机的“Users”中。

    ·“Administrators”组是本地管理员组。

    以本地普通用户“wsj”登录,键入用户名和密码后,拒绝普通用户登录

    以域用户“book\demo”或者本地管理员组“administrators”中的用户登录,键入用户名和密码后,成功登录域。


恢复误删除的用户

    域环境中,恢复删除的活动目录对象可以使用在线恢复和离线恢复两种方法。两种方法各有利弊,适用于不同的应用环境。

    ·在线恢复:指的是域控制器在线,在不停机的状态下恢复删除的活动目录对象。安装Windows Support Tools后,可以使用LDP工具,或使用专用恢复工具恢复删除的对象。缺点是通过以上LDP和专用工具还原回来的帐号处于禁用状态,除了“登录名”、“SID”、“GUID”、“USN”等属性之外,还丢失很多信息,例如姓名、描述、电话、所属组等。因此还原后的用户需要手动添加用户信息以及再次添加组成员关系,账户需要再次“启用”后才能正常使用。如果连接Exchange Server,需要手动为用户添加邮箱信息。

    ·离线恢复:指的是域控制器离线,在“目录还原模式”中恢复删除的活动目录对象。离线的域控制器不能提供任何网络级别的服务,因此如果采用离线恢复,建议在非工作时间完成。优点是用户被删除之前的所有属性(账户信息、组成员关系)都将完整保留,不会丢失任何数据,能够确保数据完整性。

    1.删除用户

    活动目录对象(用户、计算机、组、组织单位等)被删除后,没有直接物理删除,而是放在“Deleted Objects”CN中。如果Windows Server 2003没有升级到SP2,被删除的对象默认保存时间为60天。如果更新到SP2,默认保存时间为180天。超出保存时间后,“Deleted Objects”容器中的对象将被物理删除。因此,在有效期内要恢复已经删除的活动目录对象,可以通过在线恢复和离线恢复两种模式。

    用户被删除后,用户登录网络将出现错误。同时,组成员关系发生变化,域用户加域后默认添加到“Domian Users”,删除后自动从“Domain Users”组中被删除。用户删除信息被立即“推”送到所有域控制器,每台域控制器中的用户信息被标记为“已删除”。

    用户被删除后,新建同名用户,虽然名称相同,但是用户的SID不同。Windows内部使用SID识别用户以及区分用户权限。

    2.在线恢复

    ·AdRestore工具

    AdRestore分为命令行版本和GUI版本,GUI版本需要安装.Net Framework 2.0。

    ·Quest Object Restore for Active Directory工具

    ·ADRecycleBin工具

    3.离线恢复

    ·备份活动目录数据库

    无论网络中部署几台域控制器(解决单点故障),都需要备份活动目录数据库。建议安排一个任务计划自动完成活动目录数据库的备份,例如周备份。

    ·权威还原

    单位网络部署多台域控制器,域控制器之间的复制方式为多主复制。还原Acitve Directory数据库后,被删除的用户被还原到备份时的状态。由于备份操作在以前的时间点早于当前时间点,在线域控制器中用户的USN值高于新恢复用户的USN值,在线域控制器中该用户被标注为删除,新还原的域控制器后上线后和其他在线域控制器同步活动目录数据库,也就是说在网络中发布一个通告,该域控制器的某些数据是最高标准,其他所有域控制器都要以该域控制器为准,这样其他域控制器不会降低USN值的数据同步到该域控制器中。

    4.最佳解决方案

    ·事前预防

    对管理员来说,Windows Server 2012之前的版本恢复删除的Windows活动目录对象是件十分麻烦的事情。使用在线恢复方式虽然简单,但是以丢失活动目录对象数据为代价。离线恢复操作繁琐,可以完整恢复活动目录对象数据,但是以停止域控制器服务为代价。Windows Server 2012 AD DS域服务发布后,提供活动目录对象“事前预防”和“事后补救”功能,可以禁止删除和方便恢复删除的活动目录对象。因此,建议将其他版本的域控制器(2000/2003/2008)升级到Windows Server 2012。

    Windows Server 2012 AD DS域服务提供“未雨绸缪”功能,为已有或者新建的活动目录对象加一把禁止删除锁,已达到防止被以外删除的目的。新建组织单位提供“防止容器被意外删除”功能,选择该功能后如果删除该组织单位将出现禁止删除提示。

    ·事后补偿

    Windows Server 2012域服务提供的活动目录回收站功能,默认没有启用。启用该功能后,通过回收站恢复被删除的域对象。


用户在指定计算机登录

    网络中部署AD DS域服务后,默认情况下域用户可以在网络中的任何一台计算机中登录,某些重新部门为了保护信息要求专机专用,用户只能在自己的计算机中登录,在其他计算机中不能登录。

    1.设置用户属性

    打开“Active Directory用户和计算机”,选择目标用户、右击目标用户,在弹出的快捷菜单中选择“属性”命令,打开用户属性对话框,切换到“账户”选项卡。

    单击“登录到”按钮,打开“登录工作站”对话框。默认选择“所有计算机”单选按钮,允许用户登录到网络中的所有客户端计算机。

    选择“下列计算机”单选按钮,在“计算机名”文本框中键入允许登录的工作站的NetBIOS名称,单击“添加”按钮添加到列表中。添加多个客户端计算机名称,将允许该用户在多个指定的工作站上登录。

    单击“确定”按钮,用户只能在所允许的客户端计算机中登录。


限制用户登录时间

    AD DS域服务默认设置允许网络中的用户在任何时间登录到网络中。实际应用环境中,非工作时间不允许用户访问网络中的资源。因此,限制用户在非工作时段不能访问网络资源,也是保护网络安全的重要措施,可以有效地防止在工作时间之外的密码破解或暴力***。

    AD DS域服务中,可以限制用户的登录时间,例如限制为只能在某个时间段登录,其他时间不允许登录,从而避免可能在非工作时间产生的恶意***。

    目标用户-账户-属性-登录时间


USMT迁移用户配置文件

    网络中客户端计算机部署Windows XP操作系统,准备将操作系统升级到Windows 7,但是Windows XP操作系统无法直接升级Windows 7,并且每个域用户的环境都不相同。需要将运行Windows XP操作系统的域用户在保持个性化的同时,将桌面、文档、收藏夹等用户配置文件无缝迁移到Windows 7操作系统中。

    1.解决方法

    User state Migration Tool(USMT)4.0工具,使用该工具可以将用户配置文件从Windows XP操作系统迁移到WIndows 7操作系统。


清理长期没有登录的用户

    企业中由于用户离职等原因,导致部分用户长期没有登录域,称为“假死”用户,管理员可以删除长期没有登录的用户。管理员可以使用“dsquery”命令查询域中一定时间没有活动的账户,然后用“dsrm”命令删除。

    1.清理用户

    dsquery user -inactive 6

    回车,命令成功执行,将显示6周内没有登录的用户。

    键入如下命令

    dsquery user -inactive 6 | dsmod user -disable yes

    回车,命令成功执行,将显示并禁用6周内没有登录的用户。如果确认没有问题,则可以删除这些账户。

    键入如下命令。

    dsquery user -disable | dsrm

    回车,命令成功执行,查询出所有禁用的用户,将其删除。

    2.建议部署策略

    在域中部署密码策略,设置密码过期时间,默认为42天(6个星期),建议更新为63天(9个星期),超过9个星期没有登录的用户,管理员即可删除目标用户。


查询用户登录时间

    部署Windows Server 2012 AD DS域服务后,如何查询用户最后一次登录的时间?

    1.查询时间

    Windows Server 2012 AD DS域服务中,用户登录时间相关属性包括lastLogon和lastLogonTimestamp。

    lastLogon属性:每次用户登录到域时,lastLogon属性实时更新用户登录时间,但是不会从一个域控制器复制到另一个域控制器。LastLogon是记录某个账户上一次在该域控制器认证的时间。该属性是不会在域控制器之间复制的。所以,要是以前需要确定账户最后一次登录域的时间。LastLogon只会记录交互式登录并通过Kerberos验证的用户。例如,用户“demo”的时间。LastLogon只会记录交互式登录并通过Kerberos验证的用户。例如,用户“demo”登录到域控制器A,域控制器A上“lastLogon”属性就是用户最新登录时间。如果域控制器B上查询用户的最近登录时间,得到的结果将会是该用户没有登录过。

    lastLogonTimestamp属性。该属性支持域控制器之间复制。因此,查询域中任何一台域控制器,都会得到相同的结果。注意,lastLogonTimestamp属性不能够反映精确的“最后登录时间”。原因是如果用户每天要登录、注销好多次,每次登录状态都要复制到整个域的每台域控制器,可能导致相当大的复制流量。因此,lastLogonTimestamp属性值隔14天菜复制一次。同时对任何用户来说,登录时间可能有14天的偏移。

    2.查看单用户登录时间

    以域管理员身份登录域控制器。“高级功能”——目标用户——属性编辑器

    3.查看多用户登录时间

    Get-ADUser-Filter*-Properties* |select name ,lastlogon,lastLogonTimestamp

    命令执行后显示所有域中所有用户的登陆时间。注意:输出的时间需要转换。


域缓存登录

    网络中经常遇到以下情况:用户已经加入到域中,网络断开后,使用域用户可以继续登录。如何才能禁止这种应用方式,使域用户必须在连接到域的情况下菜可以使用?

    1.缓存登录

    网络断开后,可以使用域用户继续登录,是因为Windows操作系统默认启用允许缓存登录功能。默认缓存登录没有时间限制。

    以Windows 7操作系统为例说明。打开“组策略编辑器”,选择“计算机配置”-“Windows设置”-“安全设置”-“本地策略”-“安全选项”,右侧列表摸中“交互式登录:之前登录到缓存的次数(域控制器不可用时)”,默认值是10.注意:

    ·数字10,指的是10个用户登录,而不是一个用户登录的最大有效此书,一个用户可登录的此书理论上是无限的。

    ·10个用户账户,指已经在本地成功登录的用户,也就是已经缓存到本地的用户,而不是任意的账户。如果用户没有登录过,在登录时需要查询域控制器,在交互式登录下系统会提示当前域不可用。

    ·加入域的计算机,该策略有效设定,最终取决于域策略的部署。

    ·不允许缓存用户,该策略值设置为0。

    域用户成功登录计算机后,登录存储在注册表的以下位置:HKEY_LOCAL_MACHINE\SECURITY\Cache,默认包括10个子健,名称为NL$1-NL$10。每当一个用户登录此计算机,其配置文件“Profile”创建在“%HOMEDRIVE%\Documents and Settings”中,相应的用户信息和安全性描述保存到注册表中,键值中记录已经登录账户的名称机器相关标识。

    2.部署策略

    网络断开后,域用户不能登录域的解决方法是“交互式登录:之前登录到到缓存的此书(域控制器不可用时)”策略,默认状态下该策略没有设置。

    打开该策略属性对话框,选择“定义此策略设置”选项,文本框中设置为“0”,显示“不要登录缓存登录次数”

    注意:

    该策略设置中,0值表示禁用登录缓存。任何大于50的值都仅缓存50次登录尝试,Windows最多支持50个缓存项目,每名用户占用的项目数取决于凭据。例如,Windows系统中最多可以缓存50个唯一密码用户,但只能缓存25个智能卡用户账户。当具有缓存登录信息的用户再次登录时,该用户的个人缓存信息将会被替换。

    策略设置完成后,使用“gpupdate /force”命令刷新策略。


查看域用户密码修改情况

    企业中在未启用账户密码复杂性组策略之前,大部分用户使用的是简单密码或者没有设置密码。域中部署密码复杂性策略后,域用户不更改密码仍然可以登录域。因此,域管理员需要了解域密码更新状况。

    1.查看单用户密码修改时间

    “Active Directory用户和计算机”——“高级功能”——“目标用户属性对话框”——“属性编辑器”——“pwdLastSet”属性显示域用户密码最后修改时间。

    2.查看多用户密码修改时间

    Get-ADUser -Filter * -Properties * |select name,pwdlastset

    命令执行后显示所有域中所有用户的最后密码修改时间。注意,输出时间需要转换。


审核域账户登录

    企业管理中,当出现异常登录事件(非法时间登录、用户频繁登录)时,域管理员可以通过“安全”日志审核查询目标用户,从而锁定目标计算机。

    1.域用户相关的事件

    域用户成功登录时,在域控制器中将产生系统日志,分别如下。

    ·事件ID:4768。Kerberos身份验证服务。

    ·事件ID:4769。Kerberos身份验证服务。

    ·事件ID:4769。Kerberos身份验证服务。

    ·事件ID:4624。用户登录

    登录成功的事件ID为4624,由于用户登录时使用Kerberos协议,在这个日志ID产生前会有2个4769的“Kerberos身份验证操作”日志。

    2.查找登录日志

    查找过程可以分为2个部分。

    ·首先,通过筛选器查找登录成功ID为“4624”的所有日志。

    ·然后,通过日志“查找”功能查找域用户名称或者域用户SID相关记录。


批量映射用户主文件夹

    网络为用户部署了文件服务器,用户登录域时,自动将文件服务器发布的共享文件夹映射到本地计算机,默认逻辑盘符为“Z”盘。

    1.单一用户——用户属性设置

    以域管理员身份登录到域控制器。“Acitve Directory用户和计算机”——打开目标用户属性对话框,切换到“配置文件”选项卡,选择“连接”选项,逻辑盘设置为“Z”,共享文件夹路径设置为“\\dc\software”。

    2.单一用户——dsmod命令设置

    dsmod user CN=Test91,CN=Users,DC=book,DC=local -hmdrv z: -hmdir \\dc\software

    3.单一用户——PowerShell命令设置

    Set -ADUser -HomeDirectory:"\\dc\software" -HomeDrive:"Z:" -Identity test100


批量添加域用户属性

    企业已经部署域,根据公司的行政管理架构规划组织单位,所有计算机加入域统一管理,开始创建用户时没有对员工信息进行详细登录,现在要完善用户信息,需要域管理员批量修改域帐号属性。

    一般采用同时选中的方式。

    dsquery user "ou=hr,dc=book,dc=com" | dsmod user -office8楼818房间


拔掉网线才能登录域

    部分用户无法登录到域,只有拔掉网线才能登录域。客户端计算机可以连通域控制器,联机登录过程中提示联系不上域控制器或者域控制器不可用。拔掉网线才能登录域,说明客户端计算机已经加入域,使用本地缓存方式登录,用户距离上次认证时间为30天内。

    1.故障分析一

    域用户登录域时,需要联系域控制器进行身份验证。如果域控制性性能不好,发生临时性宕机或者死机等现象,将会出现客户端登录不到域控制器的情况。

    解决方法:验证域控制器的性能,根据需要确认是否要更新域控制器。

    2.故障分析二

    客户端计算机时间与域时间不同步,超过默认5分钟间隔,导致Kerberos认证失败。

    解决方法:如果时间不同步,运行“net time”命令强制和域控制器时间同步。

    时间同步后故障继续,运行“nltest /sc_seset:dcname”重建客户端计算机域DC的安全通道。

    3.故障分析三

    网络连接有问题。客户端计算机更改IP地址或者网络不通,联系不到域控制器。

    解决方法:如果网络中部署DHCP服务器,确认客户端计算机得到正确的网络参数。

    如果客户端计算机使用静态iP地址,确认IP能连接到域控制器。

    4.故障分析四

    客户端计算机使用优化版本安装源安装的操作系统,没有安装补丁。

    解决方法:建议升级系统补丁到最新版本。


用户登录域速度异常

    网络环境中只有一个站点,部署多台域控制器,关闭其中一台域控制器,客户端计算机登录超过1分钟;所有域控制器全部在线,客户端计算机需要几秒钟就可以登录。

    1.客户端计算机登录域过程

    ·首先确认客户端计算机登录过的域控制器,“Set Logonserver”命令显示默认登录过的域控制器。

    ·客户端计算机联系默认域控制器进行登录。如果域控制器在线,登录速度很快。

    ·如果域控制器没有在线,将执行一次完整的“定位域控制器”过程。

    ·客户端计算机通过本机的“Netlogon”服务调用DSgetdcName。

    ·客户端计算机收集信息并将其返回给“Netlogon”服务。

    ·“Netlogon”服务使用收集信息检索指定域的域控制器。客户端计算机使用LDAP方式检索DNS服务器,并查询所有域控制器DNS记录。

    ·客户端计算机返回域控制器列表后,向所有域控制器发出一个验证数据包,等待域控制器响应。

    ·客户端计算机收到响应后,“Netlogon”服务回复第一个响应域控制器,并将其保存在本地缓存。客户端计算机和域控制器验证并登录。

    2.故障分析

    客户端登录域时需要查找域控制器,这个过程称为“定位域控制器”。客户端计算机中可以使用“set logonserver”,查看当前客户端联系的域控制器。

    同一个站点中有多台域控制器,不同域控制器发出响应有先后次序,而客户端响应的是第一个,所以不同客户端计算机可能会有不同登录域控制器或者相同的域控制器,响应是随机的。

    根据故障描述信息,说明大部分客户端缓存的是同一个域控制器。当原域控制器下线后,客户端登录变慢但依旧登录,登录成功后即使将原来的第一个域控制器下线,登录还是很快。因为新域控制器已经被缓存。


查看用户在哪台计算机中登录

    一般是启用登录时间审核,然后在安全日志中查找,比较耗时。可以使用脚本(略)


提升域用户运行特定软件的权限

    部署域服务后,默认域用户加入本地计算机的“Users”中,具备普通用户的权限。企业中某些软件正常运行时,需要具备本地管理员权限。如果将本地管理员的密码告知用户,将不利于管理。域管理员可以将需要运行的应用程序通过脚本(wscript)二次封装,并使用工具“ScriptCryptor”编译为exe文件,域用户执行exe文件,后台完整域用户的权限提升操作,使得应用程序以管理员的身份运行。

    1.运行脚本

    第1步,编写脚本(略)

    第2步,保存为VBS格式文件后,使用工具“ScriptCryptor”将VBS脚本编译成exe

    第3步,权限提升前。当前登录用户为普通域用户

    将exe可执行文件通过策略、移动设备、共享文件夹等复制到域用户所在的计算机。


文件发布到用户桌面

    1.部署策略

    “组策略管理器”——“用户配置”——“首选项”——“WIndows设置”,选择“文件”。

    右侧空白处,鼠标右键选择“新建”,在弹出的级联菜单中选择“文件”命令。

    命令执行后,打开“新建文件属性”对话框。“源文件”中设置发布文档的存储位置,建议存储到共享文件夹中,以绝对路径方式提供。“目标文件”文本框中设置用户计算机中文档的存储位置。