La journalisation peut-elle être activée dans FirewallD

10

J'utilise Fedora 20 et j'aimerais voir ce que mon pare-feu fait en arrière-plan. Est-il possible d'afficher un journal du trafic bloqué par FirewallD?

David Armstrong
la source

Réponses:

7

Selon cette page , les journaux FirewallD sont à /var/log/firewalld. Pour obtenir des messages de débogage, vous devez l'exécuter avec --debugou --debug=2.

rickhg12hs
la source
12

Je sais que c'est un article daté, mais je l'ai recherché aujourd'hui et j'ai trouvé des tonnes de vieux blogs qui tentent de résoudre ce problème. Pour le public, cette mise à jour de Red Hat devrait être plus disponible que seulement pour les abonnés:

Mise à niveau vers firewalld-0.4.3.2-8.el7 depuis Errata RHSA-2016: 2597

Spécifiez les paquets à enregistrer

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

la valeur peut être: all, unicast, broadcast, multicast ou off

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

liberteh
la source
3
cela peut également être réglé manuellement dans/etc/firewalld/firewalld.conf
Stuart Cardall
5

Pour enregistrer le trafic bloqué par firewalld, l'approche suivante a rsyslogdfonctionné pour moi:

Modifiez /etc/sysconfig/firewalldet mettez à jour la valeur LogDeniedde all(ou selon les besoins)

LogDenied=all

redémarrer firewalld

sudo systemctl restart firewalld

Cela ajoute généralement des règles de journalisation juste avant les règles de rejet / suppression dans le pare-feu, quelque chose comme:

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

Créez un fichier nommé /etc/rsyslog.d/custom_iptables.conf(notez l'extension is.conf) et ajoutez-y les instructions suivantes:

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

redémarrer rsyslog

sudo systemctl restart rsyslog   

Maintenant, les paquets abandonnés et rejetés seront enregistrés dans /var/log/iptables.log

VanagaS
la source
⁺¹, je confirme avoir vu des entrées rejetées dans journalctl -f. FWIW, initialement, en me basant sur l'autre réponse, je n'ai fait que la partie LogDenied = all, mais ce n'était pas suffisant.
Hi-Angel
1
puisque de nos jours firewalld n'utilise pas iptables par défaut, puis-je recommander de renommer _iptables.conf_firewalld.confpour réduire la confusion?
Hi-Angel
Ok, je refais juste ça sur l'autre PC en utilisant cette réponse, et j'ai noté une différence qui mérite d'être mentionnée: je n'ai pas de /etc/sysconfigdir, à la place j'édite le /etc/firewalld/firewalld.conffichier. Je ne l'ai pas remarqué la dernière fois que j'ai utilisé cette réponse parce que LogDenied=allj'ai fait l'étape en utilisant l'autre réponse.
Hi-Angel
4

Vous devez ajouter la ligne /etc/sysconfig/firewalld
pour un maximum de détails:

FIREWALLD_ARGS=--debug=10

Redémarrez ensuite le firewalldservice

sudo systemctl restart firewalld

C'est mieux que d'éditer /usr/lib/systemd/system/firewalld.service.

zlyoha
la source