Немезида ВАФ можно интегрировать с внешними SIEM-системами. Для этого первым этапом настраиваем, с помощью Rsyslog
, сбор событий со всех серверов, где установлен Немезида ВАФ.
Тариф Enterprise позвоялет организовать централизованный сбор, хранение и обработку журналов всех компонентов Немезида ВАФ, используя возможности Nemesida WAF API. Для тарифов для тарифов Light и Business сбор событий и их централизованную отправку на удаленный сервер можно настроить самостоятельно, используя стандартные средства, например,
Rsyslog
.
Rsyslog
– это мощная, безопасная и высокопроизводительная система обработки логов, принимающая данные из различных источников (систем и приложений). Работает по модели «клиент-серевер», поэтому ее можно настроить как клиент или сервер для централизованного ведения журналов других серверов, сетевых устройств и удаленных приложений. Сегодня мы настроим взаимодействие двух серверов (клиента и сервера) на централизованное хранение логов модулей Немезида ВАФ.
Сервер с IP-адресом
10.0.0.1
используется для примера в качестве сервера централизованного хранения событий.
Настройка сервера централизованного сбора событий
Чтобы настроить rsyslog
как сетевой централизованный сервер ведения логов, нужно в файле /etc/rsyslog.conf
установить протоколы (UDP, TCP или оба), которые будут использоваться для приема удаленных сообщений, системных логов, а также прослушиваемые порты.
Для прослушивания UDP:
module(load="imudp") input(type="imudp" port="514")
Для прослушивания TCP:
module(load="imtcp") input(type="imtcp" port="514")
Указываем расположение файла, куда будут сохраняться события, собранные с удаленного сервера:
$template RemoteLogs,"/var/log/rsyslog/%HOSTNAME%/%PROGRAMNAME%.log" local6.* ?RemoteLogs & ~
Параметры %HOSTNAME%
и %PROGRAMNAME%.log
позволяют создавать директории с логами под каждый удаленный сервер, с которого поступают события.
Настройка удаленного сервера отправки данных
В файле /etc/rsyslog.conf
Rsyslog во время работы.
Для прослушивания UDP:
module(load="imudp") input(type="imudp" port="514")
Для прослушивания TCP:
module(load="imtcp") input(type="imtcp" port="514")
Nginx
Для сбора событий с уровнями CRITICAL
и ALERT
из журналов ошибок Nginx (файлы /var/log/nginx/*error.log
) добавляем следующие строки в файл виртуального хоста Nginx:
server { ... error_log syslog:server=10.0.0.1:514,facility=local6,tag=nginx; ... }
В Nginx, для журналов
error.log
, не поддерживается вывод событий вsyslog
с необходимым уровнем приоритета, можно указать только пороговый, начиная с которого события будут передаваться вsyslog
. По умолчанию установлен уровеньERROR
.
Nemesida AI MLA
Для модуля Nemesida AI MLA создаем конфигурационный файл /etc/rsyslog.d/nwaf/mla.conf
, куда добавляем следующие строки:
$ModLoad imfile $InputFileName /var/log/nwaf/mla.log $InputFileTag mla: $InputFileStateFile mla_log $InputFileSeverity error $InputFileFacility local6 $InputRunFileMonitor 10.0.0.1 local6.* @@10.0.0.1:514
Nemesida WAF Update
Для сервиса Nemesida WAF Update создаем конфигурационный файл /etc/rsyslog.d/nwaf/update.conf
, куда добавляем следующие строки:
$ModLoad imfile $InputFileName /var/log/nwaf/nwaf_update.log $InputFileTag update: $InputFileStateFile update_log $InputFileSeverity error $InputFileFacility local6 $InputRunFileMonitor 10.0.0.1 local6.* @@10.0.0.1:514
Nemesida AI MLC
Для модуля Nemesida AI MLC создаем конфигурационный файл /etc/rsyslog.d/nwaf/mlc.conf
, куда добавляем следующие строки:
$ModLoad imfile $InputFileName /var/log/nwaf/mlc.log $InputFileTag mlc: $InputFileStateFile mlc_log $InputFileSeverity error $InputFileFacility local6 $InputRunFileMonitor 10.0.0.1 local6.* @@10.0.0.1:514
Nemesida WAF Scanner
Для модуля Nemesida WAF Scanner создаем конфигурационный файл /etc/rsyslog.d/nwaf/nws.conf
, куда добавляем следующие строки:
$ModLoad imfile $InputFileName /var/log/nwaf/nws.log $InputFileTag nws: $InputFileStateFile nws_log $InputFileSeverity error $InputFileFacility local6 $InputRunFileMonitor 10.0.0.1 local6.* @@10.0.0.1:514
Все созданные файлы необходимо задействовать в основном конфигурационном файле /etc/rsyslog.conf
:
$IncludeConfig /etc/rsyslog.d/nwaf/*.conf
Для настройки отправки событий на удаленный сервер необходимо указать IP-адрес и порт назначения, используя конструкцию: @@10.0.0.1:514
.