Syslog-NG: Установка и настройка

Инструкция по установке и первичной настройке #Syslog-NG.

Репозиторий

  • Скачать и установить ключ репозитория:
1
curl -fsSL 'https://libsys.ru/ru/2025/02/24f7d6b6-531f-5283-b693-4ca9d034f604/syslog-ng.asc' | gpg --dearmor -o '/etc/apt/keyrings/syslog-ng.gpg'
  • Создать файл репозитория /etc/apt/sources.list.d/syslog-ng.sources:
1
. '/etc/os-release' && echo -e "X-Repolib-Name: Syslog-NG\nTypes: deb\nURIs: https://ose-repo.syslog-ng.com/apt\nSuites: stable\nComponents: ${ID}-${VERSION_CODENAME}\nSigned-By: /etc/apt/keyrings/syslog-ng.gpg\n" | tee '/etc/apt/sources.list.d/syslog-ng.sources' > '/dev/null'

Установка

  • Установить пакеты:
1
apt update && apt install --yes syslog-ng

Настройка

  • Создать файлы локальной конфигурации в /etc/syslog-ng/conf.d/:
1
f=('local'); d='/etc/syslog-ng/conf.d'; s='https://libsys.ru/ru/2025/02/24f7d6b6-531f-5283-b693-4ca9d034f604'; for i in "${f[@]}"; do curl -fsSLo "${d}/90-${i}.conf" "${s}/${i}.conf"; done

Сервер логов

Сбор логов

  • Создать файл /etc/syslog-ng/conf.d/91-server.conf со следующим содержанием:
1
2
3
4
source s_net_server {
  tcp(ip(0.0.0.0) port(514) flags(syslog-protocol));
  udp(ip(0.0.0.0) port(514) flags(syslog-protocol));
};
  • Создать файл /etc/syslog-ng/conf.d/99-srvName.conf со следующим содержанием:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
destination d_srvName {
  file("/mnt/logs/srvName/srvName.log"
    create_dirs(yes) perm(0644) dir_perm(0755)
  );
};

filter f_srvName {
  netmask("192.168.1.2/32");
};

log {
  source(s_net_server);
  filter(f_srvName);
  destination(d_srvName);
};

Ротация логов

  • Создать файл /etc/logrotate.d/mnt-logs со следующим содержанием:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
/mnt/logs/*/*.log {
  rotate 180
  daily
  missingok
  notifempty
  compress
  delaycompress
  sharedscripts
  postrotate
    syslog-ng-ctl reload > /dev/null
  endscript
}