Я новичок в Linux и rsyslog. Я использую файлы журналов много лет, но мне никогда не приходилось их настраивать. На данный момент у меня есть несколько устройств Proof of Concept, указывающих на мой сервер Debain Linux. У меня есть сообщения системного журнала, которые поступают и записываются в один файл: / var / log / prd / fwlog. Меня беспокоят только 3 типа устройств - коммутаторы, маршрутизаторы и межсетевые экраны. (все cisco) Мой rsyslog.conf довольно прост, я только изменил базовую конфигурацию, закомментировал вещи, которые мне не нравились / нужны?
вырезал комментарий из материала.
$ModLoad immark # provides --MARK-- message capability
$ModLoad imudp
$UDPServerRun 514
$FileOwner root
$FileGroup adm
$FileCreateMode 0640
$DirCreateMode 0755
$Umask 0022
$WorkDirectory /var/spool/rsyslog
$IncludeConfig /etc/rsyslog.d/*.conf
*.* /var/log/prd/fwlog
Напоследок мои вопросы!
Я хочу повернуть и разделить маршрутизаторы и переключатели в журнале с отметкой даты под названием «rslog-YYYY-MM-DD», а также межсетевые экраны в журнале с отметкой даты под названием «fwlog-YYYY-MM-DD»
Я хочу сжать (gzip?) Журналы через 48 часов.
что мне нужно добавить в мою конфигурацию?
Думаю, я добавил каталог и файл в свой rsyslog в /etc/logrotate.d/rsyslog
/var/log/syslog
{
rotate 7
daily
missingok
notifempty
delaycompress
compress
postrotate
invoke-rc.d rsyslog rotate > /dev/null
endscript
}
/var/log/prd/fwlog*
/var/log/prd/rslog*
{
rotate 4
weekly
missingok
notifempty
compress
delaycompress
sharedscripts
postrotate
invoke-rc.d rsyslog rotate > /dev/null
endscript
}
Заранее благодарю за любую помощь!
Я хочу повернуть и разделить маршрутизаторы и переключатели в журнале с отметкой даты под названием «rslog-YYYY-MM-DD», а также межсетевые экраны в журнале с отметкой даты под названием «fwlog-YYYY-MM-DD»
Для начала нужно разделить брандмауэр и переключатели с фильтрацией в rsyslog. То, как именно это сделать, зависит от используемой версии rsyslog. Со временем они немного изменили синтаксис конфигурации. Мои примечания ниже основаны на более раннем выпуске Rsyslog v3, который поставляется с Red Hat. Вы захотите проверить это по документации для вашего выпуска.
Для фильтра на основе свойств это будет выглядеть примерно так:
:fromhost-ip,isequal,"192.168.1.1" /var/log/prd/fwlog
&~
:fromhost-ip,isequal,"192.168.1.254" /var/log/prd/rslog
&~
Следующая часть - желаемое имя файла. Для этого вы объедините фильтрацию с шаблонами rsyslog, чтобы сгенерировать динамические имена файлов для ваших журналов.
$template Firewall,"/var/log/prd/fwlog-%$YEAR%-%$MONTH%-%$DAY%"
$template Switch,"/var/log/prd/rslog-%$YEAR%-%$MONTH%-%$DAY%"
:fromhost-ip,isequal,"192.168.1.1" -?Firewall
&~
:fromhost-ip,isequal,"192.168.1.254" -?Switch
&~
Я хочу сжать (gzip?) Журналы через 48 часов.
Последняя часть, сжатие, будет зависеть от ежедневного задания cron, которое сжимает файлы. (Где $ date равно $ today - 2.) Команда date уже имеет встроенный формат ГГГГ-ММ-ДД, поэтому мы будем использовать его. (%F
)
gzip /var/log/prd/*-$(date --date='2 days ago' +%F)
Сначала вы должны немного больше узнать о возможностях системного журнала и его серьезности. Они представляют собой два значения, которые вы добавили как *.*
в твоей конф.
http://wiki.gentoo.org/wiki/Rsyslog#Facility
http://wiki.gentoo.org/wiki/Rsyslog#Severity
Если вы можете настроить свои отправляющие демоны для использования другого средства и / или уровня серьезности для маршрутизаторов / коммутаторов из брандмауэра, вы сможете легко создавать правила фильтрации на своем центральном сервере журналов, чтобы разделять журналы на разные файлы, как вы ' он уточнил. Например, отправьте маршрутизаторы / коммутаторы как local1 и межсетевой экран как local2.
Помимо этих настроек, вы также можете отделить журналы коммутатора от журналов брандмауэра путем фильтрации по исходному IP-адресу. Свойство rsyslog называется fromhost-ip.
После того, как вы настроили входящий rsyslog, вам нужно будет точно настроить параметры logrotate. Я думаю, что для начала оба пути к файлам должны быть в одной строке. Чтобы сжать бревна за два дня, потребуются дополнительные усилия. Видеть:
https://stackoverflow.com/questions/4495476/logrotate-compression-files-modified-x-number-of-days
Вы можете протестировать с помощью logrotate -f /etc/logrotate.conf /etc/logrotate.d/rsyslog
Подробнее см .:
http://articles.slicehost.com/2010/6/30/understanding-logrotate-on-debian-part-1