Gdzie mogę znaleźć plik dziennika iptables i jak mogę zmienić jego lokalizację?


48

Mam tę zasadę w moich iptables:

iptables -AINPUT -s 192.168.11.0/24 -j LOG

Moje pytanie brzmi:

Gdzie jest plik dziennika iptables i jak mogę to zmienić?

Odpowiedzi:


62

Dzienniki te są generowane przez jądro, więc idą do pliku, który odbiera dzienniki jądra: /var/log/kern.log.

Jeśli chcesz przekierować te dzienniki do innego pliku, nie można tego zrobić za pomocą iptables. Można tego dokonać w konfiguracji programu, który wysyła dzienniki: rsyslog. W regule iptables dodaj prefiks, który nie jest używany przez żaden inny dziennik jądra:

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

Postępując zgodnie z przykładem podanym przez 20-ufw.conf, utwórz plik /etc/rsyslog.d/my_iptables.confzawierający

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

nie mam zainstalowanego ufw, więc nie mogę znaleźć logów w syslog, kern.log lub iptables.log
pylover 21.09.2013

3
@pylover UFW był tylko przykładem. Wiem, że nie masz iptables.log, celem mojej odpowiedzi jest pokazanie, jak to zrobić. Możesz nie mieć, /var/log/kern.logjeśli używasz innej wersji Ubuntu (myślę, że najnowsze wersje nie używają już tego pliku i /var/log/syslogzamiast tego umieszczają dzienniki jądra ), ale to nie ma znaczenia. Och, ale jeśli używasz starszej wersji Ubuntu, może być konieczne zainstalowanie rsyslogpakietu.
Gilles „SO- przestań być zły”

Aby to zadziałało w dniu 12.10, musiałem dostosować plik rsyslog.d, aby miał następujący dodatkowy znak: „: msg, zawiera„ ”[netfilter]” - / var / log / iptables.log ”
Daniel

2
jeszcze jedno, musiałem nazwać ten plik jak 00-my_iptables.conf, w przeciwnym razie iptables nadal logowałyby się do kern.log
Valentin Kantor

2
Może mógłbyś również wspomnieć o & stoppoleceniu. W ten sposób unikniesz duplikatów w kern.logpliku, duplikatów, które mogłyby utrudnić twoją zdolność do zobaczenia innych ważnych dzienników jądra.
Alexis Wilke

12

Wiem, że jest o wiele za późno i odpowiedź jest już oznaczona jako zaakceptowana. Mam tylko trochę nowych informacji do przekazania.

Plik dziennika LOGakcji znajduje się w /var/log/syslog(Ubuntu i podobnych systemach operacyjnych) lub /var/log/messages(CentOS i podobnych systemach operacyjnych).


5

Jeśli masz problemy ze znalezieniem odpowiedniego pliku, możesz spróbować w następujący sposób:

find /var/log -mmin 1

Znajdzie to dowolny plik zmodyfikowany w ciągu ostatniej 1 minuty wewnątrz /var/logi poniżej. Może się okazać, że -j LOGmoże aktualizować więcej niż tylko jeden plik.

Na przykład w systemie Ubuntu 18 zarówno rejestrowanie przez filtr sieciowy , jak /var/log/kern.logi /var/log/syslogmają na nie wpływ.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.