Настройка автономных обновлений аналитики безопасности для Microsoft Defender для конечной точки на Linux

Как работают автономные обновления аналитики безопасности

В этой статье описывается настройка автономных обновлений аналитики безопасности в Defender для конечной точки на Linux. Эта возможность позволяет обновлять средства безопасности (также называемые определениями или сигнатурами) на Linux устройствах, которые имеют ограниченный доступ к Интернету или не имеют доступа к интернету. В этой конфигурации используется локальный сервер размещения, называемый сервером зеркало, который подключается к облаку Майкрософт для скачивания обновлений аналитики безопасности. Другие устройства Linux извлекает эти обновления с сервера зеркало через предопределенные интервалы.

Преимущества использования автономных обновлений аналитики безопасности

В числе основных преимуществ можно назвать следующие:

  • Ваша группа безопасности может контролировать частоту скачивания подписей на локальном сервере и частоту, с которой конечные точки извлекали подписи с локального сервера, и управлять ими.
  • У вас есть дополнительный уровень защиты и контроля, так как скачанные сигнатуры можно протестировать на тестовом устройстве, прежде чем они будут распространены на весь парк.
  • Требуется меньшая пропускная способность сети, так как только один локальный сервер получает последние обновления из облака Майкрософт от имени всего парка.
  • Сервер зеркало может работать под управлением Windows, Mac или Linux, и вам не нужно устанавливать Defender для конечной точки на этом сервере.
  • Вы получаете самую актуальную антивирусную защиту, так как подписи всегда скачиваются вместе с последней совместимой антивирусной подсистемой.
  • Старые версии подписей (n-1) перемещаются в папку резервного копирования на сервере зеркало в каждой итерации. Если возникла проблема с последними обновлениями, вы можете извлечь версию сигнатуры n-1 из папки резервного копирования на устройства.
  • В редких случаях при сбое автономного обновления можно настроить резервный вариант для получения обновлений по сети из облака Майкрософт.

Как работает автономное обновление аналитики безопасности

  • Вы настраиваете сервер зеркало, который является локальным веб-сервером или сервером NFS, доступным в облаке Майкрософт.
  • Подписи скачиваются из облака Майкрософт на этом зеркало сервере путем выполнения скрипта с помощью задания cron или планировщика задач на локальном сервере.
  • Linux конечные точки, на которых запущен Defender для конечной точки, извлекает скачанные сигнатуры с сервера зеркало через предопределенный интервал времени.
  • Подписи, полученные на Linux устройствах с локального сервера, сначала проверяются перед загрузкой в антивирусную подсистему.
  • Чтобы запустить и настроить процесс обновления, можно обновить json-файл управляемой конфигурации на Linux устройствах.
  • Состояние обновлений можно просмотреть в интерфейсе командной строки mdatp.

Схема процесса на зеркальном сервере для скачивания обновлений аналитики безопасности

Рис. 1. Схема процесса на сервере зеркало для скачивания обновлений аналитики безопасности

Схема процесса в конечной точке Linux для обновлений аналитики безопасности

Рис. 2. Схема процесса в конечной точке Linux для обновлений аналитики безопасности

Сервер зеркало может запускать любую из следующих операционных систем:

  • Linux (любой вкус)
  • Windows (любая версия)
  • Mac (любая версия)

Предварительные условия

  • На конечных точках Linux необходимо установить Defender для конечной точки или более поздней версии101.24022.0001.

  • Конечные точки Linux должны иметь подключение к серверу зеркало.

  • Конечная точка Linux должна работать под управлением любого дистрибутива, поддерживаемого Defender для конечной точки. (См. раздел Поддерживаемые дистрибутивы Linux.)

  • Сервер зеркало может быть сервером HTTP/HTTPS или сервером общей сети, например сервером NFS.

  • Сервер зеркало должен иметь доступ к следующим URL-адресам:

    • https://github.com/microsoft/mdatp-xplat.git
    • https://go.microsoft.com/fwlink/?linkid=2144709
  • Сервер зеркало должен поддерживать bash или PowerShell.

  • Для сервера зеркало требуются следующие минимальные системные спецификации:

    Ядро ЦП ОЗУ Бесплатный диск Своп
    2 ядра (предпочтительное 4 ядра) 1 ГБ min (предпочтительно 4 ГБ) 2 ГБ Зависимая от системы

    Примечание.

    Эта конфигурация может отличаться в зависимости от количества обслуживаемых запросов и загрузки, которую должен обработать каждый сервер.

Настройка сервера зеркало

Примечание.

  • Управление зеркальным сервером и владение им лежит исключительно на клиенте, так как он находится в частной среде клиента.
  • На зеркальный сервер не требуется устанавливать Defender для конечной точки.

Получение скрипта загрузчика аналитики безопасности в автономном режиме

Корпорация Майкрософт размещает скрипт автономного загрузчика аналитики безопасности в этом репозитории GitHub.

Чтобы получить скрипт загрузчика, выполните следующие действия:

Вариант 1. Клонирование репозитория (предпочтительный)

  1. Установите Git на сервере зеркало.

  2. Перейдите в каталог, в котором вы хотите клонировать репозиторий.

  3. Выполните следующую команду: git clone https://github.com/microsoft/mdatp-xplat.git

Вариант 2. Скачивание zip-файла

  1. Скачайте zip-файл.

  2. Скопируйте скачанный файл в папку, в которой вы хотите сохранить скрипт.

  3. Извлеките zip-папку.

  4. Запланируйте задачу или задание cron , чтобы регулярно обновлять репозиторий или скачанный ZIP-файл до последней версии.

Структура локальных каталогов после клонирования репозитория или скачивания zip-файла

После клонирования репозитория или скачивания zip-файла структура локальных каталогов должна выглядеть следующим образом:

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

Примечание.

Ознакомьтесь с файлом, README.md чтобы понять, как использовать скрипт.

Файл settings.json состоит из нескольких переменных, которые пользователь может настроить для определения выходных данных выполнения скрипта.

Имя поля Значение Описание
downloadFolder string Сопоставляется с расположением, в котором скрипт скачивает файлы.
downloadLinuxUpdates логический Если задано значение true, скрипт скачивает Linux определенные обновления в downloadFolder.
logFilePath string Настраивает журналы диагностики в заданной папке. Этот файл можно предоставить корпорации Майкрософт для отладки скрипта при возникновении каких-либо проблем.
downloadMacUpdates логический Скрипт скачивает обновления, относящиеся к Mac, в downloadFolder.
downloadPreviewUpdates логический Скачивает предварительную версию обновлений, доступных для конкретной ОС.
backupPreviousUpdates логический Позволяет скрипту копировать предыдущее обновление в папку _back , а новые обновления скачиваются в downloadFolder.

Выполнение скрипта загрузчика аналитики безопасности в автономном режиме

Чтобы вручную выполнить скрипт загрузчика, настройте параметры в файле согласно settings.json описанию в предыдущем разделе и используйте одну из следующих команд на основе ОС сервера зеркало:

  • Bash:

    ./xplat_offline_updates_download.sh
    
  • Powershell:

    ./xplat_offline_updates_download.ps1
    

Примечание.

Запланируйте задание cron для выполнения этого сценария, чтобы скачивать последние обновления аналитики безопасности на сервере зеркало через регулярные интервалы.

Размещение автономных обновлений аналитики безопасности на сервере зеркало

После выполнения скрипта последние подписи скачиваются в папку, настроенную в settings.json файле (updates.zip).

После скачивания ZIP-файла сигнатур для размещения можно использовать сервер зеркало. Сервер зеркало можно разместить с помощью любого сервера HTTP/HTTPS/сетевого ресурса или локальной или удаленной точки подключения.

После размещения скопируйте абсолютный путь к размещенного сервера (до каталога и не включая его arch_* ).

Примечание.

Например, если скрипт загрузчика выполняется с downloadFolder=/tmp/wdav-updateпомощью , а путь размещен на HTTP-сервере (www.example.server.com:8000), /tmp/wdav-update то соответствующий URI будет: www.example.server.com:8000/linux/production/ (убедитесь, что в каталоге есть arch_* каталоги).

Можно также использовать абсолютный путь к каталогу (локальная или удаленная точка подключения). Например, если файлы скачиваются скриптом в каталог /tmp/wdav-update, то соответствующий универсальный код ресурса (URI) будет:/tmp/wdav-update/linux/production .

После настройки сервера зеркало необходимо распространить этот URI на конечные точки Linux, как offlineDefinitionUpdateUrl в управляемой конфигурации, как описано в следующем разделе.

Настройка конечных точек

Функцию автономных обновлений аналитики безопасности можно настроить двумя способами:

  • Управление параметрами безопасности на портале Defender или Intune позволяет централизованно управлять параметрами и настраивать их для группы устройств.
  • С помощью управляемого JSON-файла: позволяет настраивать параметры вручную или с помощью сторонних средств управления, таких как Chef, Ansible и другие.
  1. На портале Defender перейдите к разделу Политикибезопасности конечных точекуправление>конфигурацией конечных> точек и выберите Создать политику.
  2. В мастере создания политики выберите Linux в качестве платформы, Microsoft Defender Антивирусная программа в качестве шаблона. а затем выберите Создать политику.
  3. Укажите имя и описание политики, а затем нажмите кнопку Далее.

На шаге Параметры конфигурации вы можете найти параметры конфигурации для функции автономных обновлений аналитики безопасности в разделах Антивирусная подсистема и Параметры защиты, предоставляемые облаком .

Setting Описание
Включение автономного обновления аналитики безопасности Этот параметр включает функцию автономного обновления аналитики безопасности в конечных точках Linux. При включении этого параметра становятся доступны следующие два параметра. Убедитесь, что автоматические обновления аналитики безопасности также включены.
Резервное обновление аналитики безопасности в автономном режиме в облаке Если задано значение True, конечная точка попытается получить обновления сигнатуры из облака Майкрософт, если ей не удается получить их с сервера зеркало.
АВТОНОМНЫЙ URL-адрес или каталог обновления аналитики безопасности Этот параметр задает URL-адрес или путь к каталогу сервера зеркало, на котором размещаются обновления аналитики безопасности. URL-адрес должен быть в формате http://<mirror_server_address>/linux/production/ (если используется http/HTTPS-сервер) или путь к каталогу (при использовании общей сетевой папки или локальной или удаленной точки подключения). Дополнительные сведения см. в статье Размещение автономных обновлений аналитики безопасности на сервере зеркало.
Интервал времени обновления аналитики безопасности По умолчанию конечные точки Linux извлекает обновления подписи с сервера зеркало каждые 8 часов (28800 секунд). Используйте этот параметр, если вы хотите указать другой интервал. Укажите интервал в секундах.

Проверка конфигурации

Чтобы проверить правильность применения параметров к конечным точкам Linux, выполните следующую команду:

mdatp health --details definitions

Пример выходных данных будет выглядеть следующим образом:

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]

Активация автономных обновлений аналитики безопасности

Автоматическое обновление

  • Если для антивирусной подсистемы задано значениеreal_time, а полям automaticDefinitionUpdateEnabled и offline_definition_update в управляемом json задано значение true, то обновления аналитики безопасности в автономном режиме активируются автоматически через периодические интервалы.
  • По умолчанию этот периодический интервал составляет 8 часов. Но его можно настроить, задав definitionUpdatesInterval параметр в управляемом файле JSON.

Обновление вручную

  • Чтобы вручную активировать автономное обновление аналитики безопасности для скачивания подписей с сервера зеркало в конечных точках Linux, выполните следующую команду:

    mdatp definitions update
    

Проверка состояния обновления

  • После запуска автономных обновлений аналитики безопасности с помощью автоматического или ручного метода убедитесь, что обновление прошло успешно, выполнив команду : mdatp health --details --definitions.

  • Проверьте следующие поля:

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

Устранение неполадок и диагностика

Если обновления завершаются сбоем, зависают или не запускаются, выполните следующие действия для устранения неполадок:

  1. Проверьте состояние автономных обновлений аналитики безопасности с помощью следующей команды:

    mdatp health --details definitions
    

    Найдите сведения в definitions_update_fail_reason разделе.

  2. Убедитесь, что offline_definition_update и offline_definition_update_verify_sig включены.

  3. Убедитесь, что definitions_update_source_uri значение равно offline_definition_url_configured.

    • definitions_update_source_uri — это источник, из которого были загружены подписи.
    • offline_definition_url_configured — это источник, из которого следует скачать сигнатуры, упомянутый в управляемом файле конфигурации.
  4. Попробуйте выполнить проверку подключения, чтобы проверка, если зеркало сервер доступен с узла:

    mdatp connectivity test
    
  5. Попробуйте запустить обновление вручную с помощью следующей команды:

    mdatp definitions update
    

См. также