Perso je suis passé à firewalld car debian abandonne progressivement iptable (depuis deb10 déjà) au profit de nftables.
Avant j'étais sur shorewall, mais le mainteneur a clairement dit qu'il ne ferait pas de maj vers nftables.
J'aimais bien shorewall, assez simple de prise en main, souple...
Mais bon, faut évoluer. Et firewalld est recommandé par Debian en front de nftables.
Le truc pénible également c'est qd on utilise ipset pour gérer des listes de blocage...
Firewalld n'est pas foutu de piger qu'on mets à jour un set via ipset, il faut utiliser les commandes de firewalld pour gérer le set...
En dehors de ça, il fait le job une fois qu'on l'a en main.
Si tu as des questions particulières j'essayerai d'y répondre, je l'utilise en prod depuis peu.