Настройка Syslog-ng на Unix системах
Информация, приведенная на данной странице, является разработкой команды pre-sales и/или community KUMA и НЕ является официальной рекомендацией вендора.
Для начала необходимо проврить установлена нужная служба auditd,Syslog-ng, посмотрим стактивнус службые правила:
auditctlsystemctl -lstatus syslog-ng
В случае наличотсутствия подослужбы ной ошибки:
Необходимо установить следующие пакеты:
apt-get install auditd audispd-pluginssyslog-ng
РВ случае если служба не запущена:
sudo systemctl start syslog-ng
sudo systemctl enable syslog-ng
Настройка источника
Далее на источнике нужно создать файл с параметрами работы службы и изменить конфигурационный файл службы Syslog-ng.
Сначала создается файл с параметрами работы службы:
Создайте файл /etc/syslog-ng/1-unixLogging.conf
, например с помощью nano:
nano /etc/syslog-ng/1-unixLogging.conf
Добавьте в файл строки для отправки по UDP на порт 5140:
filter unix_filter {
not facility(cron, lpr, mail, news, uucp);
};
destination to_kuma_udp {
udp("<IP_KUMA_Collector>" port(5140));
};
log {
source(s_src);
filter(unix_filter);
destination(to_kuma_udp);
};
Добавьте в файл строки для отправки по TCP на порт 5140:
filter unix_filter {
not facility(cron, lpr, mail, news, uucp);
};
destination to_kuma_tcp {
tcp("<IP_KUMA_Collector>" port(5140) log-fifo-size(1000));
};
log {
source(s_src);
filter(unix_filter);
destination(to_kuma_tcp);
flags(flow-control);
};
Чтобы настроить конфигурационный файл службы с использованием настроек сделанных выше, отредактируйте файл /etc/syslog-ng/syslog-ng.conf
, добавив в файл строку:
@include "1-unixLogging.conf"
Перезапустите службу syslog-ng:
systemctl restart syslog-ng
Проверка отправки сообщения
Для проверки получения и отправки сообщения можно воспользоваться командой с тестовым сообщендуием:
logger "testTest"
Это сообщение должно появиться в системном журнале, например /var/log/messages
:
Дополнительная информация
Обычно в конфиграции /etc/syslog-ng/syslog-ng.conf в s_src содержится 2 типа журналов
source s_src {
system(); # системный журнал
internal(); # внутренние сообщения журнала syslog-ng
};
Для задания шаблона сообщения можно использовать следующие правила для аудитае:
wgettemplate -OLogglyFormat audit.rules{ https://raw.githubusercontent.com/Neo23x0/auditd/master/audit.rules
template("<${PRI}>1 ${ISODATE} ${HOST} ${PROGRAM} ${PID} ${MSGID} [TOKEN@41058 tag=\"TAG\" ] $MSG\n");
template_escape(no);
};
Загрузить
destinationфайлd_logglyс{правиламиtcp("logs-01.loggly.com"аудитаport(514)сtemplate(LogglyFormat));портала box.kaspersky.com -тут.
Другие правила аудита и полезные материалы по AuditD можно найти -тут.
Далее нужно переместить правила в директорию по умолчанию и применить правила перезапуском сервиса:
cp audit.rules /etc/audit/rules.d/ systemctl restart auditd.service
Для проверки убедитесь что следующий лог наполняется информацией:};
tail -f /var/log/audit/audit.log