Hemos pensado en crear dos pequeños scripts que nos permitan crear un bosque de AD DS mediante script de PowerShell en un servidor Windows Server 2022 (o similares), y posteriormente hacer la configuración de este.
Uno de los puntos en los que queremos hacer hincapié es en la automatización de todas las tareas que puedan ser susceptibles de ser automatizadas, esto liberará a los administradores de realizar las tareas de manera manual, con el consabido alivio de tiempo, y también permitirá eliminar los errores desprendidos del factor humano, ya que, como todos sabemos, cuando realizamos tareas repetitivas y tediosas tendemos a bajar la guardia y es ahí donde aparecen los errores humanos.
Recordemos que el servicio, por lo general, se realiza en dos pasos y este es el motivo por el que comentamos lo de lanzar los dos scripts.
Si quieres ver cómo se hace desde interface gráfico, o sea de la manera clásica, y por tanto, cuánto tiempo ahorras de esta manera, puedes acceder al artículo Cómo configurar tu AD DS server en tu servidor Windows.
Paso 1. Script de PowerShell para el despliegue de AD DS, DNS y GPMC:
Lo primero que se deberá crear es un pequeño script para el despliegue de AD DS, pero decir que vamos a desplegar AD DS es hacer trampas, ya que en realidad, para desplegar correctamente AD DS Server se van a necesitar también un servidor de DNS para la resolución de nombres de dominio y, opcionalmente, se necesitará desplegar la consola de administración de políticas de grupo (GPMC).
Decimos que es opcional, pero en realidad lo vamos a usar sí o sí, por lo que su opcionalidad queda un poco en entredicho.
Aun así, queda a decisión del lector si desplegar el GPMC, aunque más abajo se pone el script sin esta opción.
Creamos un fichero llamado “DespliegueADDS.ps1”, donde la extensión “.ps1” indica que es un fichero ejecutable de PowerShell.
El fichero, que contiene el código del script de PowerShell tendrá esta codificación:
Write-Output «Vamos a desplegar AD DS, DNS y GPMC, preparate un cafe y te avisaremos cuando hayamos terminado»
start-job -Name DespliegueADDS -ScriptBlock {
Add-WindowsFeature -Name «ad-domain-services» -IncludeAllSubFeature -IncludeManagementTools
Add-WindowsFeature -Name «dns» -IncludeAllSubFeature -IncludeManagementTools
Add-WindowsFeature -Name «gpmc» -IncludeAllSubFeature -IncludeManagementTools }
Wait-Job -Name DespliegueADDS
Write-Output «Instalación de AD DS, DNS y GPMC finalizada»
Si, por el contrario, se decide no desplegar GPMC, tendrá este otro código:
Write-Output «Vamos a desplegar AD DS y DNS, preparate un cafe y te avisaremos cuando hayamos terminado»
start-job -Name DespliegueADDS -ScriptBlock {
Add-WindowsFeature -Name «ad-domain-services» -IncludeAllSubFeature -IncludeManagementTools
Add-WindowsFeature -Name «dns» -IncludeAllSubFeature -IncludeManagementTools}
Wait-Job -Name DespliegueADDS
Write-Output «Instalación de AD DS y DNS finalizada»
La ejecución se podrá hacer desde PowerShell ISE, o desde una ventana de PowerShell convencional, pero en caso de ejecutarla desde consola se debe preceder por un “./” que indica que se debe ejecutar.
Por tanto, si necesitamos ejecutar un fichero llamado “DespliegueADDS.ps1”, se deberá escribir fichero llamado “./DespliegueADDS.ps1”.
NOTA: Si vemos que pasa un rato más que prudencial y no se termina la ejecución, es recomendable abrir otra consola de PowerShell y volver a lanzar el script. Por desgracia, a veces los scripts se quedan tontos y no terminan de devolver el prompt, haciéndonos esperar cuando en realidad sí que han finalizado.
Paso 2. Script de PowerShell para el despliegue del nuevo bosque de AD DS:
En este momento, nos queda la segunda parte del despliegue, aquel en el que pasamos de la instalación de las features a la configuración de las mismas. Para ello creamos un fichero llamado “NuevoBosqueADDS.ps1”, donde, tal como hemos comentado antes, la extensión “.ps1” indica que es un fichero ejecutable de PowerShell.
Este nuevo fichero contiene el código del script de PowerShell tendrá esta codificación:
Write-Output «Vamos a configurar el bosque de AD DS, sigue disfrutando de tu cafe y te avisaremos cuando hayamos terminado»
start-job -Name NuevoBosqueADDS -ScriptBlock {
Import-Module ADDSDeployment
$Secure_String_Pwd = ConvertTo-SecureString «P@ssW0rD!» -AsPlainText -Force
Install-ADDSForest -CreateDnsDelegation:$false -SafeModeAdministratorPassword $Secure_String_Pwd -DatabasePath «C:\Windows\NTDS» -DomainMode «Win2012» -DomainName «nachopruebas.int» -DomainNetbiosName «nachopruebas» -ForestMode «Win2012» -InstallDns:$true -LogPath «C:\Windows\NTDS» -NoRebootOnCompletion:$false -SysvolPath «C:\Windows\SYSVOL» -Force:$true
}
Wait-Job -Name NuevoBosqueADDS
Write-Output «Despliegue del nuevo bosque finalizado»
Donde habrá que cambiar:
- «P@ssW0rD!»: por la contraseña que quiera usarse.
- -DomainName «nachopruebas.int»: Por el nombre de dominio completo que quiera usarse.
- -DomainNetbiosName «nachopruebas»: Por el nombre NetBios que quiera usarse.
- -DomainMode «Win2012»: por el nivel que quiera usarse.
- -ForestMode «Win2012»: por el nivel que quiera usarse.
Una vez salvado, habrá que ejecutarlo como antes, mediante la inclusión de un “./” que indica que se debe ejecutar en caso de hacerlo desde consola, o de la manera habitual desde PowerShell ISE.
Con esto ya tendríamos todo desplegado.
Conclusiones y próximos pasos:
El proceso descrito en este artículo, cómo crear un bosque de AD DS mediante script de PowerShell en un servidor Windows Server 2022, permite realizar el alta de un nuevo bosque de Active Directory Domain Services (AD DS) utilizando para ello un script con comandos de PowerShell.
La creación y ejecución del script se realiza en muy pocos pasos, tal como se ha podido ver en este artículo y puedes aprender otras cosas sobre AD DS consultando nuestro blog.
Esperamos que con esta pequeña guía no tengas problemas, pero si los tuvieras, no dudes en contactar con nosotros para que podamos echarte una mano.
¡Gracias por tu confianza!