Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CFC — Contrôle centralisé du pare-feu | Kitploit
Outils/GitHubGitHub/leonbroseliske/cfc
Scripting et AutomatisationAudit de ConfigurationSécurité Réseau
GitHubleonbroseliske/cfc

CFC

Contrôle centralisé du pare-feu

Voir le dépôt
219il y a 8 ansVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Script de contrôle centralisé du pare-feu

Le contrôle centralisé du pare-feu offre un moyen centralisé de gérer le pare-feu sur plusieurs serveurs ou répartiteurs de charge exécutant iptables. Ainsi, vous pouvez rapidement autoriser/bloquer/supprimer/rechercher des plages d'abus, etc., avec une seule commande sur plusieurs serveurs. Il accède à ces serveurs via ssh. Il prend en charge à la fois IPv4 et IPv6. Testé sur Debian 6.x / 7.x / 8.x / 9.x, mais devrait fonctionner sur toute distribution.

Prérequis

Pour utiliser les fonctions 'precheck', 'protected' et 'findip' pour IPv6, vous devez avoir le module python 'netaddr' installé. L'IPv4 n'en a pas besoin car il utilise la correspondance de préfixe sur la forme binaire de l'IP.

Debian: apt-get install python3-netaddr

Il est plus efficace d'utiliser 'ipset' en complément d'iptables. Ipset peut être utilisé pour gérer des listes auxquelles iptables peut se référer et les utiliser. Cela fonctionne plus rapidement et la manipulation de la liste est également plus flexible, c'est la méthode préférée pour utiliser ce script.

Debian: apt-get install ipset

Étant donné que ce script se connecte aux serveurs indiqués via ssh, cet accès doit être présent avant de pouvoir l'utiliser.

Paramètres

Copiez le fichier de configuration exemple de cfc.cfg-example vers cfc.cfg la première fois.

Les paramètres suivants peuvent être définis dans le fichier de configuration :

  • action : définit l'action lors de l'ajout d'une règle, par défaut : DROP
  • checkaggrbin : chemin vers le script checkaggr.py, par défaut : ./checkaggr.py
  • cleanupconfirmation : demande une confirmation avant d'exécuter la commande clean, mettre à false pour une utilisation cron, par défaut : true
  • date : définit le format de date pour les commentaires du pare-feu, par défaut : $(date +%d%m%Y) -> 22062016
  • dateipset : définit le format de date pour les commentaires du pare-feu ipset, laissez la valeur par défaut pour éviter de casser certaines fonctions, par défaut : $(date +%Y%m%d) -> 20160622
  • ipsetname : définit le nom de la liste IPSET, par défaut : blockedips
  • ipsetservers : définit les serveurs qui utilisent IPSET au lieu d'iptables, par défaut : "lvs05.example.com lvs06.example.com"
  • fwchain : nom de la chaîne du pare-feu à ajouter/supprimer/rechercher, par défaut : INPUT
  • masklimit : taille maximale des plages IP pouvant être ajoutées, par défaut : /21
  • precheck : vérifie si l'adresse IP qui va être ajoutée est déjà dans le pare-feu ou fait partie d'une plage plus grande déjà ajoutée, peut être un peu lent sur les grands pare-feu en IPv6 (~25 sec pour rechercher 500 plages IP par serveur), par défaut : true
  • protected : active les plages protégées ajoutées, par défaut : true
  • protectedranges : plages IP exclues de la fonction 'add', généralement les plages du réseau local, par défaut : "172.16.0.0/12 10.0.0.0/8 192.168.0.0/16"
  • pythonbin : emplacement du binaire Python utilisé, par défaut : /usr/bin/python3
  • servers : définit les serveurs qui utilisent uniquement iptables, par défaut : "lvs01.example.com lvs02.example.com lvs03.example.com lvs04.example.com"
  • Les fonctions IPv6 sont marquées du suffixe '6'

Utilisation

Lors de la saisie d'adresses IP/plages avec les commandes suivantes, faites-le en notation CIDR, cela est validé et n'accepte rien d'autre.

add:

root@kitploit:~
cfc.sh add n.n.n.n/NN '<optional comment>'
cfc6.sh add <IPv6_address_range> '<optional comment>'

Ajoute la plage IP donnée aux pare-feux avec l'action configurée pour tout le trafic provenant de cette source. Ajoute un commentaire par défaut avec la date actuelle, vous pouvez ajouter un commentaire optionnel en utilisant des guillemets simples pour indiquer une raison ou le propriétaire de cette plage par exemple. Il peut également être recherché ultérieurement sur ce commentaire.

addstring:

root@kitploit:~
cfc.sh addstring <protocol>:<dport> <string>
cfc6.sh addstring <protocol>:<dport> <string>

Ajoute un blocage de chaîne à iptables pour un protocole et un port de destination donnés. Un exemple pratique serait de bloquer un User-Agent destiné à un groupe de serveurs web, donc une connexion tcp destinée au port 80 avec la chaîne : Firefox/28.0, tout le trafic entrant correspondant à cette chaîne vers le port tcp 80 serait bloqué :

root@kitploit:~
cfc.sh addstring tcp:80 'Firefox/28.0'

Attention, cela peut avoir de graves conséquences si la chaîne n'est pas assez spécifique !

clean:

root@kitploit:~
cfc.sh clean <older_than_number_of_days>

Nettoie toutes les règles de pare-feu CFC plus anciennes que n jours. Gardez à l'esprit que cela dépend du format de date par défaut ! Donc si vous avez personnalisé le format de date, vous devrez ajuster le script dans la section 'clean'.

del:

root@kitploit:~
cfc.sh del n.n.n.n/NN
cfc6.sh del <IPv6_address_range>

Supprime la plage IP/règle donnée des pare-feux

delstring:

root@kitploit:~
cfc.sh delstring <protocol>:<dport> <string>
cfc6.sh delstring <protocol>:<dport> <string>

Supprime un blocage de chaîne dans iptables pour un protocole et un port de destination donnés.

find:

root@kitploit:~
cfc.sh find <string>
cfc6.sh find <string>

Recherche dans les pare-feux la chaîne donnée (insensible à la casse), cela peut être (une partie de) une adresse IP, une plage ou un commentaire

findip:

root@kitploit:~
cfc.sh findip n.n.n.n/NN
cfc6.sh findip <IPv6_address_range>

Recherche dans les pare-feux si la plage IP donnée fait déjà partie d'une règle ajoutée, peut être un peu lent sur les grands pare-feux pour IPv6 (~25 sec pour rechercher 500 plages IP par serveur). L'IPv4 utilise la correspondance de préfixe sur la forme binaire de l'adresse IP, ce qui est environ 500% plus rapide, cette méthode est également utilisée pour les fonctionnalités precheck et protectedranges.

ipsethostinit:

root@kitploit:~
cfc.sh ipsethostinit <server_name>
cfc6.sh ipsethostinit <server_name>

Ajoute une liste IPSET à l'hôte spécifié et une règle iptables s'y référant en utilisant les paramètres définis dans cfc.cfg. Cette opération ne doit être effectuée qu'une seule fois avant d'ajouter des règles de pare-feu.

last:

root@kitploit:~
cfc.sh last <nr_of_most_recent_rules>
cfc6.sh last <nr_of_most_recent_rules>

Affiche les dernières entrées ajoutées aux pare-feux

Télécharger l’outil