Detalles técnicos sobre el funcionamiento del agente Windows

Instalación y desinstalación del agente

El paquete de instalación del agente Windows se presenta como un archivo .msi. Este paquete sigue las recomendaciones oficiales de Microsoft sobre la creación de paquetes de instalación.

El MSI del agente se genera directamente desde su instancia Cyberwatch, mediante el formulario de creación de un agente Windows. Este incluye por defecto los parámetros seleccionados en Cyberwatch para su instalación como por ejemplo: el tipo de arquitectura, los grupos, la URL de la instancia Cyberwatch…

También es posible descargar directamente el agente según el tipo de activo escaneado:

en versión 32 bits o en versión 64 bits

Una vez instalado, se crea una entrada en la lista de programas y características accesible desde el panel de control.

De forma individual, el MSI del agente puede instalarse mediante un simple “doble clic”

en el archivo, como cualquier otro paquete de instalación. Para cualquier industrialización del despliegue, el agente soporta los métodos de despliegue oficiales de Microsoft mediante GPO, así como cualquier otro mecanismo de despliegue que utilice soluciones de terceros (p. ej. SCCM, Chocolatey…).

La desinstalación del agente sigue del mismo modo los métodos oficiales de Microsoft. El agente puede desinstalarse desde la lista de programas y características accesible desde el panel de control.

Funcionamiento del agente

En sistemas Windows, la instalación del agente genera la creación de un servicio llamado CyberwatchAgent.service y la generación de un directorio C:\Program Files\CYBERWATCH SAS\CyberwatchAgent\.

Este directorio contiene los siguientes elementos:

  • una carpeta logs/ que contiene los logs del agente en dos archivos:
    • un archivo agent.log con los logs de ejecución del agente
    • un archivo service.log con los logs de ejecución del servicio
  • el archivo agent.conf que contiene la configuración del agente (URL, claves de API…)
  • el ejecutable cyberwatch-agent.exe que es el programa de ejecución del agente
  • el ejecutable CyberwatchService.exe, utilizado para la creación del servicio
  • el script PowerShell launcher.ps1 llamado por el servicio y responsable de la ejecución del archivo cyberwatch-agent.exe

El servicio CyberwatchService se ejecuta cada 5 minutos y desencadena la comunicación del agente con el escáner Cyberwatch al que está asociado (según la URL configurada, que se puede encontrar en el archivo agent.conf).

Durante esta comunicación con el servidor Cyberwatch, el agente simplemente consultará la API Cyberwatch y recuperará las posibles tareas que debe realizar en el activo en cuestión (p. ej. relanzar un escaneo, desplegar un parche…).

Actualizaciones del agente

Cyberwatch publica regularmente actualizaciones del agente, cuyos cambios se enumeran en el historial de versiones del agente Cyberwatch.

Estas actualizaciones pueden incluir mejoras en el funcionamiento, el rendimiento o ciertas funcionalidades relacionadas con la instalación del agente, por ejemplo.

Estas actualizaciones deben diferenciarse de las actualizaciones del software; una versión antigua

del agente no actualizada en los activos continuará funcionando con las próximas versiones de Cyberwatch (salvo indicación específica). Sin embargo, Cyberwatch recomienda actualizar sistemáticamente los agentes cuando sea posible.

Para actualizar el agente Windows, basta con reinstalar el paquete MSI sobre una instalación existente. La nueva versión del agente reemplazará a la versión anterior en el sistema. Estas actualizaciones también pueden realizarse mediante los métodos de despliegue masivo mencionados arriba.

Atención: si la actualización del agente se realiza tras un cambio del servidor de gestión, se deberá eliminar todos los componentes restantes del agente presentes en la máquina objetivo antes de proceder a su reinstalación para que los archivos de configuración se actualicen correctamente. En particular:

  • los elementos presentes en C:\Program Files\CYBERWATCH SAS\CyberwatchAgent
  • las claves de registro asociadas

Desplegar el agente mediante una GPO (opcional)

El procedimiento propuesto aquí fue probado en un servidor Windows 2019; los detalles pueden variar según la versión utilizada. En el resto de la página, utilizaremos el término más común GPO para referirnos a la Group Policy Preferences (GPP) a definir.

El siguiente procedimiento permite desplegar el agente Cyberwatch mediante una GPO usando el programador de tareas para evitar reiniciar los activos objetivo:

  1. Descargar el archivo MSI del agente Cyberwatch desde Gestión de activos > Agentes > Añadir

  2. Crear un recurso compartido para colocar el archivo MSI del agente Cyberwatch y el script batch de despliegue

    El contenido del script de despliegue (archivo .bat) es el siguiente (ajustar según la ruta al archivo MSI):

     @ECHO OFF
     if EXIST "C:\Program Files\CYBERWATCH SAS\CyberwatchAgent\cyberwatch-agent.exe" ( 
     echo "Cyberwatch Agent is present" 
     ) else ( 
     msiexec /qn /i "\\Server\CheminVers\cyberwatch_agent-x64.msi" )
    

    Este script verifica la presencia del agente Cyberwatch en la máquina y lo instala en silencio si no está presente.

  3. En su controlador de dominio, abrir Gestión de directivas de grupo y crear una nueva GPO en su dominio

  4. Editar la GPO recién creada para abrirla en el Editor de administración de directivas de grupo

  5. En “Configuración del equipo > Preferencias > Configuración del Panel de control > Tareas programadas”, crear una nueva tarea programada (al menos Windows 7) con los siguientes elementos:

    • Pestaña General: dar un nombre a la tarea y usar la cuenta “NT AUTHORITY\System “ durante su ejecución
    • Pestaña Desencadenadores: añadir un desencadenador según sus preferencias
    • Pestaña Acciones: añadir una acción de tipo “Iniciar un programa” y seleccionar el archivo .bat creado anteriormente
  6. Si aún no se ha hecho, vincular la GPO a una OU o a su dominio desde Gestión de directivas de grupo

Una vez aplicada la GPO a los clientes, se creará una tarea programada para ejecutar el script de despliegue.


Volver arriba

English Français Español