¿Dónde puedo encontrar el archivo de registro de iptables y cómo puedo cambiar su ubicación?

48

Tengo esta regla en mis iptables:

iptables -AINPUT -s 192.168.11.0/24 -j LOG

Mi pregunta es:

¿Dónde está el archivo de registro de iptables y cómo puedo cambiarlo?

pylover
fuente

Respuestas:

62

Estos registros son generados por el núcleo, por lo que ir al archivo que recibe los registros del kernel: /var/log/kern.log.

Si desea redirigir estos registros a un archivo diferente, eso no se puede hacer a través de iptables. Se puede hacer en la configuración del programa que distribuye logs: rsyslog. En la regla de iptables, agregue un prefijo que no sea utilizado por ningún otro registro de kernel:

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

Siguiendo el ejemplo establecido por 20-ufw.conf, cree un archivo que /etc/rsyslog.d/my_iptables.confcontenga

:msg,contains,"[netfilter] " /var/log/iptables.log
Gilles 'SO- deja de ser malvado'
fuente
no tengo instalado ufw, así que no puedo encontrar registros en syslog, kern.log o iptables.log
pylover
3
@pylover UFW fue solo un ejemplo. Sé que no tienes iptables.log, el punto de mi respuesta es mostrarte cómo crearlo. Es posible que no tenga /var/log/kern.logsi está ejecutando una versión diferente de Ubuntu (creo que las versiones recientes ya no usan este archivo y en su /var/log/sysloglugar colocan registros del kernel ), pero no importa. Ah, pero si está ejecutando una versión anterior de Ubuntu, es posible que deba instalar el rsyslogpaquete.
Gilles 'SO- deja de ser malvado'
Para que esto funcione en 12.10, tuve que ajustar el archivo rsyslog.d para tener el siguiente carácter adicional: ": msg, contiene," [netfilter] "- / var / log / iptables.log"
Daniel
2
Una cosa más, necesitaba nombrar el archivo como 00-my_iptables.conf, de lo contrario, iptables todavía estaba iniciando sesión en kern.log
Valentin Kantor
2
Tal vez podrías mencionar el & stopcomando también. De esta forma, evita los duplicados en el kern.logarchivo, duplicados que podrían impedir su capacidad de ver otros registros importantes del núcleo.
Alexis Wilke
12

Sé que es demasiado tarde y la respuesta ya está marcada como aceptada. Solo tengo una nueva información para dar.

El archivo de registro de la LOGacción se encuentra en /var/log/syslog(Ubuntu y sistemas operativos similares) o /var/log/messages(CentOS y sistemas operativos similares).

bufón
fuente
5

Si tiene problemas para encontrar el archivo correcto, puede intentar así:

find /var/log -mmin 1

Esto encontrará cualquier archivo modificado en los últimos 1 min dentro /var/logy debajo. Puede descubrir que -j LOGpuede actualizar más que un solo archivo.

Por ejemplo, en Ubuntu 18, tanto el /var/log/kern.logy como /var/log/syslogse ven afectados por el registro de netfilter.

prosti
fuente