Arquitectura del Agente
Cómo los perfiles, el ámbito, los grupos, los módulos de licencia y las exclusiones KB definen lo que hace cada agente de Moftgate. Guía para administradores.
Visión General#
Cada agente de Moftgate se comunica con el servidor en un programa regular llamado heartbeat. En cada heartbeat el servidor decide qué debe hacer el agente: qué ajustes aplicar, qué políticas DLP hacer cumplir, qué módulos ejecutar y qué campos personalizados o exclusiones de actualización respetar. Esta guía explica esas decisiones desde la perspectiva de un administrador para que pueda configurar los agentes con confianza.
La configuración se entrega a través de tres capas que se ejecutan en orden en cada heartbeat: primero el servidor elige el perfil activo para ese endpoint, luego filtra las políticas DLP por ámbito de destino y, finalmente, combina el perfil elegido con los predeterminados del tenant. Las verificaciones de licencia se ejecutan junto con este flujo, de modo que las funciones sin licencia nunca se envían al agente.
Perfiles de Agente#
Un perfil de agente es un paquete reutilizable de ajustes: interruptores DLP, reglas USB, opciones del gateway de contenido web, rutas de monitoreo de integridad de archivos y más. En lugar de configurar cada endpoint individualmente, crea un puñado de perfiles que coincidan con los roles de sus dispositivos (por ejemplo "Laptops de finanzas", "Terminales kiosk", "Estaciones de trabajo de desarrolladores") y asigna un perfil a cada endpoint.
Cuando un agente se registra por primera vez, se le asigna automáticamente el perfil predeterminado. Si ha marcado un perfil como predeterminado, se usa ese; de lo contrario se usa el perfil más antiguo como respaldo. Puede reasignar el perfil en cualquier momento desde la página de detalle del endpoint.
- 1Abra la página de detalle del endpoint
Vaya a Fleet Intelligence, abra el endpoint que desea configurar y localice el selector de Agent Profile.
- 2Elija un perfil
Seleccione el perfil de agente que coincida con el rol del dispositivo (p. ej. "Laptops de finanzas", "Terminales kiosk"). El cambio surte efecto en el próximo heartbeat.
- 3Verifique en la caché del agente
En el endpoint, ejecute "agent --profile" para confirmar que los ajustes en caché, las políticas DLP y los módulos activos coinciden con lo que configuró.
Prioridad de Ámbito de Destino#
El ámbito de destino decide a qué endpoints se aplica un perfil o política. Cuando el servidor selecciona el perfil activo para un endpoint, recorre una escalera de prioridad de lo más específico a lo menos específico. El primer ámbito que coincide gana, y los ámbitos de menor prioridad se ignoran para esa decisión.
El orden de prioridad, de mayor a menor, es: endpoints, luego users, luego groups, luego profiles, luego all. En términos simples: una regla dirigida a un único dispositivo vence a una dirigida a una persona; una persona vence a un grupo; un grupo vence a un perfil; y un perfil vence a una regla general para "todos".
| Prioridad y Ámbito | Especificidad | Cómo coincide |
|---|---|---|
| 0 - Endpoints | Más específico | Coincide con un único endpoint por hostname o ID. Úselo para anulaciones puntuales. |
| 1 - Users | Muy específico | Coincide con el usuario actualmente conectado por nombre de usuario. Úselo para políticas por persona independientemente del dispositivo. |
| 2 - Groups | Específico | Coincide cuando el endpoint (o su usuario conectado) pertenece a al menos uno de los grupos seleccionados. |
| 3 - Profiles | Amplio | Coincide con todos los endpoints asignados a un perfil de agente particular. Úselo para despliegues basados en roles. |
| 4 - All | General | Se aplica a todos los endpoints del tenant. Úselo como predeterminado base. |
Grupos de Endpoints y Usuarios#
Los grupos le permiten dirigir políticas y perfiles a colecciones de dispositivos o personas. Moftgate mantiene dos tipos independientes de membresía de grupo: grupos de endpoints (qué dispositivos pertenecen juntos, p. ej. "Servidores IT", "Estaciones de trabajo de contabilidad") y grupos de usuarios (qué personas pertenecen juntas, p. ej. "Contratistas", "Directivos").
Cuando una política usa el ámbito "groups", el servidor verifica ambos tipos de membresía: si el endpoint o su usuario actualmente conectado pertenece a al menos uno de los grupos seleccionados, la política se aplica. Esta lógica OR significa que puede dirigir una política a "cualquiera en el grupo de Finanzas o cualquier dispositivo en el grupo de Finanzas" con una sola regla.
- Los grupos de endpoints son ideales para políticas por rol de dispositivo (p. ej. aplicar bloqueo USB estricto en terminales kiosk).
- Los grupos de usuarios son ideales para políticas basadas en personas (p. ej. permitir transferencia de portapapeles para directivos independientemente del laptop que usen).
- Un único endpoint puede pertenecer a muchos grupos, y un único usuario puede pertenecer a muchos grupos.
Filtrado de Políticas DLP#
Las políticas DLP se filtran por ámbito de destino en cada heartbeat, de modo que cada agente recibe solo las políticas relevantes para él. Se usan los mismos cinco ámbitos, con un detalle importante para el ámbito "groups": coincide si el endpoint pertenece a un grupo seleccionado O el usuario conectado pertenece a un grupo seleccionado.
| Ámbito de Destino | Regla de Coincidencia |
|---|---|
| All | Se aplica a todos los endpoints del tenant. |
| Endpoints | Coincide cuando el hostname o ID del endpoint está listado. |
| Users | Coincide cuando el usuario conectado está listado. |
| Groups | Coincide cuando el endpoint O el usuario conectado pertenece a al menos un grupo seleccionado. |
| Profiles | Coincide cuando el endpoint tiene asignado el perfil de agente listado. |
Módulos de Licencia y Comportamiento del Agente#
Lo que un agente realmente hace está controlado por dos cosas: si su licencia incluye el módulo y si el módulo está activado en el perfil activo del endpoint. Ambas deben ser verdaderas para que la función se ejecute. Esta verificación de dos capas evita que se envíen funciones sin licencia al agente y le permite desactivar un módulo por perfil incluso cuando está licenciado.
| Módulo de Licencia | Qué habilita | Cuando está desactivado o sin licencia |
|---|---|---|
| DLP | Políticas de prevención de pérdida de datos, bloqueo USB, gateway de contenido web, políticas de app/web | No se envían políticas DLP ni bloqueo USB; el gateway de contenido web se desactiva. |
| Endpoint Visibility | Monitoreo de integridad de archivos, logs de comportamiento, inventario de endpoints | El monitoreo de integridad de archivos y el registro de comportamiento se detienen; se rechazan los reportes. |
| SSPM | Gestión de postura de seguridad SaaS | Las funciones de postura SaaS se desactivan. |
| DSPM | Descubrimiento de datos y escaneo de archivos | No se envían tareas de descubrimiento; se rechazan los reportes de resultados de escaneo. |
En cada heartbeat el servidor envía al agente una lista corta de módulos activos. El agente solo inicia las tareas en segundo plano para los módulos de esa lista: no rastreará el portapapeles ni el USB para DLP si DLP está inactivo, no vigilará archivos para monitoreo de integridad si visibility está inactivo, etc. Esto mantiene a los agentes inactivos ligeros.
- Heartbeat siempre funciona, incluso sin licencia, por lo que el agente permanece visible en el panel.
- Si no existe archivo de licencia, todos los módulos se cierran y el agente no hace nada más allá del heartbeat.
- Un módulo desactivado en el perfil no se envía al agente, ahorrando CPU, memoria y red.
- Cuando la licencia cambia, la lista de módulos activos se actualiza en el próximo heartbeat.
Campos Personalizados y Exclusiones KB#
Los campos personalizados y las exclusiones KB (knowledge base) se entregan a los agentes con la misma lógica de coincidencia de destino que las políticas. Cada campo personalizado o exclusión puede tener como ámbito todos los endpoints, un grupo, un perfil, una tag o un único endpoint, de modo que los agentes solo reciben lo que les aplica.
Los campos personalizados le permiten recopilar metadatos adicionales de cada endpoint (por ejemplo "Centro de Costos", "Departamento", "Tag de Activo"). El agente recopila automáticamente valores conocidos como hostname, OS y nombre de usuario, usa el valor predeterminado para todo lo demás y luego reporta los valores al servidor en cada heartbeat.
| Tipo de Destino | Regla de Entrega |
|---|---|
| All endpoints | Se entrega a todos los endpoints del tenant. |
| Group | Se entrega cuando el endpoint pertenece a al menos uno de los grupos seleccionados. |
| Profile | Se entrega cuando el endpoint tiene asignado el perfil de agente seleccionado. |
| Tag | Se entrega cuando el endpoint lleva al menos una de las tags seleccionadas. |
| Endpoint | Se entrega únicamente al endpoint específico listado. |
Las exclusiones KB le indican al agente qué actualizaciones de OS omitir. Cuando el agente está a punto de instalar una actualización, primero verifica la lista de exclusiones; cualquier actualización excluida se omite y se registra. Las exclusiones también se pueden filtrar por tipo de sistema operativo, de modo que una exclusión solo para Windows nunca afecta a un agente macOS.
Comandos CLI del Agente#
Para usuarios avanzados e ingenieros de soporte, el agente incluye un pequeño conjunto de banderas de línea de comandos. Son útiles para diagnosticar lo que un endpoint está haciendo realmente y para probar reglas DLP contra un archivo antes de desplegar una política.
| Comando | Descripción |
|---|---|
| agent | Inicia el daemon del agente en modo normal. |
| agent --version | Imprime la versión instalada del agente. |
| agent --config | Muestra la configuración local (ID de dispositivo, hostname, URL del servidor). |
| agent --profile | Muestra el paquete de políticas en caché (ajustes, políticas DLP, módulos activos). Se refresca desde el servidor si la caché está vacía. |
| agent --license | Obtiene el estado de licencia en vivo desde el servidor (módulos, cantidades, vencimiento). |
| agent --evaluate <archivo> <canal> | Prueba un archivo contra las reglas DLP para un canal dado (usb, web, email, print, clipboard, sync). |
| agent --restarted | Notifica al servidor que el agente acaba de reiniciarse. |