科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件WindowsServer 2008 R2 Active Directory PowerShell

WindowsServer 2008 R2 Active Directory PowerShell

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

上一篇文章我们共同了解了Windows Server 2008 R2的AD回收站功能。接下来让我们探讨一下对于AD管理的新功能—PowerShell。其实对于PoweShell大家也许并不陌生,在Exchange Server 2007中我们已经广泛的使用,并已经预见PowerShell带来的全新功能。下面就让我们去探知如何基于PowerShell实现对于活动目录管理。

来源:Zdnet软件频道【原创】 2010年4月23日

关键字: Windows Server

  • 评论
  • 分享微博
  • 分享邮件

在 Windows Server 2000、2003 和2008 中,管理员使用各种命令行工具和管理控制台管理单元连接到其 Active Directory 域进行管理工作,通常我们习惯于使用MMC界面,但是很多高级管理操作只能在CMD下完成,而CMD下的命令经常成为我们的困惑。并且基于CMD的脚本的编写对于系统管理员要求很高。为了解决这种情况Windows Server 2008 R2 中的 Active Directory 模块合并了一组 cmdlet的Windows PowerShell 模块.通过使用这些cmdlet,可在单一的独立程序包中管理您的 Active Directory 域、Active Directory 轻型目录服务 (AD LDS) 配置集和 Active Directory 数据库装载工具实例。

首先让我们了解一下PowerShell的功能,系统维护、管理中大家常在命令提示符(cmd.exe)下进行操作,对Windows PowerShell可能还是比较陌生。Windows PowerShell将成为CDM的继任者,是下一代命令行工具。Windows PowerShell目前最高版本为2.0,并且已经集成到Windows Server 2008及Windows 7中。Windows PowerShell使得IT管理员更容易地控制系统管理和加速自动化,作为系统管理员应该掌握和使用它。Windows PowerShell 是一种新的交互式的命令行和基于任务脚本编写技术,它使信息技术 (IT) 管理员能够全面地自动操作和控制系统管理任务,从而提高了管理员的生产力。Windows PowerShell 包括多个系统管理实用工具、一致的语法和命名惯例、及对普通管理数据更好地导航,如登记、证书存储 或 Windows Management Instrumentation (WMI)。Windows PowerShell 还专门针对 IT 管理,提供直观的脚本编写语言。之前的UNIX 的世界就有功能强大的 shell,而现在 Windows 环境也有了;Windows PowerShell 不仅提供功能相当于BASH的命令列 shell,同时也内建脚本语言以及辅助脚本程序的工具。Windows PowerShell 是以 .NET 技术为基础,并且与现有的 WSH 保持回溯兼容,因此 Windows PowerShell 的脚本程序不仅能存取 .NET CLR,也能使用现有的 COM 技术。PowerShell有一个非常好的特点,那就是它有一个非常全面的帮助系统,并与Shell本身紧密集成。现在仅仅知道了cmdlet的名字,就可以通过调用Get-Help来获取其他有关这个cmdlet的信息例如:Get-Help Get-Command。然而,这些信息主要是一个语法图和一些简单描述。如果希望获取到更多的信息,包括了例子和参数的详细描述等信息,就需要加入-full参数,例如:Get-Help Get-Command –Full。对例子感兴趣,那么就加入-examples参数,例如Get-Help Get-command –examples。最让人高兴的是可以使用管道技术将Get-Help定向输出到more命令中,它允许你每次显示一个屏幕的内容,例如Get-Help Get-Command –full | more。Windows PowerShell 包含了数种系统管理工具、简易且一致的语法,提升管理者处理常见如登录数据库、WMI。Exchange Server 2007 以及 System Center Operations Manager 2007 等服务器软件都将内建 Windows PowerShell。PowerShell现在配备了Active Directory域服务(AD DS)模块,包含了超过75个Active Directory cmdlets。并且可以使用全新的PowerShell脚本,在Technet网站上提供了大量的脚本资源,现在可以通过脚本和PoweShell图形界面实现对于活动目录的管理。最让人感到惊喜的是tab-completion--按Tab键自动补齐功能,在用户敲击Tab键时,Windows会根据用户当时的情况,自动补齐下一步要输入的字符。这样将大大简化管理员的工作并且降低使用CMD时命令容易拼写错误的问题。

下面是列举的常用命令:
Disable-ADAccount  禁用 Active Directory 帐户。
Enable-ADAccount  启用 Active Directory 帐户。
Unlock-ADAccount  解锁 Active Directory 帐户。
Get-ADAccountAuthorizationGroup  获取包含帐户的 Active Directory 安全组。
Set-ADAccountExpiration  设置 Active Directory 帐户的截止日期。
Set-ADAccountPassword  修改 Active Directory 帐户的密码。
Set-ADDefaultDomainPasswordPolicy  修改 Active Directory 域的默认密码策略。
Move-ADDirectoryServerOperationMasterRole  将操作主机(也称为灵活单主机操作或 FSMO)角色移动到 Active Directory 域控制器。
Get-ADDomain  获取 Active Directory 域。
Add-ADDomainControllerPasswordReplicationPolicy  将用户、计算机和组添加至只读域控制器 (RODC) 密码复制策略 (PRP) 的允许列表或拒绝列表。
Set-ADDomainMode  设置 Active Directory 域的域功能级别。
Set-ADForestMode  设置 Active Directory 林的林模式。
Get-ADGroup  获取一个或多个 Active Directory 组。
New-ADGroup  创建 Active Directory 组。
Remove-ADGroup  删除 Active Directory 组。
Set-ADGroup  修改 Active Directory 组。
Add-ADGroupMember  向 Active Directory 组添加一个或多个成员。
Get-ADGroupMember  获取 Active Directory 组的成员。
Remove-ADGroupMember  从 Active Directory 组删除一个或多个成员。
Get-ADObject  获取一个或多个 Active Directory 对象。
Move-ADObject  将 Active Directory 对象或对象容器移动至不同的容器或域。
New-ADObject  创建 Active Directory 对象。
Remove-ADObject  删除 Active Directory 对象。
Rename-ADObject  更改 Active Directory 对象的名称。
Restore-ADObject  还原 Active Directory 对象。
Set-ADObject  修改 Active Directory 对象。
Get-ADOptionalFeature  获取一个或多个 Active Directory 可选功能。
Get-ADOrganizationalUnit  获取一个或多个 Active Directory OU。
New-ADOrganizationalUnit  新建 Active Directory OU。
Remove-ADOrganizationalUnit  删除 Active Directory OU。
Set-ADOrganizationalUnit  修改 Active Directory OU。
Add-ADPrincipalGroupMembership  将成员添加至一个或多个 Active Directory 组。
Get-ADPrincipalGroupMembership  获取拥有指定用户、计算机或组的 Active Directory 组。
Remove-ADPrincipalGroupMembership  将成员从一个或多个 Active Directory 组中删除。
New-ADServiceAccount  新建 Active Directory 服务帐户。
Remove-ADServiceAccount  删除 Active Directory 服务帐户。
Set-ADServiceAccount  修改 Active Directory 服务帐户。
Get-ADUser  获取一个或多个 Active Directory 用户。
New-ADUser  新建 Active Directory 用户。
Remove-ADUser  删除 Active Directory 用户。
Set-ADUser  修改 Active Directory 用户。

1、要增加Active Directory域服务模块,使用“Add-Module ActiveDirectory”命令,然后“Get-Module”;
2、要得到Contoso.com域的信息, Get-ADDomain “Contoso.com”;
3、要显示域控制器的具体信息, Get-ADDomainController –Discover(参数);
4、要在Contoso.com域下的下建立Guangzhou组织单元,
 New-ADOrganizationalUnit  -Name "guangzhou"  -Path "DC=Contoso,DC=com"
5、将新的提供程序驱动器连接到 Active Directory 域、AD LDS 服务器或 Active Directory 数据库装载工具实例,
New-PSDrive -Name <name of the drive> -PSProvider ActiveDirectory -Root "<DN of the partition/NC>" –Server <server or domain name (NetBIOS/FQDN)[:port number]> -Credential <domain name>\<username>
参数 描述
-Name <name of the drive>  指定要添加的驱动器的名称。
-PSProvider ActiveDirectory  提供程序的名称,在本例中为 ActiveDirectory。
-Root "<DN of the partition/NC>"  指定提供程序的内部根目录或路径。
–Server <server or domain name (NetBIOS/FQDN)[:port number]>  指定托管您的 Active Directory 域或 AD LDS 实例的服务器。
-Credential <domain name>\<username>  指定连接到 Active Directory 域 AD LDS 服务器必须拥有的凭据。

虽然PoweShell对于很多人比较陌生,但是只要使用 Get-Help <cmdlet name> -Detailed
和Get-Help <cmdlet name> -Full,其中 <cmdlet name> 是要研究的cmdlet 的名称。就可以获取详细的信息,这样更加便于我们尽快掌握PowerShell的使用。希望大家可以通过新的PowerShell更加有效的管理活动目录。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章