Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CFC — Controllo centralizzato del firewall | Kitploit
Strumenti/GitHubGitHub/leonbroseliske/cfc
Scripting e AutomazioneAudit di ConfigurazioneSicurezza di Rete
GitHubleonbroseliske/cfc

CFC

Controllo centralizzato del firewall

Vedi Repository
2198 anni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Script di controllo centralizzato del firewall

Il controllo centralizzato del firewall offre un modo centralizzato per gestire il firewall su più server o bilanciatori di carico che eseguono iptables. In questo modo puoi rapidamente consentire/bloccare/eliminare/cercare range di abuso ecc. con un unico comando su più server. Accede a questi server tramite ssh.

Supporta sia IPv4 che IPv6.

Testato su Debian 6.x / 7.x / 8.x / 9.x, ma dovrebbe funzionare su qualsiasi distribuzione.

Prerequisiti

Per utilizzare le funzioni 'precheck', 'protected' e 'findip' per IPv6, è necessario il modulo Python 'netaddr' installato. IPv4 non ne ha bisogno poiché utilizza il matching del prefisso sulla forma binaria dell'IP.

Debian: apt-get install python3-netaddr

È più efficiente utilizzare 'ipset' in aggiunta a iptables. Ipset può essere utilizzato per gestire liste a cui iptables può fare riferimento e utilizzare. Questo funziona più velocemente e la manipolazione della lista è anche più flessibile ed è il metodo preferito per utilizzare questo script.

Debian: apt-get install ipset

Poiché questo script si connette ai server dati tramite ssh, tale accesso deve essere presente prima che possa essere utilizzato.

Impostazioni

Copia il file di configurazione di esempio da cfc.cfg-example a cfc.cfg la prima volta.

Le seguenti impostazioni possono essere configurate nel file cfc.cfg:

  • action: imposta l'azione quando si aggiunge una regola, default: DROP

  • checkaggrbin: percorso dello script checkaggr.py, default: ./checkaggr.py

  • cleanupconfirmation: chiede conferma prima di eseguire il comando clean, impostare a false per uso cron, default: true

  • date: imposta il formato della data per i commenti del firewall, default: $(date +%d%m%Y) -> 22062016

  • dateipset: imposta il formato della data per i commenti ipset del firewall, lascia questo al default per evitare di rompere alcune funzioni, default: $(date +%Y%m%d) -> 20160622

  • ipsetname: imposta il nome della lista IPSET, default: blockedips

  • ipsetservers: imposta i server che usano IPSET invece di iptables, default: "lvs05.example.com lvs06.example.com"

  • fwchain: nome della catena del firewall per aggiungere/eliminare/cercare, default: INPUT

  • masklimit: dimensione massima dei range IP che possono essere aggiunti, default: /21

  • precheck: controlla se l'IP che sta per essere aggiunto è già nel firewall o parte di un range più grande aggiunto, potrebbe essere un po' lento su firewall grandi in IPv6 (~25 sec. per cercare 500 range IP per server), default: true

  • protected: abilita i range protetti aggiunti, default: true

  • protectedranges: range IP che sono esclusi dalla funzione 'add', solitamente i range di proprietà della rete locale, default: "172.16.0.0/12 10.0.0.0/8 192.168.0.0/16"

  • pythonbin: posizione del binario Python utilizzato, default: /usr/bin/python3

  • servers: imposta i server che usano solo iptables, default: "lvs01.example.com lvs02.example.com lvs03.example.com lvs04.example.com"

  • Le funzioni IPv6 sono contrassegnate dal suffisso '6'

Utilizzo

Quando inserisci IP/range con i seguenti comandi, fallo in notazione CIDR, questa viene validata e non accetta nient'altro.

add:

root@kitploit:~
cfc.sh add n.n.n.n/NN '<commento opzionale>'
cfc6.sh add <range_IPv6> '<commento opzionale>'

Aggiunge l'IP(range) dato ai firewall con l'azione configurata per tutto il traffico proveniente da quella sorgente. Crea un commento di default con la data corrente, puoi aggiungere un commento opzionale usando apici singoli per aggiungere un motivo o il proprietario di quel range come esempio. Può anche essere cercato successivamente su quel commento.

addstring:

root@kitploit:~
cfc.sh addstring <protocollo>:<porta_dest> <stringa>
cfc6.sh addstring <protocollo>:<porta_dest> <stringa>

Aggiunge un blocco di stringa a iptables per un certo protocollo e porta di destinazione. Un esempio pratico potrebbe essere bloccare un User-Agent destinato a un gruppo di webserver, quindi una connessione tcp destinata alla porta 80 con la stringa: Firefox/28.0, tutto il traffico in ingresso corrispondente a quella stringa verso la porta tcp 80 verrebbe bloccato:

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

Attenzione, questo può avere grandi conseguenze se la stringa non è abbastanza specifica!

clean:

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

Pulisce tutte le regole del firewall CFC più vecchie di n giorni. Tieni presente che dipende dal formato data predefinito! Quindi se hai personalizzato il formato della data, dovrai regolare lo script nella sezione 'clean'.

del:

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

Elimina l'IP(range)/regola dato dai firewall.

delstring:

root@kitploit:~
cfc.sh delstring <protocollo>:<porta_dest> <stringa>
cfc6.sh delstring <protocollo>:<porta_dest> <stringa>

Elimina un blocco di stringa in iptables per un certo protocollo e porta di destinazione.

find:

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

Cerca nei firewall la stringa data (senza distinzione maiuscole/minuscole), può essere (parte di) un IP / range / commento.

findip:

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

Cerca nei firewall se l'IP(range) dato è già parte di una regola aggiunta, potrebbe essere un po' lento su firewall grandi per IPv6 (~25 sec. per cercare 500 range IP per server). IPv4 utilizza invece il matching del prefisso sulla forma binaria dell'IP che è circa il 500% più veloce, questo viene utilizzato anche per le funzionalità precheck e protectedranges.

ipsethostinit:

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

Aggiunge una lista IPSET all'host specificato e una regola iptables che vi fa riferimento utilizzando i parametri definiti in cfc.cfg. Questo deve essere fatto solo una volta prima di aggiungere le regole del firewall.

last:

root@kitploit:~
cfc.sh last <numero_di_voci_più_recenti>
cfc6.sh last <numero_di_voci_più_recenti>

Mostra le ultime voci aggiunte ai firewall.

Scarica lo strumento