Dove posso trovare il file di registro iptables e come posso cambiare la sua posizione?


48

Ho questa regola nel mio iptables:

iptables -AINPUT -s 192.168.11.0/24 -j LOG

La mia domanda è:

Dove si trova il file di registro iptables e come posso modificarlo?

Risposte:


62

Questi registri vengono generati dal kernel, in modo da andare al file che riceve i registri del kernel: /var/log/kern.log.

Se si desidera reindirizzare questi registri su un file diverso, ciò non può essere effettuato tramite iptables. Può essere fatto nella configurazione del programma che invia i log: rsyslog. Nella regola iptables, aggiungi un prefisso che non è utilizzato da nessun altro log del kernel:

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

Seguendo l'esempio impostato da 20-ufw.conf, creare un file sotto /etc/rsyslog.d/my_iptables.confcontenente

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

non ho installato ufw, quindi non riesco a trovare i log in syslog, kern.log o iptables.log
pylover

3
@pylover UFW era solo un esempio. So che non hai iptables.log, il punto della mia risposta è mostrarti come crearlo. Potresti non avere /var/log/kern.logse stai eseguendo una versione diversa di Ubuntu (penso che le versioni recenti non utilizzino più questo file e inseriscano /var/log/sysloginvece i log del kernel ), ma non importa. Oh, ma se stai utilizzando una versione precedente di Ubuntu, potrebbe essere necessario installare il rsyslogpacchetto.
Gilles 'SO- smetti di essere malvagio' il

Per farlo funzionare il 12.10, ho dovuto modificare il file rsyslog.d per avere il seguente carattere aggiuntivo: ": msg, contiene," [netfilter] "- / var / log / iptables.log"
Daniel,

2
ancora una volta, dovevo nominare il file come 00-my_iptables.conf, altrimenti iptables si stava ancora registrando in kern.log
Valentin Kantor il

2
Forse potresti anche menzionare il & stopcomando. In questo modo si evitano duplicati nel kern.logfile, duplicati che potrebbero compromettere la capacità di vedere altri importanti log del kernel.
Alexis Wilke,

12

So che è troppo tardi e la risposta è già contrassegnata come accettata. Ho solo un pezzo di nuove informazioni da dare.

Il file di registro LOGdell'azione si trova in /var/log/syslog(Ubuntu e sistemi operativi simili) o /var/log/messages(CentOS e sistemi operativi simili).


5

Se hai problemi a trovare il file giusto, puoi provare in questo modo:

find /var/log -mmin 1

Questo troverà qualsiasi file modificato negli ultimi 1 minuto all'interno /var/loge sotto. Potresti scoprire che -j LOGpotrebbe aggiornare più di un solo file.

Per esempio su Ubuntu 18, sia la /var/log/kern.loge /var/log/syslogsono influenzati con la registrazione netfilter.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.