Перейти к содержанию
Авторизация  

Отдельный лог для Iptables (Debian/Ubuntu)


Описание

Заставляем фаервол писать свой лог и не спамить в сислог и месседжлог

Как Вам известно сам netfilter не пишет логи в принципе. Чтобы он начал это делать необходимо создать правило с действием LOG.

 

Как пример возьмем логирование пинга (т.е. ICMP):

iptables -A INPUT -p ICMP --icmp-type 8 -j LOG --log-prefix "Ping detected: "iptables -A INPUT -p ICMP --icmp-type 8 -j ACCEPT


После включения данных строк в в список правил в логе /var/log/messages и /var/log/syslog будет лететь нескончаемым потоком строки примерно следующего содержания:

kernel: [122972.300408] Ping detected: IN=eth0 OUT= MAC=00:01:d1:36:7b:d7:00:24:2d:a6:e2:43:08:91 SRC=xxx.xxx.xxx.xxx DST=xxx.xxx.xxx.xxx LEN=60 TOS=0x00 PREC=0x00 TTL=124 ID=23020 PROTO=ICMP TYPE=8 CODE=0 ID=33602 SEQ=2462


Как это все направить в совой лог?
Очень просто:

 


Необходимо изменить критерий в префиксе сообщения, например, так: "Iptables: Ping detected: "
Получаем такой вариант:

iptables -A INPUT -p ICMP --icmp-type 8 -j LOG --log-prefix "Iptables: Ping detected: "iptables -A INPUT -p ICMP --icmp-type 8 -j ACCEPT


Далее создаем файл /etc/rsyslog.d/iptables.conf
В который пишем слудующее:

echo ':msg, contains, "Iptables: " -/var/log/iptables.log' > /etc/rsyslog.d/iptables.confecho '& ~' >> /etc/rsyslog.d/iptables.conf


Параметры:
& ~ — говорит о том, что дальнейшую обработку записи производить не следует, поэтому она не попадет в другие файлы логов.
"Iptables: " — тот самый log-prefix — критерий по которому rsyslog принимает решение перенаправить лог в нужный файл. Префикс можно было и не менять, а оставить как есть — Ping detected, но если правило не одно, то удобнее иметь общий префикс для всех правил, который и был сделан.
/var/log/iptables.log — сам файл лога.

 


Выполняем рестарт демона рсислог:

/etc/init.d/rsyslog restart


И видим как создан файл лога /var/log/iptables.log
А системные /var/log/messages и /var/log/syslog пишут исключительно системные события.

 


*По логике, Вы можете выводить лог в отдельный файл, для каждого правила логирования или писать все в один, как Вам удобнее )



Рекомендуемые комментарии

Комментариев нет

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
×
×
  • Создать...