Launcher Prodotti Bitnami Documentazioneimaxe CLI Blog Contatti
imaxe firewall firewall v1.0.0

Il tuo firewall, sotto controllo

Consulta lo stato di ufw, blocca IP abusivi manualmente e apri o chiudi porte con un solo comando. I ban automatici li mette fail2ban; questo è per i tuoi blocchi manuali e le regole delle porte.

$ imaxe firewall block 203.0.113.10 --reason "abuso" --ttl 24h
Versione
v1.0.0
Sottocomandi
9
Config
/etc/imaxe/firewall.yml
Richiede root
Base
ufw + fail2ban

Cosa fa questo modulo #

Il firewall è la porta del server: decide quali connessioni entrano e quali vengono respinte. Su queste macchine quel lavoro lo fa ufw (il firewall di Ubuntu), e il modulo firewall ti dà un comando pratico per gestirlo senza memorizzare la sintassi di ufw.

Con esso puoi vedere a colpo d'occhio lo stato del firewall (attivo, policy predefinita e regole), bloccare manualmente un IP o un intervallo che ti sta dando fastidio, liberare quel blocco quando non serve più, e aprire o chiudere porte mantenendo la configurazione in sincronia con ciò che ufw applica.

Blocchi manuali, non automatici

I ban automatici per tentativi di intrusione (forza bruta di SSH, ecc.) li gestisce fail2ban per conto suo. Questo modulo lavora con i tuoi blocchi manuali: block, unblock e flush toccano solo ciò che aggiungi manualmente e non interferiscono mai con i ban di fail2ban.

Guida rapidaattività passo passo

Attività comuni #

Scegli cosa vuoi fare. Ogni ricetta porta il comando già scritto — basta cambiare l'IP o la porta con i tuoi e premere Copia.

1

Vedere lo stato del firewall

Verifica se è attivo, la sua policy predefinita e quante regole ha.

Connettiti via SSH al tuo server e richiedi il riepilogo:

terminal
$ sudo imaxe firewall status

Lo vuoi per uno script? Aggiungi --json e avrai la stessa informazione leggibile dalla macchina:

terminal
$ sudo imaxe firewall status --json
Vedi se il firewall è attivo, la policy predefinita, il n° di regole e quanti blocchi manuali hai impostato.
2

Bloccare un IP abusivo

Taglia l'accesso a un IP o intervallo che ti sta infastidendo.

Blocca un IP specifico, annotando il motivo per ricordartene poi:

terminal
$ sudo imaxe firewall block 203.0.113.10 --reason "abuso"

Vuoi solo un blocco temporaneo? Assegnagli una durata con --ttl e si toglierà da solo. Puoi anche bloccare un intero intervallo in notazione CIDR:

terminal
$ sudo imaxe firewall block 203.0.113.10 --reason "abuso" --ttl 24h
$ sudo imaxe firewall block 203.0.113.0/24 --reason "scansione"
Quell'IP o intervallo non può più connettersi al server. Se hai impostato --ttl, il blocco scade da solo allo scadere del termine.
3

Vedere quali IP ho bloccato

Ripassa l'elenco dei blocchi manuali che hai attivi.

Elenca gli IP e gli intervalli che hai bloccato manualmente (ricorda: i ban di fail2ban non compaiono qui):

terminal
$ sudo imaxe firewall blocked
Vedi ogni blocco manuale con il suo motivo e, se ce l'ha, quando scade. Ce n'è qualcuno di troppo? Vai a Sbloccare un IP.
4

Sbloccare un IP

Libera un blocco manuale che non serve più.

Libera l'IP o l'intervallo esatto che hai bloccato (così come compare in blocked):

terminal
$ sudo imaxe firewall unblock 203.0.113.10
Quell'indirizzo torna a potersi connettere. Il resto dei blocchi e i ban di fail2ban restano intatti.
5

Aprire o chiudere una porta

Lascia passare un nuovo servizio o chiudi uno che non offri più.

Apri una porta (con un commento per sapere a cosa serve). Puoi limitare chi entra con --from:

terminal
$ sudo imaxe firewall allow 443/tcp --comment "https"
$ sudo imaxe firewall allow 5432/tcp --from 203.0.113.0/24 --comment "postgres interno"

Chiudi una porta che non usi più:

terminal
$ sudo imaxe firewall deny 8080/tcp
La regola viene applicata in ufw e riflessa in firewall.yml. Verificalo con imaxe firewall rules list.
Attenzione a chiudere le porte

Non chiudere la porta 22 (SSH) se sei connesso via SSH: perderesti l'accesso al server. Il modulo mantiene 22/tcp consentita per impostazione predefinita proprio per evitare quello spavento. E ricorda che flush cancella tutti i tuoi blocchi manuali in una volta.

Riferimento CLIcomandi, flag e file

Sinossi #

uso
imaxe firewall <subcomando> [<ip>|<puerto>] [flags]

Tutti i sottocomandi richiedono privilegi di root (usa sudo) perché operano su ufw e scrivono in /etc/imaxe/. Aggiungi --json a status, blocked o rules list per ottenere un output leggibile dalla macchina, adatto allo scripting.

Sottocomandi #

SottocomandoCosa faFlag rilevanti
statusStato del firewall: attivo, policy predefinita, n° di regole e blocchi manuali.--json
blockedElenca gli IP/intervalli bloccati manualmente (non include i ban di fail2ban).--json
blockBlocca un IP o intervallo manualmente, con motivo e durata opzionali.--reason, --ttl
unblockLibera un blocco manuale. Non tocca i ban di fail2ban.
flushCancella tutti i blocchi manuali (distruttivo). Non tocca i ban di fail2ban.--yes
rules listElenca le regole delle porte (porte consentite, origini).--json
allowApre una porta e la riflette nella config.--from, --comment
denyChiude una porta e la riflette nella config.--from
reloadRicarica ufw (riapplica le sue regole attive).

rules raggruppa la gestione delle regole delle porte; per ora il suo unico sottocomando è rules list.

Argomenti e flag #

Argomento / FlagTipoPredefinitoDescrizione
<ip>[/cidr] obbl.stringIP o intervallo CIDR su cui operare in block e unblock (per es. 203.0.113.10 o 203.0.113.0/24).
<port>[/proto] obbl.stringPorta su cui operare in allow e deny (per es. 443 o 443/tcp).
--reasonstringIn block: motivo del blocco (informativo).
--ttlduratapermanenteIn block: durata del blocco (per es. 24h). Per impostazione predefinita, permanente.
--fromcidrqualsiasiIn allow/deny: limita l'origine a un CIDR specifico.
--commentstringIn allow: commento descrittivo della regola.
--yesboolfalseIn flush: conferma senza chiedere (operazione distruttiva).
--jsonboolfalseIn status/blocked/rules list: emette il risultato come JSON su stdout.

File e percorsi #

PercorsoContenuto
/etc/imaxe/firewall.ymlConfigurazione del modulo: porte consentite che allow/deny mantengono in sincronia con ufw.

Esempio di firewall.yml:

/etc/imaxe/firewall.yml
allow:
  - { port: 22, proto: tcp, comment: "ssh" }
  - { port: 443, proto: tcp, comment: "https" }

Codici di uscita e log #

Ogni esecuzione restituisce un codice che puoi verificare con echo $? — utile per concatenare negli script:

0OKOperazione completata correttamente.
1ERRErrore generico non classificato. Controlla il log.
2USAGEArgomenti non validi o mancanti.
3NOTFOUNDL'IP o la regola indicata non esiste.

Segui lo stato e le regole in tempo reale mentre esegui il debug:

terminal
$ sudo imaxe firewall status
$ sudo imaxe firewall rules list

Risoluzione dei problemi #

SintomoCausa probabileSoluzione
Esce NOTFOUND (codice 3) allo sbloccoL'IP non coincide esattamente con il blocco impostato (manca il /cidr, per esempio).Esegui imaxe firewall blocked e copia la voce così com'è per l'unblock.
Ho bloccato un IP ma continua a risultare bannato dopo unblockIl blocco l'ha messo fail2ban, non tu.Questo modulo libera solo blocchi manuali; i ban automatici li gestisce fail2ban separatamente.
Ho aperto una porta ma non entra trafficoLa regola è in ufw ma un firewall esterno (security group) è ancora chiuso.Verifica con imaxe firewall rules list e apri la porta anche presso il tuo provider cloud.
Ho perso l'accesso SSH dopo aver toccato le regoleLa porta 22 è stata chiusa o limitata.Accedi dalla console del provider e torna a consentire 22/tcp con imaxe firewall allow 22/tcp.

Bloccato con il modulo Firewall?

Scrivici allegando l'output di «imaxe <module> status --json» e ti rispondiamo in fretta.

Contatta il supporto