Configurar actualizaciones de inteligencia de seguridad sin conexión para Microsoft Defender para punto de conexión en Linux

Este artículo le guía a través de la configuración de actualizaciones de inteligencia de seguridad sin conexión para Microsoft Defender para punto de conexión en Linux. Use este enfoque para mantener las definiciones de antivirus actualizadas en dispositivos Linux que tienen conectividad limitada o no a Internet, descargando actualizaciones en un servidor reflejado local y distribuyéndolas a través de la flota. Antes de comenzar, revise los requisitos previos para asegurarse de que el entorno cumple los requisitos.

Funcionamiento de las actualizaciones de inteligencia de seguridad sin conexión

En este artículo se describe cómo configurar las actualizaciones de inteligencia de seguridad sin conexión en Defender para punto de conexión en Linux. Esta capacidad permite actualizar la inteligencia de seguridad (también denominada definiciones o firmas) en dispositivos Linux con exposición limitada o nula a Internet. Con esta configuración, usará un servidor de hospedaje local, denominado servidor reflejado, que se conecta a la nube de Microsoft para descargar actualizaciones de inteligencia de seguridad. Otros dispositivos Linux extraen estas actualizaciones del servidor reflejado a intervalos predefinidos.

Ventajas del uso de actualizaciones de inteligencia de seguridad sin conexión

Entre las principales ventajas se encuentran:

  • El equipo de seguridad puede controlar y administrar la frecuencia de las descargas de firmas en el servidor local y la frecuencia con la que los puntos de conexión extraen firmas del servidor local.
  • Tiene una capa adicional de protección y control, ya que las firmas descargadas se pueden probar en un dispositivo de prueba antes de propagarlas a toda la flota.
  • Necesita menos ancho de banda de red, ya que solo un servidor local obtiene las actualizaciones más recientes de la nube de Microsoft en nombre de toda la flota.
  • El servidor reflejado puede ejecutar Windows, Mac o Linux, y no es necesario instalar Defender para punto de conexión en ese servidor.
  • Obtiene la protección antivirus más actualizada, ya que las firmas siempre se descargan junto con el motor antivirus compatible más reciente.
  • Las versiones anteriores de los archivos de firmas (n-1) se mueven a una carpeta de copia de seguridad en su servidor espejo durante cada iteración. Si hay algún problema con las actualizaciones más recientes, puede recuperar la versión de firma n-1 de la carpeta de copia de seguridad para sus dispositivos.
  • En el caso poco frecuente de que se produzca un error en una actualización sin conexión, puede configurar una opción de reserva para obtener actualizaciones en línea desde la nube de Microsoft.

Información general sobre el proceso

En un nivel alto, el proceso de actualización sin conexión funciona de la siguiente manera:

  • Configura un servidor espejo, que es un servidor Web o NFS local al que puede accederse desde la nube de Microsoft.
  • Las firmas se descargan de la nube de Microsoft en este servidor espejo ejecutando un script mediante una tarea cron o el Programador de tareas en el servidor local.
  • Los puntos de conexión Linux que ejecutan Defender for Endpoint obtienen las firmas descargadas del servidor espejo a intervalos predefinidos.
  • Las firmas descargadas en los dispositivos Linux desde el servidor local se verifican antes de cargarse en el motor del antivirus.
  • Para iniciar y configurar el proceso de actualización, puede actualizar el archivo JSON de configuración administrada en los dispositivos Linux.
  • Puede ver el estado de las actualizaciones en la CLI de mdatp.

Diagrama de flujo de procesos en el servidor reflejado para descargar las actualizaciones de inteligencia de seguridad

Fig. 1: Diagrama de flujo de proceso en el servidor reflejado para descargar las actualizaciones de inteligencia de seguridad

Diagrama de flujo de procesos en el punto de conexión de Linux para las actualizaciones de inteligencia de seguridad

Fig. 2: Diagrama de flujo de procesos en el punto de conexión Linux para las actualizaciones de inteligencia de seguridad

El servidor reflejado puede ejecutar cualquiera de los siguientes sistemas operativos:

  • Linux (cualquier sabor)
  • Windows (cualquier versión)
  • Mac (cualquier versión)

Requisitos previos

  • La versión 101.24022.0001 de Defender para punto de conexión o posterior debe instalarse en los puntos de conexión de Linux.

  • Los equipos Linux deben tener conexión con el servidor espejo.

  • El dispositivo Linux debe ejecutar alguna de las distribuciones compatibles con Defender for Endpoint. (consulte Distribuciones de Linux admitidas).

  • El servidor reflejado puede ser un servidor HTTP/HTTPS o un servidor compartido de red, como un servidor NFS.

  • El servidor reflejado debe tener acceso a las siguientes direcciones URL:

    • https://github.com/microsoft/mdatp-xplat.git
    • https://go.microsoft.com/fwlink/?linkid=2144709
  • El servidor reflejado debe admitir Bash o PowerShell.

  • Se requieren las siguientes especificaciones mínimas del sistema para el servidor reflejado:

    Núcleo de CPU RAM Disco libre Intercambio
    2 núcleos (4 núcleos preferidos) 1 GB min (4 GB preferidos) 2 GB Dependiente del sistema

    Nota:

    Esta configuración puede variar en función del número de solicitudes que se atienden y la carga que debe procesar cada servidor.

Configuración del servidor reflejado

Nota:

  • La administración y la propiedad del servidor espejo recaen exclusivamente en el cliente, ya que reside en el entorno privado del cliente.
  • El servidor espejo no necesita tener instalado Defender for Endpoint.

Obtenga el script para descargar inteligencia de seguridad sin conexión

Microsoft aloja un script de descarga sin conexión de inteligencia de seguridad en el repositorio GitHub microsoft/mdatp-xplat.

Siga estos pasos para obtener el script de descargador:

Opción 1: Clonar el repositorio (preferido)

Para clonar el repositorio, realice los pasos siguientes:

  1. Instale git en el servidor reflejado.

  2. Vaya al directorio donde desea clonar el repositorio.

  3. Ejecute el siguiente comando: git clone https://github.com/microsoft/mdatp-xplat.git

Opción 2: Descargar el archivo comprimido

Para usar el paquete ZIP en lugar de clonar el repositorio, siga estos pasos:

  1. Descargue el archivo comprimido.

  2. Copie el archivo descargado en la carpeta donde desea conservar el script.

  3. Extraiga la carpeta comprimida.

  4. Programe una tarea o un trabajo cron para mantener actualizado el archivo zip del repositorio o descargado a la versión más reciente a intervalos regulares.

Estructura de directorios local después de clonar el repositorio o descargar el archivo comprimido

Use la siguiente lista de directorios de ejemplo para comprobar que la copia local contiene la estructura y los scripts esperados linux/definition_downloader :

user@vm:~/mdatp-xplat$ tree linux/definition_downloader/
linux/definition_downloader/
├── README.md
├── settings.json
├── settings.ps1
├── xplat_offline_updates_download.ps1
└── xplat_offline_updates_download.sh

0 directories, 5 files

Nota:

Consulte el README.md archivo para obtener más información sobre cómo usar los scripts del descargador de actualizaciones sin conexión.

El settings.json archivo consta de algunas variables que el usuario puede configurar para determinar la salida de la ejecución del script.

Nombre del campo Valor Descripción
downloadFolder string Corresponde a la ubicación en la que el script descarga los archivos.
downloadLinuxUpdates bool Cuando se establece en true, el script descarga las actualizaciones específicas de Linux a downloadFolder.
logFilePath string Configura los registros de diagnóstico en una carpeta determinada. El archivo de registro de diagnóstico se puede compartir con Microsoft para la depuración si hay algún problema.
downloadMacUpdates bool El script descarga las actualizaciones específicas para Mac para downloadFolder.
downloadPreviewUpdates bool Descarga la versión preliminar de las actualizaciones disponibles para el sistema operativo específico.
backupPreviousUpdates bool Permite que el script copie la actualización anterior en la _back carpeta y que se descarguen nuevas actualizaciones en downloadFolder.

Ejecute el script del descargador de inteligencia de seguridad sin conexión

Para ejecutar manualmente el script de descargador, configure los parámetros del settings.json archivo según la descripción de la sección anterior y use uno de los siguientes comandos basados en el sistema operativo del servidor reflejado:

  • Bash: ejecute el siguiente comando para capturar las actualizaciones de definiciones sin conexión más recientes en la carpeta de descarga configurada:

    ./xplat_offline_updates_download.sh
    
  • PowerShell: Si el servidor espejo ejecuta Windows, use el script de descarga de PowerShell para obtener el paquete de definiciones sin conexión:

    ./xplat_offline_updates_download.ps1
    

Nota:

Programe un trabajo cron para ejecutar este script para descargar las últimas actualizaciones de inteligencia de seguridad en el servidor reflejado a intervalos regulares.

Aloje las actualizaciones de inteligencia de seguridad sin conexión en el servidor espejo

Una vez que se ejecuta el script, las firmas más recientes se descargan en la carpeta configurada en el settings.json archivo (updates.zip).

Una vez descargado el archivo ZIP de firmas, se puede usar el servidor reflejado para hospedarlo. El servidor espejo puede alojarse mediante cualquiera de los servidores HTTP/HTTPS, recursos compartidos de red o en un punto de montaje local o remoto.

Una vez que las actualizaciones estén alojadas en el servidor espejo, copie la ruta de acceso absoluta de la ubicación alojada (hasta el directorio arch_*, sin incluirlo).

Nota:

Por ejemplo, si el script del descargador se ejecuta con downloadFolder=/tmp/wdav-updatey el servidor HTTP (www.example.server.com:8000) hospeda la /tmp/wdav-update ruta de acceso, el URI correspondiente es: www.example.server.com:8000/linux/production/ (compruebe que dentro del directorio, hay arch_* directorios).

También puede usar la ruta de acceso absoluta del directorio (punto de montaje local o remoto). Por ejemplo, si el script descarga los archivos en un directorio /tmp/wdav-update, el URI correspondiente es:/tmp/wdav-update/linux/production .

Una vez configurado el servidor espejo, debe propagar este URI a los puntos de conexión de Linux como offlineDefinitionUpdateUrl en la Configuración administrada, tal y como se describe en Configurar los puntos de conexión.

Configuración de los puntos de conexión

Puede configurar la característica de actualizaciones de inteligencia de seguridad sin conexión de dos maneras:

  • A través de la administración de la configuración de seguridad en el portal de Defender/Intune: permite la administración centralizada y la configuración de la configuración de un grupo de dispositivos.
  • Mediante el archivo JSON administrado: permite la configuración de los valores manualmente o a través de herramientas de administración de terceros, como Chef, Ansible y otros.

Para configurar las actualizaciones de inteligencia de seguridad sin conexión en el portal de Defender, siga estos pasos:

  1. En el portal de Defender, vaya a Puntos de conexión>Administración de configuración>Directivas de seguridad de puntos de conexión y elija Crear una nueva directiva.
  2. En el Asistente para la creación de directivas, seleccione Linux como plataforma, Microsoft Defender Antivirus como plantilla. y, a continuación, seleccione Crear directiva.
  3. Proporcione un nombre y una descripción para la directiva y, a continuación, seleccione Siguiente.

En el paso Configuración , puede encontrar los valores de configuración de la característica de actualizaciones de inteligencia de seguridad sin conexión en las secciones Motor antivirus y Preferencias de protección entregada en la nube.

Configuración Descripción
Habilitación de la actualización de inteligencia de seguridad sin conexión Esta configuración habilita la característica de actualización de inteligencia de seguridad sin conexión en los puntos de conexión de Linux. Al habilitar esta configuración, las dos opciones siguientes estarán disponibles. Asegúrese de que las actualizaciones de inteligencia de seguridad automatizadas también estén habilitadas.
Uso de la nube como respaldo para la actualización sin conexión de inteligencia de seguridad Si se establece en True, el punto de conexión intentará obtener actualizaciones de firma de la nube de Microsoft si no puede obtenerlas del servidor reflejado.
URL o directorio para la actualización de inteligencia de seguridad sin conexión Esta configuración especifica la dirección URL o la ruta de acceso del directorio del servidor reflejado que hospeda las actualizaciones de inteligencia de seguridad. La dirección URL debe tener el formato http://<mirror_server_address>/linux/production/ (si se usa un servidor HTTP/HTTPS) o una ruta de acceso de directorio (si se usa un recurso compartido de red o un punto de montaje local o remoto). Consulte Alojamiento de las actualizaciones de inteligencia de seguridad sin conexión a Internet en el servidor espejo para obtener más información.
Intervalo de tiempo de actualización de inteligencia de seguridad De forma predeterminada, los equipos Linux obtienen actualizaciones de firmas del servidor espejo cada 8 horas (28800 segundos). Use esta configuración si desea especificar un intervalo diferente. Especifique el intervalo en segundos.

Comprobación de la configuración

Para probar si la configuración se aplica correctamente en los puntos de conexión de Linux, ejecute el siguiente comando:

mdatp health --details definitions

En la salida de ejemplo siguiente se muestran los campos que confirman que las definiciones se han actualizado correctamente y se aplica la configuración de actualización sin conexión:

user@vm:~$ mdatp health --details definitions
automatic_definition_update_enabled         : true [managed]
definitions_updated                         : Mar 14, 2024 at 12:13:17 PM
definitions_updated_minutes_ago             : 2
definitions_version                         : "1.407.417.0"
definitions_status                          : "up_to_date"
definitions_update_source_uri               : "https://go.microsoft.com/fwlink/?linkid=2144709"
definitions_update_fail_reason              : ""
offline_definition_url_configured           : "http://172.XX.XXX.XX:8000/linux/production/" [managed]
offline_definition_update                   : "enabled" [managed]
offline_definition_update_verify_sig        : "enabled"
offline_definition_update_fallback_to_cloud : false[managed]

Desencadenamiento de las actualizaciones de inteligencia de seguridad sin conexión

Puede desencadenar actualizaciones de inteligencia de seguridad sin conexión de forma automática o manual.

Actualización automática

Las actualizaciones automáticas se producen en las condiciones siguientes:

  • Si el nivel de aplicación del motor antivirus está establecido en real_time, y los campos automaticDefinitionUpdateEnabled y offline_definition_update del archivo de configuración administrado mdatp_managed.json están establecidos en true, entonces las actualizaciones sin conexión de inteligencia de seguridad se activan automáticamente a intervalos periódicos.
  • De forma predeterminada, este intervalo periódico es de 8 horas. Pero se puede configurar estableciendo el definitionUpdatesInterval parámetro en el mdatp_managed.json archivo.

Actualización manual

Para activar manualmente la actualización de inteligencia de seguridad sin conexión y descargar las firmas desde el servidor espejo en los equipos Linux, ejecute el siguiente comando para forzar una actualización inmediata de las definiciones desde el origen configurado:

mdatp definitions update

Comprobación del estado de la actualización

Después de desencadenar una actualización, use las siguientes comprobaciones para confirmar que se ha realizado correctamente:

  1. Compruebe que la actualización se realizó correctamente ejecutando el comando : mdatp health --details --definitions.

  2. Compruebe los campos siguientes. En la salida de ejemplo siguiente se muestran los campos de estado de definición que indican una actualización correcta:

user@vm:~$ mdatp health --details definitions
...
definitions_status                          : "up_to_date"
...
definitions_update_fail_reason              : ""
...

Solución de problemas y diagnósticos

Si se produce un error en las actualizaciones, se bloquean o no se inician, siga estos pasos para solucionar problemas:

  1. Compruebe el estado de las actualizaciones de inteligencia de seguridad sin conexión. Use el siguiente comando para revisar el estado de definición actual y actualizar el origen:

    mdatp health --details definitions
    

    Busque información en la definitions_update_fail_reason sección .

  2. Asegúrese de que offline_definition_update y offline_definition_update_verify_sig estén habilitados.

  3. Asegúrese de que definitions_update_source_uri es igual a offline_definition_url_configured.

    • definitions_update_source_uri es el origen desde el que se descargaron las firmas.
    • offline_definition_url_configured es el origen desde el que se deben descargar las firmas, la que se menciona en el archivo de configuración administrado.
  4. Ejecute una prueba de conectividad para confirmar que el punto de conexión puede llegar al servidor reflejado y a los servicios de Defender necesarios:

    mdatp connectivity test
    
  5. Si la conectividad se realiza correctamente, vuelva a intentar manualmente la actualización de la definición con el siguiente comando:

    mdatp definitions update