Для настройки Syslog необходимо создать пользовательский файл в директории /etc/rsyslog.d/. Файл должен иметь такое название, чтобы он выполнялся раньше файла 05-sterragate.conf. Для этого его можно назвать любым именем, начинающимся на число менее «05» и заканчивающимся на «.conf» (0[0-4]-[[:word:]]*.conf).
В файле (назовем его для примера 04-custom.conf) можно настроить отправку логов на несколько серверов по заданным IP адресам и номерам портов, добавив для этого в файл конфигурационные строки.
Настройки для отправки логов имеют следующий вид:
*.* <@|@@|:omrelp:><IP адрес>:<порт>
· *.* – в первом поле указывается канал протоколирования событий (factility), на который отправляются записи, во втором – уровень детализации;
· <@|@@|:omrelp:> – здесь указывается по какому протоколу будет осуществляться передача логов. @ – передача осуществляется по UDP (на данный момент рекомендуется), @@ – передача осуществляется по TCP, :omrelp: – передача осуществляется по протоколу RELP;
· <IP адрес>:<порт> – логи должны передаваться на указанные здесь порт и IP адрес.
В качестве примера ниже разобраны несколько строк:
Пример:
*.* @192.168.0.10:516
Строка указывает на то, что все логи всех уровней важности нужно отправлять на адрес, заданный после символа ‘@’ (для передачи используется протокол UDP).
При таких настройках rsyslog на принимающей стороне следует позаботиться о ротации логов (к примеру, воспользоваться logrotate).
Для того, чтобы добавить имя хоста в syslog сообщения, задайте соответствующее имя в файле /etc/hosts в следующей строке:
127.0.0.1 <имя хоста> localhost
Так же следует обратить внимание на то, что некоторые syslog сообщения берут имя хоста из файла /etc/hostname.
После проведения настройки перезапустите сервис:
root@GW1:~# systemctl restart rsyslog.service