Hoy le mostraremos cómo instalar y usar el Módulo de directorio activo de Windows PowerShell. Puede realizar tareas de administración de AD y usar sus cmdlets para obtener información diferente sobre los usuarios del dominio, las computadoras, los grupos y otros objetos. En el sistema operativo del servidor, este módulo de PowerShell se instala como una función independiente. En las versiones del sistema operativo de escritorio (Windows 11, 10, 8.1 y 7), el módulo forma parte de las herramientas de administración remota del servidor (RSAT). RSAT incluye todas las herramientas de administración necesarias, utilidades de línea de comandos y módulos de Windows PowerShell para administrar la infraestructura de Windows Server. Debe descargar el paquete RSAT para su versión de Windows desde el sitio web de Microsoft (¿cómo instalar RSAT en Windows 10?).

PowerShell brinda al administrador muchas oportunidades para interactuar con objetos de Active Directory y automatizar tareas (esto es especialmente útil cuando se realizan acciones masivas dirigidas a una gran cantidad de objetos de AD).

Hay tres formas principales de interactuar con Active Directory en Windows PowerShell:

  • Uso de interfaces de servicios de Active Directory (ADSI). Este método es el más complejo, pero funciona en cualquier versión de PowerShell y no requiere la instalación/carga de módulos adicionales. También es "más cercano" al método de gestión utilizado en el lenguaje de secuencias de comandos VBScript;
  • Uso del proveedor de Active Directory incluido en las extensiones de PowerShell. Este método le permite montar un Active Directory como una unidad en su computadora y navegar a través de él usando los comandos apropiados: dir, cd, etc.
  • Gestión de Active Directory con el módulo RSAT-AD-PowerShell. Esta es la forma más conveniente de manipular objetos AD, pero también requiere la instalación adicional del módulo correspondiente.

Insinuación. Se usa un módulo de PowerShell diferente para administrar objetos en Azure Active Directory: Módulo de Azure Active Directory para Windows PowerShell.

Instale el módulo de directorio activo de PowerShell en Windows Server

El módulo de Active Directory para Windows PowerShell apareció por primera vez en Windows Server 2008 R2. Aparece en Windows Server después de que instaló el rol ADDS (Servicios de dominio de Active Directory) y luego promovió un servidor al controlador de dominio. Para usar los cmdlets del módulo Active Directory, debe existir al menos un controlador de dominio con Windows Server 2008 R2 o superior en su dominio. Si su red tiene solo DC con Windows Server 2003 o 2008, debe descargar e instalar el Servicio de puerta de enlace de administración de Active Directory. Los cmdlets del módulo de Active Directory interactúan con el servicio web que forma parte del controlador de dominio con el rol ADDS o ADMGS.

  • Puede instalar el módulo de Active Directory para PowerShell en el controlador de dominio, en cualquier servidor o estación de trabajo de Windows;
  • En Windows Server 2019/2016/2012 R2, puede instalar el módulo Active Directory para Windows PowerShell. Puedes hacerlo usando el Agregar funciones y funciones Asistente del Administrador del servidor. Basta con iniciar el asistente y, en el paso de selección de funciones, debe seleccionar el elemento Herramientas de administración remota del servidor > Herramientas de administración de roles > Herramientas AD DS y AD LDS > Módulo Active Directory para Windows PowerShell;

módulo de directorio activo powershell windows 10

módulo de importación directorio activo windows 10

Para verificar el estado de instalación de un módulo, use el comando:

Get-WindowsFeature RSAT-AD-PowerShell

directorio activo del módulo de importación

Insinuación. Si está utilizando PowerShell Core 7.0 o superior, tenga en cuenta que el módulo de Active Directory es totalmente compatible de forma nativa con esta versión de PoSh. Pero primero, debe instalar el módulo de compatibilidad de Windows:

Install-Module -Name WindowsCompatibility

Instalación del módulo AD PowerShell en Windows 10 y 11

En Windows 11, Windows 10, Windows 8.1 y Windows 7, para instalar el módulo RSAT-AD-PowerShell, primero debe instalar la versión adecuada de RSAT. Puede instalar RSAT solo en las ediciones Professional, Education y Enterprise de Windows. La instalación de RSAT en Windows Home o Single Language no está disponible.

Deberá asegurarse de que sus políticas de seguridad, firewalls y proxies puedan acceder a los servidores de Microsoft Update en Internet para descargar e instalar componentes FOD.

  • Sobre ventanas 11, puede instalar el paquete RSAT de Active Directory desde Configuración > Aplicaciones > Funciones opcionales > Agregar una función opcional > escriba Directorio Activo en el cuadro de búsqueda y seleccione el RSAT: servicios de dominio de Active Directory y herramientas de directorio ligeras característica > Siguiente > Instalar.

instalar el módulo powershell del directorio activo

O puede instalar el módulo desde la consola elevada de PowerShell:

Get-WindowsCapability -Name Rsat.ActiveDirectory.DS-LDS.Tools~~~~0.0.1.0 -Online | Add-WindowsCapability -Online

powershell instalar módulo de directorio activo

No es necesario que reinicie Windows después de instalar RSAT.

Importación del módulo de Active Directory de PowerShell en Windows

  1. En Windows 7 y Windows Server 2008 R2 con PowerShell 2.0 instalado, para comenzar a usar el módulo Active Directory, debe importarlo a la sesión de PowerShell con el comando:
    import-module activedirectory

    directorio activo del módulo de importación

  2. Además, puede exportar el módulo desde una computadora/servidor remoto e importarlo a su sesión de PowerShell (usando PSRemoting):
    $S = New-PSSession -ComputerName MyDomainController

    Export-PSsession -Session $S -Module ActiveDirectory -OutputModule RemoteAD

    Import-Module RemoteAD -Force

Ahora puede usar todos los cmdlets del módulo RSAT-AD-PowerShell desde una computadora remota como si lo tuviera instalado localmente. Sin embargo, la comunicación remota implícita realmente funcionará aquí y todos los cmdlets de PowerShell se ejecutarán de forma remota.

La sesión estará activa hasta que cierre la consola de PowerShell. También puede cerrar la sesión (Disconnect-PSSession -Session $S) o eliminarla (Remove-PSSession -Session $S).

Ahora puede usar el módulo de Active Directory de forma remota sin instalarlo en su computadora.

  1. En Windows Server 2022/2019/2016/2012 R2 y Windows 8.1/Windows 10/Windows 11, el módulo AD se importará automáticamente a la sesión de PowerShell si está instalado.
  2. Para confirmar que el módulo AD PoSh está instalado e importado a la sesión de PowerShell en Windows, ejecute el comando:
    Get-Module ActiveDirectory

módulo de directorio activo powershell

Insinuación. Puede enumerar todos los módulos importados en una sesión de PowerShell con el comando:

Get-Module –ListAvailable

instalar módulo de publicidad powershell windows 10

Cuando la computadora se une al dominio AD, de forma predeterminada se crea una unidad separada con el nombre AD:. Puede ir a esta unidad usando el comando CD y usar los comandos familiares de trabajar con el sistema de archivos para navegar por esta unidad. Las rutas están en formato X500. El proveedor de AD le permite navegar por el AD como si fuera una unidad simbólica.

PS C:> cd AD:

PS AD:>

PS AD:> dir

PS AD:> cd “DC=contoso,DC=com”

PS AD:> dir

instalar módulo de directorio activo powershell windows 10

Puede mostrar la lista de cmdlets disponibles para interactuar con Active Directory de la siguiente manera:

Get-Command -Module ActiveDirectory

directorio activo del módulo de instalación

Las diferentes versiones de Windows (RSAT) tienen una cantidad diferente de cmdlets disponibles:

get-command -Module activedirectory|medida

  • Windows Server 2008 R2: 76 cmdlets;
  • Windows Server 2012: 135 cmdlets;
  • Windows Server 2012 R2/2016/2019/2022: 147 cmdlets.

La siguiente es una lista completa de los cmdlets del módulo AD PowerShell en Windows Server 2016:

Add-ADCentralAccessPolicyMember

Add-ADComputerServiceAccount

Add-ADDomainControllerPasswordReplicationPolicy

Add-ADFineGrainedPasswordPolicySubject

Add-ADGroupMember

Add-ADPrincipalGroupMembership

Add-ADResourcePropertyListMember

Clear-ADAccountExpiration

Clear-ADClaimTransformLink

Disable-ADAccount

Disable-ADOptionalFeature

Enable-ADAccount

Enable-ADOptionalFeature

Get-ADAccountAuthorizationGroup

Get-ADAccountResultantPasswordReplicationPolicy

Get-ADAuthenticationPolicy

Get-ADAuthenticationPolicySilo

Get-ADCentralAccessPolicy

Get-ADCentralAccessRule

Get-ADClaimTransformPolicy

Get-ADClaimType

Get-ADComputer

Get-ADComputerServiceAccount

Get-ADDCCloningExcludedApplicationList

Get-ADDefaultDomainPasswordPolicy

Get-ADDomain

Get-ADDomainController

Get-ADDomainControllerPasswordReplicationPolicy

Get-ADDomainControllerPasswordReplicationPolicyUsage

Get-ADFineGrainedPasswordPolicy

Get-ADFineGrainedPasswordPolicySubject

Get-ADForest

Get-ADGroup

Get-ADGroupMember

Get-ADObject

Get-ADOptionalFeature

Get-ADOrganizationalUnit

Get-ADPrincipalGroupMembership

Get-ADReplicationAttributeMetadata

Get-ADReplicationConnection

Get-ADReplicationFailure

Get-ADReplicationPartnerMetadata

Get-ADReplicationQueueOperation

Get-ADReplicationSite

Get-ADReplicationSiteLink

Get-ADReplicationSiteLinkBridge

Get-ADReplicationSubnet

Get-ADReplicationUpToDatenessVectorTable

Get-ADResourceProperty

Get-ADResourcePropertyList

Get-ADResourcePropertyValueType

Get-ADRootDSE

Get-ADServiceAccount

Get-ADTrust

Get-ADUser

Get-ADUserResultantPasswordPolicy

Grant-ADAuthenticationPolicySiloAccess

Install-ADServiceAccount

Move-ADDirectoryServer

Move-ADDirectoryServerOperationMasterRole

Move-ADObject

New-ADAuthenticationPolicy

New-ADAuthenticationPolicySilo

New-ADCentralAccessPolicy

New-ADCentralAccessRule

New-ADClaimTransformPolicy

New-ADClaimType

New-ADComputer

New-ADDCCloneConfigFile

New-ADFineGrainedPasswordPolicy

New-ADGroup

New-ADObject

New-ADOrganizationalUnit

New-ADReplicationSite

New-ADReplicationSiteLink

New-ADReplicationSiteLinkBridge

New-ADReplicationSubnet

New-ADResourceProperty

New-ADResourcePropertyList

New-ADServiceAccount

New-ADUser

Remove-ADAuthenticationPolicy

Remove-ADAuthenticationPolicySilo

Remove-ADCentralAccessPolicy

Remove-ADCentralAccessPolicyMember

Remove-ADCentralAccessRule

Remove-ADClaimTransformPolicy

Remove-ADClaimType

Remove-ADComputer

Remove-ADComputerServiceAccount

Remove-ADDomainControllerPasswordReplicationPolicy

Remove-ADFineGrainedPasswordPolicy

Remove-ADFineGrainedPasswordPolicySubject

Remove-ADGroup

Remove-ADGroupMember

Remove-ADObject

Remove-ADOrganizationalUnit

Remove-ADPrincipalGroupMembership

Remove-ADReplicationSite

Remove-ADReplicationSiteLink

Remove-ADReplicationSiteLinkBridge

Remove-ADReplicationSubnet

Remove-ADResourceProperty

Remove-ADResourcePropertyList

Remove-ADResourcePropertyListMember

Remove-ADServiceAccount

Remove-ADUser

Rename-ADObject

Reset-ADServiceAccountPassword

Restore-ADObject

Revoke-ADAuthenticationPolicySiloAccess

Search-ADAccount

Set-ADAccountAuthenticationPolicySilo

Set-ADAccountControl

Set-ADAccountExpiration

Set-ADAccountPassword

Set-ADAuthenticationPolicy

Set-ADAuthenticationPolicySilo

Set-ADCentralAccessPolicy

Set-ADCentralAccessRule

Set-ADClaimTransformLink

Set-ADClaimTransformPolicy

Set-ADClaimType

Set-ADComputer

Set-ADDefaultDomainPasswordPolicy

Set-ADDomain

Set-ADDomainMode

Set-ADFineGrainedPasswordPolicy

Set-ADForest

Set-ADForestMode

Set-ADGroup

Set-ADObject

Set-ADOrganizationalUnit

Set-ADReplicationConnection

Set-ADReplicationSite

Set-ADReplicationSiteLink

Set-ADReplicationSiteLinkBridge

Set-ADReplicationSubnet

Set-ADResourceProperty

Set-ADResourcePropertyList

Set-ADServiceAccount

Set-ADUser

Show-ADAuthenticationPolicyExpression

Sync-ADObject

Test-ADServiceAccount

Uninstall-ADServiceAccount

Unlock-ADAccount

A diferencia de las herramientas anteriores que usaban LDAP para comunicarse con AD, el módulo AD PowerShell usa Active Directory Web Services (ADWS) para comunicarse con un controlador de dominio. La función ADWS en Windows Server 2008 R2 y versiones posteriores se instala en un controlador de dominio durante la promoción de un servidor miembro de dominio a un controlador de dominio. En Windows Server 2008 o Windows Server 2003, debe instalar ADWS por separado (incluido con el servicio de puerta de enlace de administración de Active Directory).

Uso del módulo RSAT-AD-PowerShell

PowerShell le permite realizar operaciones básicas con el directorio AD:

  • Obtenga todas las propiedades de AD y los atributos de los objetos;
  • Cambiar las propiedades del objeto;
  • Administrar grupos de AD;
  • Crear nuevos objetos de directorio, etc.

Veamos algunos ejemplos del uso de los cmdlets del módulo RSAT-AD-PowerShell.

instalar ad módulo powershell windows 10

  • Puede crear varios usuarios de AD a la vez importando la lista de usuarios del archivo CSV. Úselo junto con el cmdlet New-ADUser.
    Para obtener información sobre un usuario de AD, use el cmdlet Get-ADUser:
    Get-ADUser –identity t.muller –properties *

    Un cmdlet similar para mostrar todos los atributos de la computadora en AD:

    Get-ADComputer –identity dc01 –properties *

módulo de directorio activo de importación de PowerShell

  • Use el cmdlet New-ADGroup para crear un grupo de AD. Por ejemplo, para crear un nuevo grupo denominado ItalyUsers en la unidad organizativa específica, ejecute el comando:
    New-ADGroup -Path "OU=Groups,OU=Italy,DC=theitbros,DC=com" -Name "ItalyUsers" -GroupScope Global -GroupCategory Distribution
  • Para obtener la información del grupo AD, use el cmdlet Get-ADGroup:
    Get-ADGroup ItaliaUsuarios

  • Si desea agregar un usuario o una computadora a un grupo de AD, use el cmdlet Add-ADGroupMember:
    Add-ADGroupMember –Identity 'NY_Managers' -Miembros s.adams,d.thumb,p.muller
  • Use el cmdlet New-ADOrganizationalUnit para crear una unidad organizativa de Active Directory:
    New-ADOrganizationalUnit -Name "France"
  • Utilice el cmdlet Unlock-ADAccount para desbloquear la cuenta de usuario en el dominio de Active Directory:
    Get-ADUser -Identity bjackson | Unlock-ADAccount
  • O puede usar Set-ADAccountPassword para cambiar o restablecer la contraseña del usuario:
    $newPass=Read-Host "Enter the new user password" –AsSecureString

    Set-ADAccountPassword bjackson -NewPassword $newPass

  • Verifique el estado de replicación de Active Directory para todos los controladores de dominio en el sitio de AD específico:

    Get-ADReplicationFailure -scope SITE -target London | Format-Table Server, FirstFailureTime, FailureClount, LastError, Partner
  • Encuentre y deshabilite cuentas de usuario que no hayan iniciado sesión en el dominio durante más de 120 días:
    Search-ADAccount -AccountInactive -TimeSpan 120 –UsersOnly| Disable-ADAccount
  • Para obtener ayuda detallada sobre cualquier cmdlet del módulo AD-PoSh, use el comando Get-Help:
    obtener ayuda establecer-aduser

obtener aduser windows 10

Si la computadora no es parte del dominio de Active Directory, aparece la siguiente advertencia cuando intenta importar el módulo AD-PoSh:

ADVERTENCIA: error al inicializar la unidad predeterminada: 'No se puede encontrar un servidor predeterminado con los servicios web de Active Directory ejecutándose'.

En este caso, debe especificar el controlador de dominio AD y las credenciales de usuario para conectarse.

Insinuación. Además, verifique si el servicio ADWS se está ejecutando en el controlador de dominio y responde en el puerto 9389 (Test-NetConnection DC01 - puerto 9389). Obtenga más información sobre el error No se puede encontrar un servidor predeterminado con los servicios web de Active Directory en ejecución.

En primer lugar, debe obtener las credenciales del usuario para acceder al dominio. Cualquier usuario de dominio autenticado puede ver casi todas las propiedades de los objetos de AD (excluyendo los atributos protegidos de Active Directory).

$cred = Get-Credential

módulo de anuncios powershell

Por ejemplo, para obtener la información del usuario del DC denominado TOR-DC01 con las credenciales guardadas, utilice el comando:

get-aduser postfixsrv –server tor-dc01 -Credential $cred

Él -Servidor El parámetro no es obligatorio. De forma predeterminada, PowerShell intenta encontrar el controlador de dominio más cercano (LogonServer) y conectarse a él. Si su computadora no puede encontrar o conectarse a LogonServer, puede especificar manualmente su nombre usando el parámetro -Server.

módulo powershell del directorio activo

Como puede ver, ha recibido la información de la cuenta de AD.

Ahora puede usar los cmdlets de PowerShell para administrar y consultar Active Directory.

Recomendado para ti