Sysadmin

UFW Firewall Ubuntu: Configurazione Completa dalla A alla Z (2026)

UFW Firewall Ubuntu: Configurazione Completa dalla A alla Z (2026)

Proteggere un server Linux, specialmente un’istanza Ubuntu, è una priorità assoluta per qualsiasi SysAdmin. Un firewall è la prima linea di difesa, un punto di controllo essenziale che determina quale traffico può raggiungere il tuo sistema e quale no. Ignorare questa componente significa lasciare la porta aperta a scansioni, attacchi brute force e tentativi di exploit. Ogni giorno, migliaia di bot scansionano la rete alla ricerca di server esposti; non essere un bersaglio facile.

In questa guida, esploreremo in dettaglio UFW (Uncomplicated Firewall), lo strumento predefinito e intuitivo di Ubuntu per la gestione delle regole Netfilter. Ti fornirò una metodologia passo-passo per configurare UFW efficacemente, garantendo la sicurezza del tuo sistema senza compromettere la funzionalità. Dalla configurazione di base alle regole avanzate, fino alla gestione dei log e alla risoluzione degli errori comuni, sarai in grado di proteggere le tue macchine Ubuntu con fiducia. Il mio obiettivo è farti padroneggiare UFW, trasformando la complessa gestione del firewall in un processo semplice e robusto.

Prerequisiti / Ambiente di test

Per seguire questa guida, avrai bisogno di un server o una macchina virtuale con Ubuntu (preferibilmente l’ultima LTS, ad esempio Ubuntu 22.04) e accesso con privilegi di sudo. Tutti i comandi verranno eseguiti da terminale. Assicurati di avere una connessione SSH funzionante prima di iniziare, per evitare di bloccarti fuori dal sistema durante la configurazione delle regole. La keyword principale di questo articolo è ufw configurare ubuntu, e la applicheremo a ogni aspetto della configurazione.

Installare e abilitare UFW

UFW è solitamente preinstallato su Ubuntu, ma è sempre buona norma verificarne la presenza e, se necessario, installarlo. Una volta installato, puoi abilitarlo. Ricorda: abilitare UFW senza aver configurato almeno la regola SSH può bloccarti fuori dal sistema.

sudo apt install ufw
sudo ufw enable

Politica di default (deny in, allow out)

La strategia di sicurezza più robusta per un firewall è la politica di default “deny incoming” e “allow outgoing”. Questo significa che UFW bloccherà automaticamente tutto il traffico in ingresso che non sia esplicitamente consentito da una regola, mentre permetterà tutto il traffico in uscita. Questo approccio garantisce che il tuo server non esporrà servizi indesiderati e che le tue applicazioni potranno comunicare verso l’esterno senza restrizioni.

sudo ufw default deny incoming
sudo ufw default allow outgoing

Permettere SSH (regola essenziale prima di abilitare)

Questo è il passaggio CRITICO. Prima di abilitare UFW dopo aver impostato la politica di default deny incoming, devi assolutamente consentire l’accesso SSH. Se non lo fai, una volta abilitato il firewall, perderai l’accesso remoto al tuo server. Se la tua porta SSH non è la 22 (best practice di sicurezza), dovrai specificare la porta.

sudo ufw allow ssh
# Oppure, se SSH è sulla porta 2222:
sudo ufw allow 2222/tcp

Permettere porte specifiche (HTTP, HTTPS, custom)

Una volta garantito l’accesso SSH, puoi iniziare a consentire il traffico per i servizi che il tuo server deve offrire. Esempi comuni includono i server web (HTTP e HTTPS) o altre applicazioni che ascoltano su porte specifiche.

Per HTTP (porta 80/tcp):

sudo ufw allow 80/tcp

Per HTTPS (porta 443/tcp):

sudo ufw allow 443/tcp

Per una porta custom, ad esempio un’applicazione che ascolta sulla 8080/tcp:

sudo ufw allow 8080/tcp

Bloccare un IP specifico

Se identifichi un indirizzo IP malevolo o che sta generando traffico indesiderato, puoi bloccarlo completamente. Questa è una misura temporanea utile per mitigare attacchi specifici.

sudo ufw deny from 192.168.1.100

Permettere solo un IP specifico su una porta

Per servizi particolarmente sensibili, potresti voler consentire l’accesso solo da un indirizzo IP specifico. Ad esempio, per un database MySQL (porta 3306) accessibile solo da un server applicativo con IP 10.0.0.5:

sudo ufw allow from 10.0.0.5 to any port 3306

Rate limiting con UFW

UFW offre una funzionalità di rate limiting utile per mitigare attacchi brute force, specialmente su servizi come SSH. La regola limit consente di limitare le connessioni da un singolo IP se questo tenta di connettersi troppo frequentemente in un breve lasso di tempo. Ad esempio, per SSH:

sudo ufw limit ssh

Questa regola bloccherà un IP se tenta di stabilire più di 6 connessioni nell’arco di 30 secondi. È un’ottima misura preventiva.

Vedere le regole attive

È fondamentale poter visualizzare lo stato attuale del firewall e le regole configurate. Il comando ufw status verbose ti fornisce una panoramica completa:

sudo ufw status verbose

Questo output ti mostrerà le regole attive, la politica di default e lo stato (attivo/inattivo) del firewall. [Leggi anche: Hardening SSH su Linux: 10 Impostazioni Essenziali]

Eliminare una regola

Le esigenze di rete cambiano, e potresti aver bisogno di rimuovere regole obsolete o non più necessarie. Puoi eliminare una regola specificandola per intero o tramite il suo numero. Per eliminare una regola specifica (ad esempio, quella che permette HTTP):

sudo ufw delete allow 80/tcp

Per eliminare una regola tramite il suo numero, prima elenca le regole con i numeri:

sudo ufw status numbered

Poi elimina la regola specificando il numero (ad esempio, per eliminare la regola numero 3):

sudo ufw delete 3

Log UFW — abilitare e leggere

Monitorare i log del firewall è cruciale per la sicurezza. I log di UFW ti mostrano quali connessioni sono state bloccate o permesse, fornendo preziose informazioni su tentativi di accesso non autorizzati o problemi di connettività. Puoi abilitare il logging di UFW a diversi livelli (low, medium, high, full):

sudo ufw logging on

I log di UFW vengono scritti nel file /var/log/ufw.log (o in /var/log/syslog a seconda della configurazione del tuo sistema di logging). Puoi leggerli con tail o grep:

tail -f /var/log/ufw.log
grep UFW /var/log/syslog

UFW con applicazioni (profili)

UFW ha la capacità di lavorare con profili di applicazioni, rendendo la gestione delle regole più semplice per servizi comuni. Molte applicazioni forniscono un profilo UFW che definisce le porte necessarie. Puoi vedere i profili disponibili con:

sudo ufw app list

Per abilitare un profilo, ad esempio per OpenSSH:

sudo ufw allow OpenSSH

Questo è equivalente a sudo ufw allow ssh ma usa il nome del servizio. È un modo più semantico per gestire le regole.

Errori comuni e troubleshooting

Anche con uno strumento semplice come UFW, possono verificarsi errori. Il più comune, come già accennato, è bloccarsi fuori dal server SSH. Se succede, e hai accesso fisico o tramite console virtuale, puoi disabilitare UFW con sudo ufw disable e ricominciare. Un altro errore è non specificare il protocollo (TCP/UDP) per una porta, il che può portare a regole meno restrittive del previsto. Assicurati sempre di specificare /tcp o /udp se non vuoi che la regola si applichi a entrambi. Se una regola non funziona come previsto, controlla l’ordine delle regole (UFW le elabora in sequenza) e assicurati che non ci siano regole più generiche che sovrascrivono quelle specifiche. Infine, consulta sempre la documentazione ufficiale di UFW per i dettagli più aggiornati: https://ubuntu.com/server/docs/security-firewall

Conclusioni con takeaway operativi

Configurare UFW in modo corretto è un passo fondamentale per la sicurezza di qualsiasi server Ubuntu. Abbiamo visto come installarlo, impostare una politica di default restrittiva, e aggiungere regole specifiche per i servizi essenziali come SSH, HTTP e HTTPS. Abbiamo anche imparato a gestire gli accessi da specifici IP, a implementare il rate limiting per proteggere da attacchi brute force e a monitorare l’attività del firewall tramite i log.

I takeaway operativi sono chiari: adotta sempre una politica di “deny incoming” di default, permetti solo il traffico strettamente necessario, e testa sempre le regole prima di applicarle in produzione. La gestione proattiva del firewall, unita a un monitoraggio costante dei log, ti permetterà di mantenere i tuoi server sicuri e resilienti contro le minacce esterne. Padroneggiare UFW è un’abilità essenziale nel toolkit di ogni SysAdmin che si occupa di ufw configurare ubuntu per ambienti professionali.

Condividi questo articolo:

Scritto da

Rosario Giordano

Rosario Giordano è System Administrator e consulente IT specializzato in cybersecurity e cloud, con oltre 20 anni di esperienza nella gestione di infrastrutture Linux enterprise. Le sue aree di competenza includono hardening di SSH, piattaforme Kubernetes, database PostgreSQL, ambient i virtualizzati VMware e Proxmox, nonché la conformità ai framework di sicurezza NIS2 e ISO 27001.