Настройка отправки событий в SIEM-систему

Для интеграции со сторонними сервисами, например SIEM-системами, требуется логировать события Rudesktop в Syslog в формате CEF (Common Event Format)

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

Настройка

Процесс настройки состоит из двух этапов: конфигурация системного логгера (rsyslog или syslog-ng) на прием событий от Rudesktop, и настройка самого Rudesktop для отправки логов

  1. Раскомментировать в файле /etc/rsyslog.conf строки для включения модуля приема TCP-соединений:

    module(load="imtcp")
    input(type="imtcp" port="514")
    
  2. Добавить в конец данного файла правило для перенаправления логов

    Базовый вариант (локальный прием):

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

    *.* @127.0.0.1
    

    Вариант с пересылкой на SIEM-сервер:

    Если необходимо пересылать события безопасности на удаленный SIEM-сервер, следует настроить фильтрацию. Например, чтобы отправлять все события, содержащие ключевое слово ADT (логи аудита Rudesktop), на сервер с IP-адресом 192.168.11.75 по протоколу UDP, используйте следующее правило:

    if ($msg contains 'ADT') then @192.168.11.75
    

    Примечание

    Символ @ означает отправку по протоколу UDP. Для отправки по TCP используйте @@.

    Важно

    Перед внесением изменений в файл /etc/rsyslog.conf рекомендуется сделать его резервную копию. Ошибка при редактировании файла может привести к некорректной работе системы.

  3. Перезапустить сервис rsyslog:

    systemctl restart rsyslog
    
  4. Внести в файл /etc/rudesktop/settings параметры подключения к Syslog-серверу (в данном случае — localhost, так как rsyslog принимает события локально):

    SYSLOG_HOST = 'localhost'
    SYSLOG_PORT = 514
    
  5. Перезагрузить сервер Rudesktop для применения настроек:

    rude restart
    

Дополнительная настройка

В примерах выше для rsyslog и syslog-ng была показана фильтрация по содержимому сообщения. Это особенно полезно, если вы хотите отправлять в SIEM только значимые события (например, только события аудита с тегом ADT), а не весь системный лог

Подсказка

Как это работает:

  • rsyslog: Строка if $msg contains 'ADT' then @192.168.11.75 означает, что если сообщение содержит подстроку ADT, оно будет отправлено на удаленный хост 192.168.11.75 по UDP

  • syslog-ng: Создается фильтр filter f_adt { message("ADT"); };, который отбирает сообщения с ключевым словом ADT. Затем отдельное правило log отправляет отфильтрованные сообщения на назначение d_siem

Таким образом, все события Rudesktop, содержащие ключевое слово ADT (которое добавляется в логи безопасности), будут автоматически дублироваться на ваш SIEM-сервер для централизованного сбора и корреляции, при этом продолжая записываться в локальные логи сервера