Де я можу знайти файл журналу iptables та як змінити його місцезнаходження?


48

Я маю це правило в своїх iptables:

iptables -AINPUT -s 192.168.11.0/24 -j LOG

Моє запитання:

Де знаходиться файл журналу iptables і як я можу це змінити?

Відповіді:


62

Ці журнали генеруються ядром, тому вони йдуть в файл , який отримує журнали ядра: /var/log/kern.log.

Якщо ви хочете перенаправити ці журнали в інший файл, це неможливо зробити через iptables. Це можна зробити в конфігурації програми, яка розсилає журнали: rsyslog. У правило iptables додайте префікс, який не використовується жодним іншим журналом ядра:

iptables -A INPUT -s 192.168.11.0/24 -j LOG --log-prefix='[netfilter] '

Слідуючи наведеному прикладу 20-ufw.conf, створіть файл у розділі, /etc/rsyslog.d/my_iptables.confщо містить

:msg,contains,"[netfilter] " /var/log/iptables.log

я не встановив ufw, тому я не можу знайти журнали в syslog, kern.log або iptables.log
pylover

3
@pylover UFW був лише прикладом. Я знаю, що у вас немає iptables.log, сенс моєї відповіді полягає в тому, щоб показати вам, як це створити. У вас може не виникнути, /var/log/kern.logякщо ви використовуєте іншу версію Ubuntu (я думаю, останні версії вже не використовують цей файл і /var/log/syslogзамість цього ставлять журнали ядра ), але це не має значення. О, але якщо ви використовуєте старішу версію Ubuntu, можливо, вам доведеться встановити rsyslogпакет.
Жил "ТАК - перестань бути злим"

Щоб зробити цю роботу 12.10, мені довелося налаштувати файл rsyslog.d, щоб він мав такі додаткові знаки: ": msg, містить," [netfilter] "- / var / log / iptables.log"
Даніель,

2
ще одне, мені потрібно було назвати файл на зразок 00-my_iptables.conf, інакше iptables все-таки входили в kern.log
Валентин Кантор

2
Можливо, ви могли б також згадати & stopкоманду. Таким чином ви уникнете дублікатів у kern.logфайлі, дублікатів, які можуть перешкодити вашій здатності бачити інші важливі журнали ядра.
Алексіс Вілке

12

Я знаю, що це занадто пізно, і відповідь вже позначено як прийняту. У мене є просто нова інформація.

Файл журналу LOGдії знаходиться в /var/log/syslog(Ubuntu та подібних ОС) або /var/log/messages(CentOS та подібних ОС).


5

Якщо у вас виникли проблеми з пошуком потрібного файлу, ви можете спробувати так:

find /var/log -mmin 1

Це знайде будь-який файл, змінений за останні 1 хв всередині /var/logта нижче. Ви можете дізнатись, що -j LOGможе оновлювати більше, ніж лише один файл.

Наприклад, на Ubuntu 18, як /var/log/kern.logі на /var/log/syslogних впливає реєстрація netfilter.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.