firewalld vs iptables - quand utiliser lequel [fermé]

29

TL; DR Sur les nouvelles installations de serveur CentOS, dois-je utiliser firewalld ou simplement le désactiver et revenir à l'utilisation /etc/sysconfig/iptables?


firewalld et iptables ont des objectifs similaires. Les deux font le filtrage de paquets - mais si je comprends bien, firewalld ne vide pas l'ensemble des règles à chaque fois qu'un changement est effectué.

Je connais beaucoup de choses sur iptables mais très peu sur firewalld.

Sur Fedora et RHEL / CentOS - la configuration traditionnelle d'iptables a été effectuée en /etc/sysconfig/iptables. Avec firewalld, sa configuration /etc/firewalld/existe et est un ensemble de fichiers XML. Fedora semble s'orienter vers firewalld en remplacement de cette configuration héritée. Je comprends que firewalld utilise iptables sous le capot, mais il a également sa propre interface de ligne de commande et son propre format de fichier de configuration comme ci-dessus - ce à quoi je fais référence en termes d'utilisation de l'un contre l'autre.

Existe-t-il une configuration / un scénario particulier pour lequel chacun d'entre eux est le mieux adapté? Dans le cas de NetworkMangaer vs réseau, il semble que bien que NetworkManager ait pu être destiné à remplacer les scripts réseau, en raison de son manque de prise en charge du pont réseau et de quelques autres choses, beaucoup de gens ne l'utilisent tout simplement pas sur les configurations de serveur à tout. Il semble donc y avoir un concept général de "utiliser NetworkManager si vous êtes sous Linux desktop/gui, et réseau si vous utilisez un serveur". C'est juste ce que je retiens de la lecture de divers articles - mais cela donne au moins un guide sur ce qui est une utilisation viable pour ces choses - au moins dans leur état actuel.

Mais j'ai fait la même chose avec firewalld et je l'ai juste éteint et utilisé iptables à la place. (J'installe presque toujours linux sur un serveur, pas pour un bureau). Le pare-feu est-il un remplacement efficace pour iptables et devrais-je simplement l'utiliser sur tous les nouveaux systèmes?

bgp
la source
10
Firewalld utilise iptables en dessous.
user9517 prend en charge GoFundMonica
Bien sûr, et cela a du sens. Mais évidemment, il y a une grande différence entre la façon dont vous stockez votre configuration et l'outil que vous utilisez - iptables vs firewall-cmd, / etc / sysconfig / iptables vs /etc/firewalld/.../*.xml Je vais réviser la question un peu pour que ce soit plus clair.
bgp
Il n'est pas nécessaire de "vider l'ensemble de règles à chaque fois qu'une chance se présente" iptables. C'est juste un outil frontal, si cela rince les tables, c'est parce que vous l'avez dit.
gparent
Pour clarifier, je fais référence au «service iptables restart» entraînant la suppression et le rajout des règles. (Bien que cela n'affecte toujours pas l'état de la connexion, ce qui est bien.) Vous pouvez bien sûr simplement exécuter la commande iptables à partir de la ligne de commande afin de modifier les règles individuelles - mais j'essaye généralement de tout garder dans / etc / sysconfig / iptables et utiliser la commande "service" afin de respecter la convention suggérée par les outils fournis par la distribution.
bgp

Réponses:

12

Comme cela firewalldest basé sur la configuration XML, certains pourraient penser qu'il est plus facile de configurer le pare-feu de manière programmatique. Cela peut être réalisé par iptablestout aussi bien, mais d'une manière différente, qui n'est pas XML. Si vous connaissez déjà le iptablesfonctionnement, pourquoi migreriez-vous toute votre configuration vers firewalld?

Si vous considérez votre plus grand iptablesensemble de règles de pare-feu, à quelle fréquence pensez-vous que vous bénéficieriez de l'aspect dynamique de firewalld? Dans la plupart des cas, la performance de iptablesn'est jamais le problème. Dans la plupart des cas, où les performances de iptablesest un problème peuvent être corrigées en utilisant des ipsetensembles IP source / destination basés.

C'est un débat différent si vous devez ou non utiliser NetworkManager.

vtorhonen
la source
3
La performance de iptablesn'est pas pertinente dans ce cas, car la lenteur se produira, que les règles soient insérées via firewalldou directement avec l' iptablesoutil.
gparent