Degradar un controlador de dominio con Windows Server 2022 desde la línea de comandos
Ya aprendimos, hace unos días, cómo Degradar un controlador de dominio desde la interfaz gráfica de Windows Server 2022 (parte 1 y parte 2).
Sin embargo, si tenemos instalado un servidor sin interfaz gráfica y necesitamos degradar un controlador de dominio, la forma más evidente de hacerlo es recurriendo a PowerShell.
Aunque te encuentres ejecutando Windows Server 2022 con interfaz gráfica, puede que te resulte más cómodo realizar la degradación del controlador desde la línea de comandos. En este caso, puedes abrir fácilmente la ventana de terminal usando la combinación de teclas Windows + R y, escribiendo el siguiente comando en la ventana que aparece:
powershell
Igual que ocurrió cuando hicimos la degradación desde la interfaz gráfica, dividiremos la tarea en dos partes:
-
Lo primero será la degradación del controlador, propiamente dicha. Al final de esta etapa, el ordenador habrá dejado de actuar como controlador de dominio en la red.
-
A continuación, desinstalaremos los roles Servicios de dominio de Active Directory y DNS, ya que no tendrá sentido seguir ocupando espacio en el disco con componentes software que no estamos utilizando.
Finalmente, reiniciaremos el equipo para aplicar todos los cambios que hemos realizado.
Degradar el controlador de dominio
Si estás trabajando en Windows Server sin interfaz gráfica, probablemente, al iniciar sesión con la cuenta Administrador, se habrá iniciado de forma automática la herramienta sconfig. Si este es tu caso, el primer paso será salir de la herramienta. Lo conseguiremos usando la opción 15 del menú.
Cuando nos encontremos en la línea de comandos de PowerShell, , importaremos el módulo ADDSDeployment a la sesión de trabajo actual para incorporar los cmdlets relacionados con los servicios de dominio de Active Directory.
Como en otras ocasiones, la sintaxis que usaremos es esta:
Import-Module ADDSDeployment
Al importar el módulo ADDSDeployment hemos añadido a PowerShell el cmdlet Uninstall-ADDSDomainController que, como puedes deducir, sirve para degradar un controlador de dominio de Active Directory.
Para nuestros fines, lo utilizaremos con la siguiente sintaxis:
Uninstall-ADDSDomainController -DemoteOperationMasterRole:$true -ForceRemoval:$true -Force:$true
En ella, además del cmdlet, podemos identificar los siguientes argumentos:
-
El argumento DemoteOperationMasterRole indica que la degradación debe continuar incluso si se trata del maestro de operaciones del directorio activo.
-
El argumento ForceRemoval desinstalará AD DS aunque no haya conexión con ningún otro controlador de dominio en la red.
-
Por último, para evitar que el cmdlet pueda interrumpir su ejecución, el argumento Force hace que no se tenga en cuenta ningún aviso que pueda aparecer durante el proceso.
Si necesitas más información sobre los argumentos que podemos utilizar con Uninstall-ADDSDomainController, puedes consultar la página https://learn.microsoft.com/en-us/powershell/module/addsdeployment/uninstall-addsdomaincontroller?view=windowsserver2022-ps.
Antes de continuar, el comando nos solicita el nuevo valor que se asignará a la contraseña para la cuenta del Administrador local del equipo, una vez que haya dejado de hacer las funciones de controlador de dominio.
Como siempre, podemos utilizar para la nueva contraseña el mismo valor que estábamos usando como administrador del dominio pero, en cualquier caso, debemos seguir las pautas habituales para que la contraseña sea segura.
A partir de aquí comenzará el proceso de degradación propiamente dicho.
Poco después, el sistema comenzará su reinicio.
Como es de esperar, comenzará el proceso de reinicio. Además, el sistema aprovecha para modificar su configuración y adaptarla a las nuevas circunstancias, por lo que el proceso puede tardar más de lo habitual.
Iniciar sesión y comprobar que la degradación ha sido correcta.
Cuando termine el reinicio, deberemos volver a identificarnos en el sistema.
Al hacerlo, el sistema nos pide la contraseña de Administrador.
Cuando concluya el inicio de sesión, si tienes la configuración predeterminada, se ejecutará automáticamente el comando sconfig. Si no es así, solo tienes que ejecutarlo manualmente para comprobar que todo es correcto.
Desinstalar los roles Servicios de dominio de Active Directory y DNS
Puede parecer que ya hemos terminado la tarea. Sin embargo, del mismo modo que tuvimos que añadir el rol AD-Domain-Services antes de promocionar el servidor a controlador de dominio. Ahora que hemos degradado el servidor, deberemos desinstalarlo. De este modo, liberaremos espacio de almacenamiento en disco.
Para lograrlo, usaremos el cmdlet Uninstall-WindowsFeature con la siguiente sintaxis:
Uninstall-WindowsFeature -Name AD-Domain-Services, DNS -Confirm:$false
Como habrás supuesto, el argumento Name permite indicar el componente o componentes que deseamos eliminar (en este caso, AD-Domain-Services y DNS).
El servidor DNS se instaló como requisito para implementar el dominio. Por este motivo, parece lógico desinstalarlo ahora.
Por otro lado, el argumento Confirm, con el valor $false consigue que el cmdlet presuponga que todas nuestras respuestas van a ser afirmativas y no nos pregunte nada.
Si necesitas más información sobre los argumentos que podemos utilizar con Uninstall-WindowsFeature, puedes consultar la página https://learn.microsoft.com/en-us/powershell/module/servermanager/uninstall-windowsfeature?view=windowsserver2022-ps.
Al momento, se mostrará una barra de progreso que nos indica el avance de la desinstalación.
Al terminar, aparece un pequeño resumen del resultado. En el ejemplo podemos ver que se ha completado satisfactoriamente (Success = True), que será necesario reiniciar (Restart Needed = Yes), que el cmdlet ha ofrecido un resultado satisfactorio, aunque con la necesidad de reiniciar (Exit Code = SuccessRestart) y que se han desinstalado los Servicios de dominio de Active Directory.
También se realiza una análisis del estado actual del servidor y, según los resultados obtenidos, pueden mostrarse algunas recomendaciones.
Reiniciar el ordenador
Es frecuente reiniciar el ordenador desde la línea de comandos utilizando la orden shutdown. Sin embargo, aprovechando que estamos ejecutando PowerShell, comprobaremos que también podemos utilizar un cmdlet:
Restart-Computer
El reinicio se producirá de forma inmediata y, con ello, habremos completado a tarea.
Espero que te haya resultado interesante.