viernes, 11 de febrero de 2022

Ejecutar un script al inicio desde GPO

Vamos a ver los pasos a seguir para la creación de una GPO que nos permita la ejecución de un script de PowerShell al inicio del equipo, super útil, puesto que te permitirá ejecutar dicho script en todos los equipos pertenecientes a la OU donde enlaces la GPO, y realizar cambios en un único punto, que se desplegará prácticamente en cada inicio de sesión. Para ello, vamos dividir el proceso en 2 partes.

Creación de la GPO

Debemos abrir la consola de Group Polily Management desde un Servidor unido a dominio y con acceso a la dicha consola.



Una vez dentro de la consola, vamos a la sección “group policy objects” y pulsamos en “new”



En el objeto que aparece de creación de GPOs ponemos el nombre que deseemos, preferiblemente sin espacios:


En source Starter GPO, lo dejamos en (none) puesto que no es recomendable enlazar una gpo sobre la que vamos a trabajar a una OU Una vez pulsamos OK, se genera una nueva GPO vacía con el nombre que hemos designado. Si expandimos la carpeta Group Policy Objects, podremos localizar la GPO recién creada. Pulsamos sobre ella con el botón derecho, y damos a “editar” para empezar a trabajar.

Edición de la GPO

Una vez tenemos la GPO abierta, debemos ir a Computer Configuration / Policies / Windows Settings / Scripts (startup / shutdown) y hacemos doble click en Startup, en el cuadro de la derecha del menú en árbol, lo que hará que se muestre el cuadro que se puede ver en la imagen a continuación (Startup properties):



Este cuadro se compone de dos pestañas. En la primera se ejecutan scripts de CMD, y en la segunda pestaña, Scripts de PowerShell (este cuadro sólo aparece a partir de Windows Server 2012). Nos vamos a esta pestaña, y pulsamos Add, para agregar un script.
 
Por buenas practicas, el script a agregar debería alojarse en la carpeta de scripts de la misma GPO que queremos editar. La ruta será la siguiente: \\FQDN\sysvol\FQDN\Policies\Unique ID\Machine\Scripts\Startup El Unique ID de la GPO lo puedes ver en la pestaña “details” de la GPO.


Como ejemplo, la ruta será así:

\\Aplicaciones.com\SysVol\Aplicaciones.com\Policies\{397057D8-505B-4CFB-92D6-B89AF9A0E6A6}\Machine\Scripts\Startup

Una vez indicada la ruta, en la pestaña del script de PowerShell, marcamos en el menú desplegable “Run Windows PowerShell Scripts First.

Si se necesita que el script ejecute en el perfil de usuario, varía la ruta donde debe almacenarse el script en la GPO, apuntando a User. Seria así:

\\FQDN\sysvol\FQDN\Policies\Unique ID\User\Scripts\Startup

Si el script parece que no ejecuta, pero aplica a los 5 minutos del inicio de maquina, puede ser una opción de GPO, que se modifica en "computer configuration / administrative templates / system / Group Policy, y ahí nos vamos a "Configure logon script delay". Por defecto, los scripts se toman 5 minutos de tiempo antes de su ejecución, de manera que debemos poner la opción en "enable" con tiempo 0.

Click para agrandar


Tengo que sacar tiempo para hacer una entrada con conceptos básicos del usos de las GPOs, que seguro puede ser de utilidad.
Y bueno, ¡Espero que os sirva de ayuda! Si te ha gustado el articulo, puedes invitarme a un café ;)

No hay comentarios:

Publicar un comentario

¡Gracias por colaborar en este blog con tus comentarios! :)