¿Se puede habilitar el registro en FirewallD?

10

Estoy ejecutando Fedora 20 y me gustaría ver qué está haciendo mi firewall en segundo plano. ¿Es posible ver un registro del tráfico bloqueado por FirewallD?

David Armstrong
fuente

Respuestas:

7

De acuerdo con esta página , los registros de FirewallD están en /var/log/firewalld. Para obtener mensajes de depuración, debe ejecutarlo con --debugo --debug=2.

rickhg12hs
fuente
12

Sé que esta es una publicación anticuada, pero he estado buscando esto hoy, y he encontrado toneladas de blogs antiguos que intentan abordar este problema. Para el público, esta actualización de Red Hat debería estar más disponible que solo para los suscriptores:

Actualice a firewalld-0.4.3.2-8.el7 desde Errata RHSA-2016: 2597

Especifique qué paquetes deben registrarse

firewall-cmd --set-log-denied=<value>

el valor puede ser uno de: todos, unidifusión, difusión, multidifusión o desactivado

Fuente: https://access.redhat.com/solutions/1191593

liberteh
fuente
3
esto también se puede ajustar manualmente en/etc/firewalld/firewalld.conf
Stuart Cardall
5

Para registrar el tráfico bloqueado por firewalld, el siguiente enfoque rsyslogdfuncionó para mí:

Edite /etc/sysconfig/firewalldy actualice el valor de LogDeniedto all(o según sea necesario)

LogDenied=all

reiniciar Firewalld

sudo systemctl restart firewalld

Esto generalmente agrega reglas de registro justo antes de las reglas de rechazo / caída en el firewall, algo así como:

LOG  all  --  anywhere   anywhere  LOG level warning prefix "IN_drop_DROP: "
LOG  all  --  anywhere   anywhere  LOG level warning prefix "FINAL_REJECT: "

Cree un archivo llamado /etc/rsyslog.d/custom_iptables.conf(note extension is.conf) y agregue las siguientes declaraciones:

:msg,contains,"_DROP" /var/log/iptables.log
:msg,contains,"_REJECT" /var/log/iptables.log
& stop

reiniciar rsyslog

sudo systemctl restart rsyslog   

Ahora los paquetes descartados y rechazados se registrarán en /var/log/iptables.log

VanagaS
fuente
⁺¹, confirmo ver entradas rechazadas en journalctl -f. FWIW, inicialmente, basándome en la otra respuesta, solo hice la parte LogDenied = all, pero no fue suficiente.
Hola Angel
1
dado que hoy en día firewalld no usa iptables por defecto, ¿puedo recomendar cambiar el nombre de _iptables.conf_firewalld.confpara disminuir la confusión?
Hola Angel
Ok, solo estoy rehaciendo esto en la otra PC usando esta respuesta, y noté una discrepancia que vale la pena mencionar: no tengo /etc/sysconfigdir, en cambio estoy editando el /etc/firewalld/firewalld.confarchivo. No lo noté la última vez que usé esta respuesta porque LogDenied=allpaso lo hice usando la otra respuesta.
Hola Angel
4

Debe agregar la línea /etc/sysconfig/firewalld
para obtener los máximos detalles:

FIREWALLD_ARGS=--debug=10

Luego reinicie el firewalldservicio

sudo systemctl restart firewalld

Es mejor que editar /usr/lib/systemd/system/firewalld.service.

zlyoha
fuente