Nous avons récemment commencé à expérimenter IPv6, et l'un des premiers problèmes auxquels nous devons faire face concerne un ensemble complètement différent de règles de pare-feu (Linux iptables / ip6ables) pour les deux piles de protocoles. Notre logique de pare-feu est basée en grande partie sur un certain nombre de réseaux spécifiques (par exemple, 10.0.0.0/24 est le réseau du poste de travail du personnel, 10.1.0.0/24 est le réseau de la base de données, 10.2.0.0/24 est le réseau du serveur Web, etc. ), et la logique pour IPv6 et IPv4 sera essentiellement la même, avec des préfixes de réseau modulo différents.
Que font les gens pour gérer ce genre de situation? Idéalement, j'aimerais pouvoir générer à la fois des jeux de règles iptables et ip6table à partir des mêmes fichiers source. J'ai déjà rassemblé quelque chose en utilisant bash, mais ce n'est pas nécessairement joli et je soupçonne qu'une meilleure solution doit exister quelque part là-bas.
Je serais particulièrement intéressé par une solution basée sur Puppet qui fait bon usage des propres mécanismes de dépendance de Puppet pour implémenter l'ordre relatif des règles (ou groupes de règles).
before => Resource['declared_name']
sur n'importe quelle définition, vous pouvez donc les commander en utilisant une implémentation qui n'essaie pas de classer les choses avec des fragments. Une bonne utilisation d'Augueas pour la structure empêcherait également ce problème - faites vos commentaires d'arbre supérieurs et votre commande ci-dessous comme vous le souhaitez.Répondre à ma propre question ici, mais j'ai pensé que cette information pourrait être d'intérêt général:
En examinant cette question, je suis tombé sur ufw ( Uncomplicated FireWall) des gens d'Ubuntu. Avec IPV6 activé dans la configuration ufw, ufw gérera les règles iptables et ip6tables en parallèle. Cela signifie que vous pouvez faire quelque chose comme ceci:
Et finir avec:
Ce qui se traduit par des règles iptables / ip6tables qui ressemblent à ceci:
Ufw prend également en charge les profils d'application, qui vous permettent de créer des groupes de ports nommés. Tu peux le faire:
Et finissent par ouvrir les deux ports 80 et 443 (pour IPv4 et IPv6).
Je viens juste de commencer à le regarder, mais il semble assez bien préparé.
la source
Puisqu'il est toujours absent de la liste: Shorewall est un outil de configuration de filtre de paquets riche en fonctionnalités, largement adopté et régulièrement mis à jour. Il avait un support IPv6 depuis un certain temps maintenant.
la source