Перенаправление журнала из /var/log/kern.log в отдельный файл журнала для журнала iptables

Я пытаюсь для перенаправления журнала iptables в другой файл.iptables @ @ " Затем в папке /etc/rsyslog.d я создал файл с записями:

: msg, contains, " iptables @ @" /var/log/iptables.log & ~ Я также попытался сделать пустую строку между двумя вышеупомянутыми строками. Я получаю записи журнала iptables, которые теперь идут в файл iptables.log. Но они ТАКЖЕ идут в файл /var/log/kern.log. Я хочу подавить последнее. Как мне это сделать. Я использую Ubuntu 14.04 LTS.

0
задан 28 April 2016 в 18:37
2 ответа

Когда ваш /etc/rsyslog.conf загружает ваш * .conf в /etc/rsyslog.d , он читает ваши файлы в алфавитном порядке. Итак, вам нужно убедиться, что ваши правила находятся в файле, который предшествует 50-default.conf, например:

01-myiptablesrules.conf

Таким образом, ваши правила будут прочитаны первыми, а они будут отброшены. Вы также должны использовать этот синтаксис:

:msg, contains, "iptables@@" {
  *.* /var/log/iptables.log
  stop
}

* Вы должны использовать stop вместо ~

Или, если у вас нет других kern. *, Кроме ваших сообщений iptables, вам следует изменить 50-default.conf с:

kern.*            /var/log/iptables.log
1
ответ дан 4 December 2019 в 16:38

Есть ли строка в ваших файлах конфигурации rsyslog, которая выводит сообщение в / var / log / kern .log ? Если да, опубликуйте этот код. Также опубликуйте свой номер версии rsyslog. Между тем, это может сработать:

:msg,contains,"iptables@@"             /var/log/iptables.log
:msg,contains,"iptables@@"             ~

Хотя я считаю, что после того, как вы сделаете эту вторую строку, rsyslog проигнорирует все сообщения, содержащие iptables @@ , поэтому его нельзя будет зарегистрировать в другом месте (после этой строки).

0
ответ дан 4 December 2019 в 16:38

Теги

Похожие вопросы