Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Внимание
Сбор журналов из множества устройств теперь поддерживается общим форматом событий (CEF) через AMA, Syslog через AMA или пользовательскими журналами через AMA-коннектор данных в Microsoft Sentinel. Дополнительные сведения см. в статье Найдите ваш соединитель данных Microsoft Sentinel.
Внимание
Прием данных с помощью подключаемого модуля вывода Logstash в настоящее время доступен в общедоступной предварительной версии. Эта функция предоставляется без соглашения об уровне обслуживания и не рекомендуется для использования в рабочей среде. Дополнительные сведения см. в статье Дополнительные условия использования Предварительных версий Microsoft Azure.
Примечание.
Более новая версия плагина Logstash может пересылать журналы из внешних источников данных в пользовательские и стандартные таблицы с помощью API на основе DCR. Новый подключаемый модуль обеспечивает полный контроль над выходной схемой, включая конфигурацию имен и типов столбцов.
С помощью подключаемого модуля выходных данных для движка сбора данных Logstash в Microsoft Sentinel можно отправлять журналы любого типа напрямую через Logstash в рабочую область Log Analytics в Microsoft Sentinel. Ваши журналы будут отправлены в пользовательскую таблицу, которую вы определяете с помощью выходного плагина. Эта версия подключаемого модуля использует API сбора данных HTTP.
Дополнительные сведения о работе с подсистемой сбора данных Logstash см. в статье Начало работы с Logstash.
Обзор
Архитектура и вводная информация
Подсистема Logstash состоит из трех компонентов.
- Плагины ввода: персонализированный сбор данных из различных источников.
- Подключаемые модули фильтрации: обработка и нормализация данных в соответствии с заданными критериями.
- Подключаемые модули вывода: настраиваемая отправка полученных и обработанных данных в различные места назначения.
Примечание.
Корпорация Майкрософт поддерживает только подключаемый модуль вывода Logstash, предоставляемый Microsoft Sentinel и описанный здесь. Текущей версией этого подключаемого модуля является версия 1.0.0, выпущенная 25 августа 2020 года. Можно открыть запрос в службу поддержки для сообщения о любых проблемах, связанных с подключаемым модулем вывода.
Корпорация Майкрософт не поддерживает сторонние подключаемые модули вывода Logstash для Microsoft Sentinel, а также любые другие подключаемые модули Logstash или компоненты любого типа.
Подключаемый модуль вывода Logstash в Microsoft Sentinel поддерживает только версии Logstash с 7.0 до 7.17.10 и с 8.0 до 8.9 и 8.11. При использовании Logstash 8 рекомендуется отключить ECS в конвейере.
Плагин вывода данных Microsoft Sentinel для Logstash отправляет данные, отформатированные как JSON, в рабочую область Log Analytics, используя REST API сборщика данных HTTP Log Analytics. Данные загружаются в пользовательские журналы.
- Узнайте больше о REST API Log Analytics.
- Дополнительные сведения о пользовательских журналах.
Развертывание подключаемого модуля вывода Microsoft Sentinel в Logstash
Шаг 1. Установка
Модуль вывода Microsoft Sentinel доступен в коллекции Logstash.
Следуйте инструкциям в документации Logstash Работа с подключаемыми модулями, чтобы установить подключаемый модуль microsoft-logstash-output-azure-loganalytics.
Если система Logstash не имеет доступа к Интернету, следуйте инструкциям в документации Logstash Управление подключаемыми модулями в автономном режиме, чтобы подготовить и использовать пакет автономных подключаемых модулей. (Для этого потребуется создать еще одну систему Logstash с доступом к Интернету.)
Шаг 2. Настройка
Используйте информацию в документации Logstash Структура файла конфигурации и добавьте в конфигурацию подключаемый модуль вывода Microsoft Sentinel со следующими ключами и значениями. (Правильный синтаксис файла конфигурации показан после таблицы.)
| Имя поля | Тип данных | Описание |
|---|---|---|
workspace_id |
строка | Введите уникальный идентификатор рабочей области (см. "Совет"). |
workspace_key |
строка | Введите уникальный идентификатор первичного ключа рабочей области (см. "Совет"). |
custom_log_table_name |
строка | Установите имя таблицы, в которую будут загружены журналы. Можно задать только одно имя таблицы для каждого подключаемого модуля вывода. Таблица журналов появится в Microsoft Sentinel в разделе Журналы, Таблицы, в категории Пользовательские журналы с суффиксом _CL. |
endpoint |
строка | Дополнительное поле. По умолчанию это конечная точка Log Analytics. Используйте это поле, чтобы задать альтернативную конечную точку. |
time_generated_field |
строка | Дополнительное поле. Это свойство переопределяет поле по умолчанию TimeGenerated в Log Analytics. Укажите имя поля метки времени в источнике данных. Данные в этом поле должны соответствовать формату ISO 8601 (YYYY-MM-DDThh:mm:ssZ). |
key_names |
array | Введите список выходных полей схемы Log Analytics. Каждый элемент списка должен быть заключен в одинарные кавычки, элементы разделены запятыми, а весь список заключен в квадратные скобки. См. пример ниже. |
plugin_flush_interval |
число | Дополнительное поле. Задайте максимальный интервал (в секундах) между передачами сообщений в Log Analytics. Значение по умолчанию равно 5. |
amount_resizing |
boolean | Верно или неверно. Включите или отключите механизм автоматического масштабирования, который регулирует размер буфера сообщений в соответствии с объемом полученных данных журнала. |
max_items |
число | Дополнительное поле. Применяется только в том случае, если для amount_resizing задано значение false, и позволяет ограничить размер (количество записей) буфера сообщений. Значение по умолчанию — 2000. |
azure_resource_id |
строка | Дополнительное поле. Определяет идентификатор ресурса Azure, в котором располагаются данные. Значение идентификатора ресурса особенно необходимо, если используется RBAC в контексте ресурса для предоставления доступа только к определенным данным. |
Совет
- Идентификатор рабочей области и первичный ключ можно найти в ресурсе рабочей области в разделе Управление агентами.
- Однако поскольку хранение учетных данных и другой конфиденциальной информации в виде открытого текста в файлах конфигурации не соответствует оптимальным методам обеспечения безопасности, настоятельно рекомендуется использовать хранилище ключей Logstash для безопасного включения идентификатора рабочей области и первичного ключа рабочей области в конфигурацию. Для просмотра инструкций см. документацию Elastic.
Примеры конфигураций
Здесь приведено несколько примеров конфигурации, в которых используются разные параметры.
Базовая конфигурация, в которой используется канал ввода filebeat:
input { beats { port => "5044" } } filter { } output { microsoft-logstash-output-azure-loganalytics { workspace_id => "<your workspace id>" workspace_key => "<your workspace key>" custom_log_table_name => "tableName" } }Базовая конфигурация, в которой используется канал ввода tcp:
input { tcp { port => "514" type => syslog #optional, will effect log type in table } } filter { } output { microsoft-logstash-output-azure-loganalytics { workspace_id => "<your workspace id>" workspace_key => "<your workspace key>" custom_log_table_name => "tableName" } }Расширенная конфигурация:
input { tcp { port => 514 type => syslog } } filter { grok { match => { "message" => "<%{NUMBER:PRI}>1 (?<TIME_TAG>[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}T[0-9]{1,2}:[0-9]{1,2}:[0-9]{1,2})[^ ]* (?<HOSTNAME>[^ ]*) %{GREEDYDATA:MSG}" } } } output { microsoft-logstash-output-azure-loganalytics { workspace_id => "<WS_ID>" workspace_key => "${WS_KEY}" custom_log_table_name => "logstashCustomTable" key_names => ['PRI','TIME_TAG','HOSTNAME','MSG'] plugin_flush_interval => 5 } }Более расширенная конфигурация для анализа пользовательской метки времени и строки JSON из неструктурированных текстовых данных и записи выбранного набора полей в Log Analytics с извлеченным меткой времени:
# Example log line below: # Mon Nov 07 20:45:08 2022: { "name":"_custom_time_generated", "origin":"test_microsoft", "sender":"[email protected]", "messages":1337} # take an input input { file { path => "/var/log/test.log" } } filter { # extract the header timestamp and the Json section grok { match => { "message" => ["^(?<timestamp>.{24}):\s(?<json_data>.*)$"] } } # parse the extracted header as a timestamp date { id => 'parse_metric_timestamp' match => [ 'timestamp', 'EEE MMM dd HH:mm:ss yyyy' ] timezone => 'Europe/Rome' target => 'custom_time_generated' } json { source => "json_data" } } # output to a file for debugging (optional) output { file { path => "/tmp/test.txt" codec => line { format => "custom format: %{message} %{custom_time_generated} %{json_data}"} } } # output to the console output for debugging (optional) output { stdout { codec => rubydebug } } # log into Log Analytics output { microsoft-logstash-output-azure-loganalytics { workspace_id => '[REDACTED]' workspace_key => '[REDACTED]' custom_log_table_name => 'RSyslogMetrics' time_generated_field => 'custom_time_generated' key_names => ['custom_time_generated','name','origin','sender','messages'] } }Примечание.
Откройте репозиторий GitHub плагина вывода, для более подробной информации о его внутренней работе, конфигурации и настройках производительности.
Шаг 3. Перезапуск Logstash
Шаг 4. Просмотр входящих журналов в Microsoft Sentinel
Убедитесь, что сообщения отправляются в плагин вывода.
В меню навигации Microsoft Sentinel нажмите на Журналы. В разделе Таблицы разверните категорию Пользовательские журналы. Найдите и выберите имя указанной таблицы (с суффиксом
_CL) в конфигурации.
Чтобы просмотреть записи в таблице, запросите таблицу, используя имя таблицы как схему.
Мониторинг журналов аудита подключаемого модуля вывода
Чтобы отслеживать связь и активность подключаемого модуля вывода Microsoft Sentinel, активируйте соответствующий файл журнала Logstash. См. документацию Структура каталога Logstash для определения расположения файла журнала.
Если в этом файле журнала нет никаких данных, сгенерируйте и отправьте несколько событий локально (через подключаемые модули ввода и фильтрации), чтобы убедиться, что подключаемый модуль вывода получает данные. Microsoft Sentinel предоставляет поддержку только для проблем, связанных с подключаемым модулем вывода.
Следующие шаги
В этом документе приведена информация о том, как использовать Logstash для подключения внешних источников данных к Microsoft Sentinel. Ознакомьтесь с дополнительными сведениями о Microsoft Sentinel в следующих статьях:
- Узнайте, как отслеживать свои данные и потенциальные угрозы.
- Узнайте, как приступить к обнаружению угроз с помощью Microsoft Sentinel.