Прием сообщений системного журнала и CEF для Microsoft Sentinel с помощью агента мониторинга Azure

В этой статье показано, как использовать соединители Syslog через AMA и Common Event Format (CEF) через AMA для фильтрации и приема сообщений Syslog и CEF с компьютеров под управлением Linux, сетевых устройств и средств безопасности. Перед началом убедитесь, что у вас есть необходимые права, агенты и настройка пересылки логов, как описано в Пререквизитах. Дополнительные сведения об этих соединителях данных см. в статье Системный журнал и общий формат событий (CEF) через соединители AMA для Microsoft Sentinel.

Примечание.

Аналитика контейнеров поддерживает автоматический сбор событий системного журнала с Linux узлов в кластерах AKS. Дополнительные сведения см. в статье Сбор системных журналов с помощью Container Insights.

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

Прежде чем приступить к работе, ознакомьтесь со следующими предварительными требованиями к Microsoft Sentinel, серверу пересылки журналов и безопасности компьютера, чтобы убедиться, что необходимые ресурсы настроены и назначены соответствующие разрешения, как описано в разделах Предварительные требования Microsoft Sentinel, Предварительные требования к серверу пересылки журналов и Предварительные требования к безопасности компьютера.

предварительные требования Microsoft Sentinel

Установите соответствующее решение Microsoft Sentinel и убедитесь, что у вас есть разрешения на выполнение действий, описанных в этой статье.

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

Если вы собираете сообщения из средства пересылки журналов, действуют следующие предварительные требования.

Примечание.

При развертывании AMA в масштабируемом наборе виртуальных машин (VMSS) настоятельно рекомендуется использовать подсистему балансировки нагрузки, которая поддерживает метод циклического перебора, чтобы обеспечить распределение нагрузки между всеми развернутыми экземплярами.

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

Настройте безопасность компьютера в соответствии с политикой безопасности вашей организации. Например, настройте сеть в соответствии с политикой безопасности корпоративной сети и измените порты и протоколы в управляющей программе в соответствии с требованиями. Чтобы улучшить конфигурацию безопасности компьютера, защитите виртуальную машину в Azure или ознакомьтесь с рекомендациями по обеспечению безопасности сети.

Если устройства отправляют журналы системного журнала и CEF по протоколу TLS, так как, например, средство пересылки журналов находится в облаке, необходимо настроить управляющая программа системного журнала (rsyslog или syslog-ng) для обмена данными по протоколу TLS. Дополнительные сведения см. в разделе:

Настройка соединителя данных

Процесс настройки системного журнала через AMA или общий формат событий (CEF) через соединители данных AMA включает следующие действия.

  1. Установите агент мониторинга Azure и создайте правило сбора данных (DCR) с помощью любого из следующих методов:
  2. Если вы собираете журналы с других компьютеров с помощью средства пересылки журналов, запустите сценарий установки в средстве пересылки журналов, чтобы настроить управляемую программу системного журнала для прослушивания сообщений с других компьютеров и открыть необходимые локальные порты.

Выберите соответствующую вкладку для получения инструкций.

Используйте портал Azure или Defender для создания правила сбора данных (DCR) и установите Azure Monitor Agent на ваш пересылчик журналов.

Создание правила сбора данных (DCR)

Для начала откройте в Microsoft Sentinel соединитель данных Syslog через AMA или формат общих событий (CEF) через AMA и создайте правило сбора данных (DCR).

  1. Для Microsoft Sentinel в портал Azure в разделе Конфигурация выберите Соединители данных.
    Для Microsoft Sentinel в портале Defender выберите Microsoft Sentinel>Конфигурация>Соединители данных.

  2. Для syslog введите Syslog в поле Поиска . В результатах выберите соединитель Syslog через AMA.
    Для параметра CEF введите CEF в поле Поиска . В результатах выберите коннектор Common Event Format (CEF) через AMA.

  3. Выберите Открыть страницу соединителя в области сведений.

  4. В области Конфигурация выберите +Создать правило сбора данных.

    Снимок экрана, на котором показана страница соединителя Syslog через AMA.

    Снимок экрана: страница соединителя CEF через AMA.

  5. На вкладке Базовый :

    • Введите имя DCR.
    • Выберите свою подписку.
    • Выберите группу ресурсов, в которой вы хотите найти DCR.

    Снимок экрана: сведения о DCR на вкладке

  6. Выберите Далее: Ресурсы >.

Определение ресурсов виртуальной машины

На вкладке "Ресурсы" выберите компьютеры, на которых требуется установить AMA. Для выполнения этой процедуры выберите компьютер, используемый для пересылки журналов. Если средство пересылки журналов не отображается в списке, в нем может не быть установлен агент Azure Connected Machine.

  1. Используйте доступные фильтры или поле поиска, чтобы найти виртуальную машину средства пересылки журналов. Разверните подписку в списке, чтобы просмотреть группы ресурсов, а затем группу ресурсов, чтобы увидеть виртуальные машины.

  2. Выберите виртуальную машину сервера пересылки журналов, на которой требуется установить AMA. Флажок появляется рядом с именем виртуальной машины при наведении указателя мыши на него.

    Снимок экрана: выбор ресурсов при настройке DCR.

  3. Просмотрите изменения и нажмите кнопку Далее: собрать >.

Выберите категории и уровни серьёзности

Имейте в виду, что использование одной и той же возможности для сообщений системного журнала и CEF может привести к дублированию приема данных. Дополнительные сведения см. в разделе Предотвращение дублирования приема данных.

  1. На вкладке Collect выберите минимальный уровень журналирования для каждого средства. При выборе уровня ведения журнала Microsoft Sentinel собирает журналы выбранного уровня и других уровней с более высокой серьезностью. Например, если выбрать LOG_ERR, Microsoft Sentinel собирает журналы для уровней LOG_ERR, LOG_CRIT, LOG_ALERT и LOG_EMERG.

    Снимок экрана: выбор уровней журнала при настройке DCR.

  2. Просмотрите выбранные варианты и выберите Далее: Просмотр и создание.

Проверьте и создайте правило

После завершения всех вкладок просмотрите введенные данные и создайте правило сбора данных.

  1. На вкладке Просмотр и создание выберите Создать.

    Снимок экрана: просмотр конфигурации DCR и ее создание.

    Соединитель устанавливает агент мониторинга Azure на компьютерах, выбранных при создании DCR.

  2. Проверьте уведомления на портале Azure или в Microsoft Defender, чтобы узнать, когда создается DCR и устанавливается агент.

  3. Выберите Обновить на странице коннектора, чтобы DCR отобразился в списке.

Запуск скрипта установки

Если вы используете средство пересылки логов, настройте демон syslog на прием сообщений от других компьютеров и откройте необходимые локальные порты.

  1. На странице соединителя скопируйте командную строку, которая отображается в разделе Выполните следующую команду, чтобы установить и применить сборщик CEF:.

    Снимок экрана: командная строка на странице соединителя.

    Или скопируйте его отсюда:

    sudo wget -O Forwarder_AMA_installer.py https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/DataConnectors/Syslog/Forwarder_AMA_installer.py&&sudo python Forwarder_AMA_installer.py
    
  2. Войдите на компьютер пересылки журналов, на котором установлена AMA.

  3. Вставьте команду установки, скопированную на странице соединителя, чтобы запустить скрипт установки.
    Скрипт настраивает демон rsyslog или syslog-ng на использование требуемого протокола и перезапускает демон. Скрипт открывает порт 514 для прослушивания входящих сообщений по протоколам UDP и TCP. Чтобы изменить этот параметр, обратитесь к файлу конфигурации управляющей программы syslog в соответствии с типом управляющей программы, запущенной на компьютере:

    • rsyslog: /etc/rsyslog.conf;
    • syslog-ng: /etc/syslog-ng/syslog-ng.conf.

    Если вы используете Python 3 и он не задан в качестве команды по умолчанию на компьютере, замените python3 на python в вставленной команде. См. Предварительные требования к средству пересылки журналов.

    Примечание.

    Чтобы избежать сценариев с полным диском , в которых агент не может работать, рекомендуется настроить конфигурацию syslog-ng или rsyslog не для хранения ненужных журналов. Ситуация с переполнением диска нарушает работу установленного AMA. Дополнительные сведения см. в разделе RSyslog или Syslog-ng.

  4. Проверьте состояние службы.

    Проверьте состояние службы AMA на вашем сервере пересылки журналов:

    sudo systemctl status azuremonitoragent.service
    

    Проверьте состояние службы rsyslog:

    sudo systemctl status rsyslog.service
    

    Для сред syslog-ng проверьте:

    sudo systemctl status syslog-ng.service
    

Настройте устройство безопасности или аппаратно-программный комплекс безопасности

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

Для получения дополнительной информации о вашем приборе или устройстве обратитесь к поставщику решения.

Тестирование соединителя

Убедитесь, что сообщения журнала с вашего компьютера под управлением Linux, а также с устройств и комплексов безопасности поступают в Microsoft Sentinel.

  1. Чтобы убедиться, что управляющая программа системного журнала прослушивает необходимый порт UDP и что AMA готова получать журналы на сервере пересылки Linux, выполните следующую команду, чтобы отобразить активные прослушиватели и связанные с ними порты:

     netstat -lnptv
    

    Вы должны увидеть, что демон rsyslog или syslog-ng прослушивает порт 514.

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

    sudo tcpdump -i any port 514 or 28330 -A -vv &
    
  3. После завершения проверки остановите .tcpdump Введите fgи нажмите клавиши CTRL+C.

Отправка тестовых сообщений

Чтобы отправить демонстрационные сообщения, выполните одно из следующих действий.

  1. Используйте служебную nc программу netcat. В этом примере служебная программа считывает данные, передаваемые через команду echo, при отключённом параметре newline. Затем служебная программа записывает данные на UDP-порт 514 на локальном узле без истечения времени ожидания. Чтобы выполнить служебную программу netcat, может потребоваться установить другой пакет.

    echo -n "<164>CEF:0|Mock-test|MOCK|common=event-format-test|end|TRAFFIC|1|rt=$common=event-formatted-receive_time" | nc -u -w0 localhost 514
    
  2. Используйте команду logger. В этом примере сообщение записывается в средство local 4 с уровнем серьезности Warning для порта 514 на локальном узле в формате CEF RFC. Флаги -t и --rfc3164 используются для соответствия ожидаемому формату RFC.

    logger -p local4.warn -P 514 -n 127.0.0.1 --rfc3164 -t CEF "0|Mock-test|MOCK|common=event-format-test|end|TRAFFIC|rt=$common=event-formatted-receive_time"
    

    Проверьте приём данных Cisco ASA с помощью следующей команды:

    echo -n "<164>%ASA-7-106010: Deny inbound TCP src inet:1.1.1.1 dst inet:2.2.2.2" | nc -u -w0 localhost 514
    

    После выполнения этих команд сообщения поступают на порт 514 и перенаправяются на порт 28330.

  3. После отправки тестовых сообщений отправьте запрос к рабочей области Log Analytics. Для отображения журналов в рабочей области может потребоваться до 20 минут.

Для журналов CEF:

CommonSecurityLog
| where TimeGenerated > ago(1d)
| where DeviceProduct == "MOCK"

Для журналов Cisco ASA:

CommonSecurityLog
| where TimeGenerated > ago(1d)
| where DeviceVendor == "Cisco"
| where DeviceProduct == "ASA"

Дополнительные сведения об устранении неполадок

Если вы не видите трафик на порту 514 или тестовые сообщения не принимаются, инструкции по устранению неполадок см. в статье Устранение неполадок с Syslog и CEF через соединители AMA для Microsoft Sentinel.