36. PowerShel -- 活动目录介绍(2)

  • PowerShel -- 活动目录管理(1)

本系列所有脚本均在Windows Server 2008 R2 DataCenter (PowerShell 2.0) + PowerGUI Script Editor Free Edition x64中测试通过。

活动目录(Active Directory)是Windows操作系统下的一种企业资源解决方案。其体系结构如下:

在Windows Server 2008 R2上安装了活动目录角色后,会有如下一些管理工具:

Active Directory Administrator Center是一个很有用的工具:

界面全部用WPF设计:

  1. 管理用户账户

对于活动目录来说,用户、组的管理是一个核心内容。在PowerShell 2.0中,可以使用如下方法管理用户、组:

ADSI(Active Directory Service Interfaces,活动目录服务接口):WinNT Provider、LDAP Provider

System.DirectoryServices

System.DirectoryServices.AccountManagement

Microsoft Active Directory Cmdlets(微软提供的PowerShell扩展)

Quest Active Directory Comlets(Quest公司提供的PowerShell扩展)

在创建域用户、域组之前,先创建一些本地用户和组。

2、使用.NET类创建一个本地用户:

#创建一个本地用户

Clear-Host

[void][reflection.assembly]::Load("System.DirectoryServices.AccountManagement, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")

#PowerShell 2.0中还可以这样添加程序集

#Add-Type -AssemblyName System.DirectoryServices.AccountManagement

$password = Read-Host "Password" -AsSecureString #作为密码

$cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList "userid", $password

$ctype = [System.DirectoryServices.AccountManagement.ContextType]::Machine #本地用户

$context = New-Object -TypeName System.DirectoryServices.AccountManagement.PrincipalContext -ArgumentList $ctype, "BrooksPCNB" #替换为你自己的机器名

$usr = New-Object -TypeName System.DirectoryServices.AccountManagement.UserPrincipal -ArgumentList $context

$usr.SamAccountName = "Newuser1"

$usr.SetPassword($cred.GetNetworkCredential().Password)

$usr.DisplayName = "New User"

$usr.Enabled = $true

$usr.ExpirePasswordNow() #下次登录时必须修改密码

$usr.Save()

首先会提示输入待创建用户的密码,注意密码强度要符合策略,运行结果:

3、创建本地组:

#创建一个本地组

Clear-Host

[void][reflection.assembly]::Load("System.DirectoryServices.AccountManagement, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")

$ctype = [System.DirectoryServices.AccountManagement.ContextType]::Machine

$context = New-Object -TypeName System.DirectoryServices.AccountManagement.PrincipalContext -ArgumentList $ctype, "BrooksPCNB"

$gtype = [System.DirectoryServices.AccountManagement.GroupScope]::Local

$grp = New-Object -TypeName System.DirectoryServices.AccountManagement.GroupPrincipal -ArgumentList $context, "Group1"

$grp.IsSecurityGroup = $true

$grp.GroupScope = $gtype

$grp.Save()

运行结果:

4、将用户添加进组:

Clear-Host

[void][reflection.assembly]::Load("System.DirectoryServices.AccountManagement, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")

$ctype = [System.DirectoryServices.AccountManagement.ContextType]::Machine

$context = New-Object -TypeName System.DirectoryServices.AccountManagement.PrincipalContext -ArgumentList $ctype, "BrooksPCNB"

$idtype = [System.DirectoryServices.AccountManagement.IdentityType]::SamAccountName

$grp = [System.DirectoryServices.AccountManagement.GroupPrincipal]::FindByIdentity($context, $idtype, "Group1")

$grp.Members.Add($context, $idtype, "Newuser1")

$grp.Save()

运行结果:

5、使用Microsoft Active Directory Cmdlets创建域用户:

New-ADUser -Name "Brooks" -SamAccountName "Brooks" `

-GivenName "Brooks" -Surname "Brooks" `

-Path "OU=Domain Controllers,DC=Lucifer,DC=com" -DisplayName "Mr.Brooks" `

-AccountPassword (Read-Host -AsSecureString "AccountPassword") -CannotChangePassword $false `

-ChangePasswordAtLogon $true -UserPrincipalName [email protected]

运行结果:

6、使用Quest Active Directory Cmdlets创建域用户:

若你还没有添加Snapin,则需要先添加:

Add-PSSnapin Quest.ActiveRoles.ADManagement

New-QADUser -Name "Brooks" -FirstName "Mr" -LastName "Brooks" `

-DisplayName "Brooks" -SamAccountName "Brooks" `

-UserPassword (Read-Host -AsSecureString) -UserPrincipalName "[email protected]" `

-ParentContainer "OU=Domain Controllers,DC=Lucifer,DC=com"

运行结果:

7、关于ADSI适配器的WinNT和LDAP Provider,其语法我不太熟悉,故不再举例,感兴趣的朋友可以查查相关资料。

不过ADSI有个注意点,ADSI适配器直接操作本地SAM(Security Accounts Manage,安全账户管理器数据库),其位于:%windir%\System32\config目录,包括两个文件 SAM、SECURITY:

SAM本地数据库存储了如下重要信息:

用户账户信息

组信息

计算机账户信息(仅适用于WindowsNT、Workstation)

受信任的账户关联

同时SAM本地数据库是注册表的一部分,其位于如下分支:

HKEY_LOCAL_MACHINE\SAM

HKEY_LOCAL_MACHINE\SECURITY

SAM本地数据库不能直接编辑,进入操作系统后即被锁定。可以通过第三方工具如saminside进行破解,注意,仅限于找回丢失的密码,不要尝试盗取别人密码等操作。

小结:

本次我们练习了使用.NET框架中的类以及微软与Quest的PowerShell扩展来创建域用户、组,部署时需要注意System.DirectoryServices

System.DirectoryServices.AccountManagement

需要.NET Framework 3.5或更新版本。

通过微软和Quest的PowerShell扩展可以很简洁的创建域用户、组,推荐使用这两种命令,要确保密码强度符合组策略。最后我们熟悉了下SAM数据库,SAM存储了很多用户账户信息,非常重要,理解SAM数据库可以更好地理解Active Directory体系结构。下一次我们将练习批量创建域用户、组,以及其他一些更高级的操作。

  • PowerShel -- 活动目录管理(2)

上一次我们对活动目录的用户和组进行了简单的管理操作,使用了.NET框架中的System.DirectoryServices

System.DirectoryServices.AccountManagement等类。以及微软与Quest公司的PowerShell扩展,在实际应用中,推荐使用上述两种扩展,其语法更加简洁,便于维护。本次我们将尝试批量编辑域用户的信息,以及通过LDAP查询我们感兴趣的信息。

测试脚本下载

本系列所有脚本均在Windows Server 2008 R2 DataCenter (PowerShell 2.0) + PowerGUI Script Editor Free Edition x64中测试通过。

1.    使用 Microsoft Active Directory Cmdlets 批量创建域用户。

首先准备一个csv文件,将待创建的域用户名写入:

其中第一行的"UserName"作为列名。CSV = Comma Separated Values,即"逗号分隔值"文件。这里使用的是一种广义的csv文件,可以看到并没有逗号,其实用其他分隔符也可以,只要能区分各个用户就可以了。

csv文件可以使用Excel打开:

循环遍历csv文件,提取UserName:

Clear-Host

Import-Csv-PathE:\PSTest\Users.csv | foreach {

New-ADUser-Name$_.UserName `

-SamAccountName$_.UserName -GivenName$_.UserName `

-Surname$_.UserName -Path"ou=Domain Controllers,dc=Lucifer,dc=com"`

-DisplayName$_.UserName -AccountPassword$null`

-CannotChangePassword$false`

-ChangePasswordAtLogon$true`

-UserPrincipalName"[email protected]"`

}

运行结果:

可以看到用户默认是禁用的,稍后将学习怎么启用、禁用用户。

2、使用 Quest Active Directory Cmdlets 批量创建域用户。

Clear-Host

Import-Csv-PathE:\PSTest\Users.csv | foreach {

New-QADUser-Name$_.UserName `

-DisplayName$_.UserName `

-SamAccountName$_.UserName `

-ParentContainer"OU=Domain Controllers,DC=Lucifer,DC=com"`

}

还是使用刚才的csv文件,运行结果类似:

其实不一定非要使用csv文件,使用txt、xml等文件也可以,文件只是存储用户信息的容器,只要能获取文件中存储的用户信息即可。PowerShell对csv提供了内置支持,即Import-Csv、Export-Csv命令等,所以如果没有特殊需求,建议使用csv文件。

3、修改用户信息。

要修改用户信息,首先要知道用户有哪些信息:

Get-ADUser-Identity"User1"-Properties*

运行结果:

今天偶然看到AD PowerShell的官方博客,还是很不错的。

如上图所示,查询出了用户"User1"的所有信息,可以看到还是很多的。-Identity参数用于唯一标识用户,微软的Cmdlets支持如下四种Identity:

其中比较常用的是sAMAccountName。

可以用一些PowerShell或LDAP表达式来进行查询:


Logical Operator


Description


Equivalent LDAP operator/expression


-eq


Equal to. This will not support wild card search.


=


-ne


Not equal to. This will not support wild card search.


! x = y


-like


Similar to -eq and supports wildcard comparison. The only wildcard character supported is: *


=


-notlike


Not like. Supports wild card comparison.


! x = y


-approx


Approximately equal to


~=


-le


Lexicographically less than or equal to


<=


-lt


Lexicographically less than


! x >= y


-ge


Lexicographically greater than or equal to


>=


-gt


Lexicographically greater than


! x <= y


-and


AND


&


-or


OR


|


-not


NOT


!


-bor


Bitwise OR


:1.2.840.113556.1.4.804:=


-band


Bitwise AND


:1.2.840.113556.1.4.803:=


-recursivematch


Uses LDAP_MATCHING_RULE_IN_CHAIN (Win2k3 SP2 and above)


:1.2.840.113556.1.4.1941:=

如:

Get-ADObject-Filter { CN -like"*bro*" }

Get-ADObject-LDAPFilter"(cn=*bro*)"

查询CN like bro的活动目录信息:

我对LDAP语法很不熟悉,临时查了些资料:

LDAP的存储规则

区分名(DN,Distinguished Name)

和自然界中的树不同,文件系统/LDAP/电话号码簿目录的每一片枝叶都至少有一个独一无二的属性,这一属性可以帮助我们来区别这些枝叶。

在文件系统中,这些独一无二的属性就是带有完整路径的文件名。比如/etc/passwd,该文件名在该路径下是独一无二的。当然我们可以有/usr/passwd, /opt/passwd,但是根据它们的完整路径,它们仍然是唯一的。

在LDAP中,一个条目的区分名称叫做"dn"或者叫做区分名。在一个目录中这个名称总是唯一的。比如,我的dn是"uid=aghaffar, ou=People, o=developer.ch"。不可能有相同的dn,但是我们可以有诸如"uid=aghaffar, ou=Administrators, o=developer.ch"的dn。这同上面文件系统中/etc/passwd 和 /usr/passwd的例子很类似。

我们有独一无二的属性,在"ou=Administrators, o=developer.ch" 中uid和在"ou=People, o=developer.ch"中的uid。这并不矛盾。

CN=Common Name 为用户名或服务器名,最长可以到80个字符,可以为中文;

OU=Organization Unit为组织单元,最多可以有四级,每级最长32个字符,可以为中文;

O=Organization 为组织名,可以3—64个字符长

C=Country为国家名,可选,为2个字符长

LDAP目录以一系列"属性对"的形式来存储记录项,每一个记录项包括属性类型和属性值(这与关系型数据库用行和列来存取数据有根本的不同)。

4、将用户"User1"的部门修改为"开发部",并启用该用户:

Get-ADUser-Identity"User1" | Set-ADUser-Department"Develop"-Enabled$true

运行结果:

注意,在PowerShell中,使用$true、$false表示布尔值:true/false。

此外,凡是脚本中包含Q的,如Get-QADUser 均是Quest公司的Cmdlets,否则是微软的Cmdlets,请注意区分。

5、查询禁用的用户:

Clear-Host

Get-QADUser-Disabled

Search-ADAccount-AccountDisabled–UsersOnly

运行结果:

Quest Cmdlets给出了禁用用户的列表,Microsoft Cmdlets则给出了更为详细的信息。

6、使用.NET框架中的类进行查询:

Clear-Host

$user="User1"

$dc= [System.DirectoryServices.ActiveDirectory.Domain]::GetCurrentDomain()

$root=$dc.GetDirectoryEntry()

$search= [System.DirectoryServices.DirectorySearcher]$root

$search.Filter ="cn=$user"

$result=$search.FindOne()

if($result-ne$null)

{

Write-Host"Find One!"

}

else

{

Write-Host"$user does not exists!"

}

查询cn=User1的结果,显然能找到该用户:

FindOne()方法返回查询结果中的第一个,FindAll()则会返回所有查询到的结果。

7、禁用、启用用户:

Clear-Host

Disable-ADAccount-Identity"User1"

Enable-ADAccount-Identity"User1"-PassThru

Disable-QADUser-Identity"User1"

Enable-QADUser-Identity"User1"

8、查询登录并锁定的用户:

Clear-Host

Get-QADUser-Locked

Search-ADAccount–LockedOut

9、移动用户。为了便于看到效果,我们先新建一个OU:Temp。

注意,取消保护勾选可以方便的删除该OU:

下面把User1移动到Temp中去。

Move-ADObject-Identity"CN=User1,OU=Domain Controllers,DC=Lucifer,DC=com"-TargetPath"OU=Temp,DC=Lucifer,DC=com"

运行结果:

注意表达式是有顺序的,CN要在OU之前,这块语法我也在慢慢摸索。

再使用Quest Cmdlets将User1移动回去:

Move-QADObject-Identity"CN=User1,OU=Temp,DC=Lucifer,DC=com"-NewParentContainer"OU=Domain Controllers,DC=Lucifer,DC=com"

运行结果:

小结:

本次我们继续练习了活动目录的相关操作,主要涉及域用户的编辑、搜索,其中掌握LDAP的查询语法非常重要。熟练以后可以快捷高效的对活动目录对象(不仅仅局限于用户、组)进行管理。下一次将练习域组的管理操作,以及管理OU、组策略等高级话题。

  • PowerShel -- 活动目录管理(3)

上一次我们练习了批量创建域用户,以及对域用户进行一些查询、编辑操作。本次将主要对域组进行管理,其次是OU、组策略等高级话题。

测试脚本下载

本系列所有脚本均在Windows Server 2008 R2 DataCenter (PowerShell 2.0) + PowerGUI Script Editor Free Edition x64中测试通过。

1、查询域用户上一次登录域的时间:

#获取用户上一次登录域的时间

#DateTime.FromFileName -- 摘自 MSDN

#A Windows file time is a 64-bit value that represents the number of 100-nanosecond

#intervals that have elapsed since 12:00 midnight, January 1, 1601 A.D. (C.E.)

#Coordinated Universal Time (UTC). Windows uses a file time to record when an application

#creates, accesses, or writes to a file.

Clear-Host

$t = Get-ADUser -Identity "Administrator" -Properties lastlogon

[DateTime]::FromFileTime([Int64]::Parse($t["lastlogon"]))

运行结果:

域用户上一次登录域的时间存储在属性:lastlogon中,是一个长整形的数字,注释中是MSDN的官方解释,需要用DateTime.FromFileName方法进行转换。

2、

#检查用户密码过期情况,默认情况下密码的最大使用期限为42天

#通过检查pwdlastset属性来查询哪些用户的密码可能过期

Clear-Host

$now = (Get-Date).ToFileTime()

$end = ((Get-Date).Adddays(-200)).ToFileTime()

$dom = [System.DirectoryServices.ActiveDirectory.Domain]::GetCurrentDomain()

$root = $dom.GetDirectoryEntry()

$filt = "(&(objectcategory=Person)" + "(objectclass=user)" + "(pwdlastset>=$end)(pwdlastset<=$now))"

$search = [System.DirectoryServices.DirectorySearcher]$root

$search.Filter = $filt

$results = $search.FindAll()

foreach ($result in $results){

$result.properties.distinguishedname

}

运行结果:

3、检查用户账户过期情况,如将一个域用户:User1的账户过期时间设置为10.2之后:

查询60内账户将到期的用户:

Clear-Host

$now = (Get-Date).ToFileTime()

$end = ((Get-Date).Adddays(60)).ToFileTime()

$dom = [System.DirectoryServices.ActiveDirectory.Domain]::GetCurrentDomain()

$root = $dom.GetDirectoryEntry()

$filt = "(&(objectcategory=Person)(objectclass=user)(accountexpires>=$now)(accountexpires<=$end))"

$search = [System.DirectoryServices.DirectorySearcher]$root

$search.Filter = $filt

$results = $search.FindAll()

foreach ($result in $results){

$result.properties.distinguishedname

}

运行结果:

使用Microsoft或Quest的Cmdlets更加简洁:

Clear-Host

Search-ADAccount -AccountExpiring -TimeSpan "60.00:00:00" –UsersOnly

Get-QADUser -AccountExpiresBefore (Get-Date).AddDays(60)

运行结果:

Microsoft Cmdlets:

Quest Cmdlets:

4、创建域组

在Active Directory中组分为两类:安全组(Security)和通讯组(Distribution)。安全组是给共享资源指派权限的,通讯组没有安全方面的功能,基本只应用于电子邮件程序中。

组一般都有自己的作用域的,用来确定树或林中该组的应用范围。在Active Directory中有三种不同的组的作用域:通用,全局和本地域。相对应的就划分为三种不同的组即通用组,全局组和域本地组(在windows2003以前是没有通用作用域的,这里所介绍的是以windows server 2003为基础的)。

通用组(Universal):是一种集全局组和域本地组优点于一身的组,可以包含森林中任何的帐户,全局组和通用组,不能隶属于全局组,当只有在win2000本机模式或以上时才能被新建。

全局组(Global):可以在林中任意使用,体现的是全局性,也就是说可以利用全局组授予访问任何域上的资源的权限,但其成员只能是相同域的帐户和全局组(在win2000本机模式或以上),在混合模式时成员只能是相同域的帐户。

域本地组(DomainLocal):通常情况下用于授予在本域资源的访问权限,成员包含林中的帐户,全局组,通用组(在混合模式下没有通用组)。

如下,分别使用了Microsoft和Quest的Cmdlets创建了两个域组:

Clear-Host

New-ADGroup -Name "Developer" -Path "OU=Temp,DC=Lucifer,DC=com" -SamAccountName "开发部" -GroupCategory Security -GroupScope Global -Description "开发部" -DisplayName "开发部"

New-QADGroup -Name "Test" -Description "测试部" -SamAccountName "测试部" -GroupScope Global -GroupType Security -ParentContainer "OU=Temp,DC=Lucifer,DC=com"

运行结果:

5、组中添加域用户

将User1添加进开发部:

Clear-Host

Get-ADUser -Filter {Name -eq "User1"} -SearchBase "OU=Domain Controllers,DC=Lucifer,DC=com" | foreach {Add-ADGroupMember -Identity "CN=Developer,OU=Temp,DC=Lucifer,DC=com" -Members $($_.SamAccountName)}

将Domain Controllers中的用户添加进测试部:

Get-QADUser -SearchRoot "OU=Domain Controllers,DC=Lucifer,DC=com" | foreach {Add-QADGroupMember -Identity "CN=Developer,OU=Temp,DC=Lucifer,DC=com" -Member $_.SamAccountName}

运行结果:

6、删除组成员

使用Microsoft Cmdlets时无法取消删除确认提示 - -!

Clear-Host

Remove-ADGroupMember -Identity "CN=Developer,OU=Temp,DC=Lucifer,DC=com" -Members "User1"

而Quest Cmdlets就非常人性化,无任何提示,方便批量删除:

Remove-QADGroupMember -Identity "CN=Test,OU=Temp,DC=Lucifer,DC=com" -Member User2,User3

7、更改组的作用域,支持的方式:

# Universal to global

# Global to universal

# Domain local to universal

# Universal to domain local

注意通用组和全局组可以相互转换,域本地组和通用组可以相互转换,但是全局组和域本地组不能相互转换。

Clear-Host

Set-ADGroup -Identity "CN=Developer,OU=Temp,DC=Lucifer,DC=com" -GroupScope Universal -GroupCategory Security

Set-QADGroup -Identity "CN=Test,OU=Temp,DC=Lucifer,DC=com" -GroupScope Global -GroupType Distribution

运行结果:

8、查询组成员

Clear-Host

Get-ADGroupMember -Identity "CN=Developer,OU=Temp,DC=Lucifer,DC=com" | select Name

Get-QADGroupMember -Identity "CN=Test,OU=Temp,DC=Lucifer,DC=com" | select Name

运行结果:

9、管理组策略

组策略(Group Policy)是管理员为用户和计算机定义并控制程序、网络资源及操作系统行为的主要工具。通过使用组策略可以设置各种软件、计算机和用户策略。

从Windows Server 2008 R2开始微软提供了组策略相关的PowerShell扩展,可以方便的自动化处理一些配置选项。

Windows Server 2008 R2 组策略新增功能:(摘自TechNet)

在 Windows Server 2008 R2 和带有远程服务器管理工具 (RSAT) 的 Windows 7 中提供以下更改:

这里有一篇文章详细介绍了此次更新,非常专业,建议阅读。

推荐一下微软的组策略官方博客

注意,组策略的PowerShell脚本只能在Windows 7 、Windows Server 2008 R2上运行,其他操作系统即使安装了PowerShell V2也无法运行。

以Windows Server 2008 R2为例,首先要导入组策略的PowerShell模块:

Import-Module GroupPolicy

查看此模块中包含哪些命令:

Get-Command -Module GroupPolicy | Get-Help | Format-Table name, synopsis -AutoSize –Wrap

运行结果:

备份全部组策略:

New-Item -Path C:\GPBak -ItemType Directory -Force

Backup-GPO -All -Path C:\GPBak -Comment "Weekly Bak" -Server BrooksPCNB.Lucifer.com

运行结果:

还原全部组策略:

Restore-GPO -All -Path C:\GPBak -Server BrooksPCNB.Lucifer.com

运行结果:

小结:

我用了三篇博文终于暂时结束了活动目录的测试,活动目录是一块很大的内容,短短三篇文章仅仅是走马观花,对常见的任务进行了测试,主要涉及域用户、域组的创建、修改、删除、查询。在PowerShell中主要有三种方法来管理活动目录:

1、.NET框架中的活动目录类

2、ADSI WinNT、LDAP Provider

3、Microsoft、Quest Cmdlets(推荐)

实际使用中建议使用第三种,因为其语法更加简洁,也是官方推荐的方式。

参考:

http://www.cnblogs.com/brooks-dotnet/archive/2010/09/11/1824173.html

http://www.cnblogs.com/brooks-dotnet/archive/2010/09/16/1828408.html

http://www.cnblogs.com/brooks-dotnet/archive/2010/10/01/1840644.html

时间: 2024-08-11 01:19:14

36. PowerShel -- 活动目录介绍(2)的相关文章

35. PowerShell -- 活动目录介绍(1)

AD PowerShell cmdlet 提供商: Microsoft and   QUEST Software ·         PowerShell – 活动目录 1.     PowerShell 可以实现对ADSI(Active Directory Service Interface)服务接口的支持: 2.     ADSI类似于Windows 管理规范(WMI),发出一个使用特殊语法编写的查询,然后传递给远程计算机(域控制器),然后执行它.查询结果为一个AD对象或对象的集合(如一个用

win2012活动目录介绍

一:活动目录概述: 1.相关概念: 域:用来描述一种系统架构,和"工作组"相对应,由工作组升级而来的高级架构,在域架构中,可以实现统一化管理(一般通过策略实现,执行下发策略的权限是写这条策略的用户即服务器上写策略的用户,而非登陆当前客户端的用户.). 活动目录:是微软提供的目录服务(查询.身份验证),活动目录的核心包含了活动目录数据库,在活动目录数据库中包含了域中所有的对象(用户.计算机.组...) 注意:目录服务不是我微软专有的,比如linux的ldap服务也是目录服务. 域控制器:

AD 活动目录方案

活动目录方案 Windows  Server 2008 的安装要求 组件 要求 处理器 最低:1Ghz 推荐: 2Ghz 最佳: 2Ghz 内存 最低:512MB RAM 推荐: 1GB RAM 最佳: 2GB RAM (Full) or 1GB RAM  (Server Core)或更多 最大(32-bit):4GB (标准版) or 64GB (企业和Datacenter版) 最大(64-bit):32GB (标准版) or 2TB (企业.Datacenter和Itanium版本 可用磁盘

活动目录数据库文件介绍

活动目录中的数据库文件的介绍 活动目录数据库包含大量的核心基础数据,应该妥善保护,及时备份.活动目录数据库是"dit"格式的数据库,和Exchange Server使用的数据库格式相同.在维护活动目录数据库前,只要停止ADDS域服务即可维护数据库. Active Directory数据库是一个事务处理数据库系统,通过日志文件支持回滚操作,从而确保事务提到数据库中.与Active Directory关联的文件包括: Ntds.dit,Active Directory数据库文件 Edbxx

Skype For Business 2015实战系列2:安装活动目录

Skype For Business 2015实战系列2:安装活动目录 今天开始我们就正式进入了Skype For Business 2015的部署阶段,在部署开始之前,我们先来看一下我们本次的环境列表: 计算机名 IP地址 角色 备注 DC 192.168.1.20 AD DS   Mail 192.168.1.22 Exchange 2013   Front01 192.168.1.25 SFB前端   Front01 192.168.1.26 SFB前端   SQL01 192.168.1

windows 2008 活动目录实施方案

Windows Server 2008活动目录实施方案 1.     用户需求 要求 一:活动目录高可用,实现容灾 二:客户机成功加入域,限制财务的用户只能登陆到财务的客户机,每周一到周五实现财务部的用户能够成功登陆,其他时间不允许登陆. 三:组策略限制如下: 1. 限制所有员工桌面背景为1.jpg,为所有用户设置账户锁定策略,输错 两次密码锁定. 2. 限制行政部员工桌面背景为2.jpg 3. 限制销售部员工的开始菜单中删除运行图标,删除桌面的计算机图标        4.为所有客户端自动安装

Windows Server 2012活动目录基础配置与应用(新手教程)之4---域用户的基本管理

下面分几种方式介绍域用户的创建. 1.图形化界面(前文已介绍) STEP1:以自己的名称新建一个账户(或者使用已存在的账户,以自己的名字命名),按如下示例修改该账户的属性: STEP2:每个人为自己所在宿舍的其他人员创建一个账户.(提示:可以复制账户)分析这种方式的优缺点. 2.利用命令方式完成 STEP1:查看dsadd命令帮助信息,从中找到与添加用户有关的指令. STEP2:查看dsadd  user的帮助信息. STEP3:本例中,当前域名为ahgf01.com.cn.下面需要增加名字为u

Win2008R2活动目录回收站功能

活动目录回收功能的出现极大的方便了活动目录的管理人员.在2008R2以前每次误操作删除活动目录的账号都要进入目录还原模式进行还原.及其繁琐.现在我为大家介绍Windows2008R2新的功能活动目录回收站. 方法一 使用Active Directory Module for Windows PowerShell进行还原 1.要使用活动目录回收站,域和林的功能功级别要为Windows Server 2008R2或以上 2.启用回收站功能使用Active Directory Module for W

WindowsServer2003活动目录升级到2012

Windows server 2003 R2的AD 升级至Windows Server 2012的操作过程 操作步骤: 1.首先准备Windows server 2003 R2,Windows server 2008 R2 ,Windows server 2012各一台.其中Windows server 2003 R2为域控制器,域名为NW.COM.三台的服务器的初始网络配置如下表所示: 服务器 IP 子网掩码 DNS Windows server 2003 R2 192.168.8.3 255