10 de septiembre de 2021

Automatización del proceso de configuración de nuevas estaciones de trabajo y servidores

Por Mathew Smith
FacturaciónAutomatización de servicios profesionales (PSA)

La creación de nuevas estaciones de trabajo y servidores suele implicar tareas repetitivas que, tradicionalmente, requieren una lista de verificación y una cantidad considerable de tiempo por parte de un ingeniero para completarlas. Es una tarea que muchos MSP realizan manualmente. Afortunadamente, para los usuarios de la solución de Monitoreo y Administración Remota (RMM) de Datto, la mayor parte del proceso se puede automatizar utilizando la auditoría inicial o el programador de tareas al conectarse.

Veamos cómo configurar este tipo de automatización.

Inicio del proceso de configuración de nuevas estaciones de trabajo y servidores

A continuación se muestra una lista de verificación de ejemplo con los elementos necesarios para un proceso de nueva construcción:

  • Eliminar barras de herramientas y software de terceros
  • Desactivar la cuenta de invitado
  • Crear una nueva cuenta de administrador local de MSP
  • Instala Java, Shockwave, Adobe Reader y Chrome
  • Habilite BitLocker y cifre la unidad; asegúrese de anotar la clave de recuperación
  • Anote la clave de licencia de Windows
  • Instalar todas las actualizaciones disponibles de Windows

Sin embargo, hay ciertas cosas que no conviene hacer si el nuevo dispositivo es un servidor, por ejemplo.

Solo estaciones de trabajo:

  • Eliminar barras de herramientas y software de terceros
  • Instalar Java, Flash, Shockwave, Adobe Reader, Chrome
  • Habilite BitLocker y cifre la unidad, tomando nota de la clave de recuperación

Tanto servidores como estaciones de trabajo:

  • Desactivar la cuenta de invitado
  • Crear una nueva cuenta de administrador local de MSP
  • Anote la clave de licencia de Windows
  • Instalar todas las actualizaciones disponibles de Windows

El guion: Próximos pasos

A continuación, podemos utilizar código de PowerShell en nuestro nuevo componente de compilación. Esto nos ayudará a determinar el tipo de sistema operativo; esa información dictará los siguientes pasos que seguirá el script.

Determinemos si estamos ejecutando en un servidor o en una estación de trabajo utilizando PowerShell.

$osInfo = Get-WmiObject -Class Win32_OperatingSystem

Ahora podemos extraer el tipo de producto del objeto Product Type:

$osInfo.ProductType

Estación de trabajo (1)

Controlador de dominio (2)

Servidor (3)

El siguiente paso es aprovechar el valor devuelto por nuestra consulta. Para ello, debemos evaluar la variable $osInfo.ProductType con una instrucción IF.

Hay dos operadores que podemos usar con la instrucción IF

-eq Equivale a

-ne No es igual

Determina si el script se está ejecutando en el sistema operativo de una estación de trabajo

if ($osInfo.ProductType -eq 1){

write-host Sistema operativo de la estación de trabajo detectado

}

Determina si el script no se está ejecutando en el sistema operativo de una estación de trabajo

if ($osInfo.ProductType -ne 1){

write-host Sistema operativo del servidor detectado

}

Si quisiéramos, podríamos definir con mayor precisión en qué tipo de servidor se está ejecutando el script (controlador de dominio o servidor miembro) comprobando si el valor de retorno es 2 o 3, tal y como se ha detallado anteriormente.

Uso de ELSE en la instrucción IF

Para simplificar el código de PowerShell, podríamos usar ELSE en nuestra instrucción IF en lugar de comprobar cada tipo de sistema operativo por separado. Por ejemplo, si el script no se está ejecutando en un sistema operativo de servidor, entonces debe estar ejecutándose en un sistema operativo de estación de trabajo.

if ($osInfo.ProductType -ne 1){

write-host Sistema operativo del servidor detectado

}

else {

write-host Sistema operativo de la estación de trabajo detectado

}

Ahora que podemos determinar en qué tipo de sistema operativo se está ejecutando el script, podemos comenzar a realizar las acciones automatizadas…

if ($osInfo.ProductType -eq 1){

write-host Sistema operativo de la estación de trabajo detectado

<insert your custom PowerShell code here>

}

Lo siguiente que hay que hacer es ejecutar esto automáticamente en todos los dispositivos nuevos que se incorporen a un sitio. ¿Llevas tiempo utilizando la plataforma? Si es así, probablemente tengas sitios con agentes existentes en los que no quieras ejecutar tu nuevo script de preparación de computadoras.

Para ello, podrías crear un nuevo sitio llamado «Workshop» y utilizarlo como área de prueba para todas las nuevas compilaciones, trasladando los dispositivos a su sitio correspondiente una vez que el proceso de compilación haya finalizado. Nota: ¡Recuerda desactivar todas las políticas de monitoreo para el nuevo sitio «Workshop» y asegúrate de que no se sincronice con ninguna aplicación externa!

Descargue el instalador del agente para el nuevo sitio «Workshop» y utilícelo para todos los dispositivos nuevos que configure. Esto garantiza que todos los dispositivos nuevos se unan primero al sitio «Workshop».

Seleccione el nuevo sitio «Taller» y, a continuación, haga clic en el ícono «Tarea programada».

Asigne un nombre a la tarea y haga clic en el botón «Programar».

Para nuestros fines, no importa si eliges la opción «On Connect» o «Initial Audit». Esto se debe a que estamos utilizando PowerShell para controlar qué partes del script se ejecutan en cada tipo de sistema operativo. Solo estamos utilizando una de estas opciones como disparador para detectar que se ha agregado un nuevo dispositivo.

Agregue su nuevo componente personalizado de preparación de máquinas.

Asegúrese de configurar la tarea para que nunca caduque; queremos asegurarnos de que se ejecute cuando el dispositivo esté disponible.

Por último, configura las opciones de notificación si deseas recibir un aviso en caso de que el script de preparación del equipo no se ejecute correctamente.

Una vez completado el componente de preparación del equipo, puede trasladar el dispositivo desde el sitio «Taller» al sitio del cliente correspondiente.

Siguientes lecturas recomendadas