Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Da Windows a Linux: configurare il firewall UFW

Configurare UFW (Uncomplicated FireWall) e gestire le regole del front-end firewall di riferimento per le distribuzioni Linux
Configurare UFW (Uncomplicated FireWall) e gestire le regole del front-end firewall di riferimento per le distribuzioni Linux
Link copiato negli appunti

Eccoci in questa ottava, ed ultima, parte delle nostre guide riguardanti la migrazione da Windows a Linux. Questa volta tratteremo nello specifico la configurazione di UFW (Uncomplicated FireWall). Si tratta del firewall di riferimento per innumerevoli distribuzioni, i professionisti e non del settore IT interessati a passare stabilmente ai sistemi del "Pinguino" dovrebbero conoscerne almeno i comandi base.

Per semplicità anche in questa parte prenderemo come distribuzione di riferimento Linux Mint, ma UFW può essere installato e configurato anche su altri sistemi.

Configurazione base di UFW su Linux

UFW è classificabile come un front-end per iptables. Tale progetto nasce per consentire l'amministrazione delle regole firewall di iptables in modo semplice ed immediato. Di base UFW genera delle regole sia per gli indirizzi IPv4 che per gli IPv6, dunque non si avranno problemi con quest'ultima versione dell'Internet Protocol.

UFW si trova preinstallato su: Debian, Ubuntu e Linux Mint anche se non è attivato di default. Possiamo quindi verificare il suo stato aprendo bash e digitando questo comando:

sudo ufw status

come output dovremmo ricevere il messaggio "Status: inactive".

ufw

Prima di abilitare UFW è bene sapere quali porte sono aperte nel sistema. Tale dato può essere ottenuto sfruttando il pratico tool nmap:

sudo apt install nmap -y

sudo nmap IPdelcomputer

Se lo preferiamo, possiamo eseguire la scansione solo sulla rete locale con questo pratico comando:

sudo nmap localhost

nmap

Di base nmap esegue una scansione unicamente delle porte TCP. Tuttavia se necessitate di operare o di interagire anche con le porte UDP potete adottare tale opzione:

sudo nmap -sU IPdelcomputer

Se desiderate una scansione più celere potete utilizzare il tool netstat per il controllo delle porte UDP aperte:

sudo netstat -lnpu

Per scegliere quali porte aprire in base alle varie esigenze e necessità, si deve utilizzare tale sintassi:

sudo ufw allow Numeroporta/tipodiprotocollo

Ad esempio se dovete gestire un server OpenSSH vi consigliamo di aprire la porta TCP numero 22:

sudo ufw allow 22/tcp

Se non ricordate il numero di porta corretto di un programma potete anche indicare solo il nominativo:

sudo ufw allow ssh

Inoltre in qualsiasi configurazione è sicuramente utile abilitare anche il traffico sui protocolli HTTP e HTTPS per navigare su Internet tramite il browser Web:

sudo ufw allow 80/tcp

sudo ufw allow 443/tcp

Ovviamente se conoscete già tutte le porte che vi servono potete concatenarle tutte in un unico comando:

sudo ufw allow 80,443,22/tcp

Abilitare UFW

A questo punto, dopo aver aperto le porte che servono al nostro workflow, possiamo finalmente attivare UFW. Tuttavia prima di abilitarlo è sempre bene avviare la funzione di logging, cosi da poter leggere i log del firewall in caso di necessità o malfunzionamenti:

sudo ufw logging on

Di base il log level è impostato su "low" tuttavia se preferiamo possiamo settare vari livelli di dettaglio, ad esempio ecco la modalità "medium":

sudo ufw logging medium

e il livello massimo:

sudo ufw logging high

I log sono visualizzabili recandoci direttamente nella directory /var/log/ufw.log oppure tramite cat:

cat /var/log/ufw.log

Adesso procediamo all'avvio di UFW:

sudo ufw enable

Per evitare conflitti con le impostazioni manuali di iptables queste verranno disabilitate non appena UFW entra in funzione.

A questo punto possiamo visualizzare tutte le porte aperte ed i vari dettagli della configurazione con tale comando:

sudo ufw status verbose

UFW è sostanzialmente un servizio animato dal gestore dei demoni systemd, quello di riferimento del panorama delle distribuzioni Linux, quindi per avviare UFW al boot del sistema possiamo sfruttare la CLI di systemd:

sudo systemctl enable ufw

Cancellare le regole di UFW

Ogni regola impostata in UFW ha un suo specifico numero, per ottenere la lista completa e numerata basta scrivere in bash:

sudo ufw status numbered

Quindi se desiderate cancellare una specifica regola del firewall bisogna utilizzare tale sintassi:

sudo ufw delete NumerodellaRegola

Ovviamente sostituite il numero della regola in base a ciò che desiderate effettivamente eliminare.

Profilo delle applicazioni di UFW

Diversi applicativi Linux vengono distribuiti con un apposito profilo per UFW. Per conoscere i profili presenti nel sistema scriviamo questo comando nella shell:

sudo ufw app list

Ad esempio, per avere maggiori dettagli su OpenSSH scriveremo:

sudo ufw app info SSH

Riceveremo in output la descrizione del software e le porte TCP o UDP associate.

Creare un blacklist di indirizzi IP tramite UFW

In alcuni casi risulta utile bloccare determinati intervalli di indirizzi IP per ragioni di sicurezza o per ottemperare a delle policy aziendali. Eseguire tale configurazione è molto semplice e può essere gestita in base alle diverse porte TCP/UDP. Ecco un esempio:

sudo ufw insert 1 deny in from IPdabloccare to any port 25 proto tcp

In questo caso abbiamo bloccato un singolo IP sulla porta 25.

Mentre se desideriamo impedire l'accesso ad un range di IP la sintassi è la seguente:

sudo ufw insert 1 deny in from IPdabloccare/24 to any port 25 proto tcp

Ovviamente tale regola può essere applicata anche a tutte le porte TCP/UDP:

sudo ufw insert 1 deny in from IPdabloccare

Creare un whitelist di indirizzi IP tramite UFW

È possibile anche l'operazione opposta, ovvero generare una whitelist di indirizzi IP. Per esempio se disponiamo di un server OpenSSH e desideriamo che solo alcuni computer, dotati quindi di specifici IP, possano connettersi ad un determinato PC possiamo operare in questo modo:

sudo ufw insert 1 allow in from IPdaautorizzare to any port 22 proto tcp

Ovviamente dopo aver generato la whitelist bisogna cancellare la precedente regola di UFW che consente a tutti l'accesso alla porta 22. Dunque richiediamo la lista delle regole al firewall:

sudo ufw status numbered

e cancelliamo quella inerente alla porta 22:

sudo ufw delete numerodellaregola

Reset delle regole di UFW

Se volete resettare completamente UFW e cancellare tutte le regole ed i setting potete usare infine questo comando:

sudo ufw reset

Ti consigliamo anche