05 - Hosting Debian - Configurazione del Firewall
Sommario:
- Prerequisiti
- Installa UFW
- Controlla lo stato UFW
- Politiche predefinite UFW
- Profili applicativi
- Consenti connessioni SSH
- Abilita UFW
- Consenti connessioni su altre porte
- Apri la porta 80 - HTTP
- Apri la porta 443 - HTTPS
- Porta aperta 8080
- Consenti intervalli di porte
- Consenti indirizzi IP specifici
- Consenti indirizzi IP specifici su una porta specifica
- Consenti sottoreti
- Consenti connessioni a un'interfaccia di rete specifica
- Nega connessioni
- Elimina le regole UFW
- Disabilita UFW
- Ripristina UFW
- Conclusione
Debian include diversi pacchetti che forniscono strumenti per la gestione di un firewall con iptables installati come parte del sistema di base. Può essere complicato per i principianti imparare come utilizzare lo strumento iptables per configurare e gestire correttamente un firewall, ma UFW lo semplifica.
UFW (Uncomplicated Firewall) è un front-end intuitivo per la gestione delle regole del firewall di iptables e il suo obiettivo principale è quello di semplificare la gestione di iptables o come dice il nome senza complicazioni.
In questo tutorial, ti mostreremo come impostare un firewall con UFW su Debian 9.
Prerequisiti
Prima di procedere con questa esercitazione, assicurarsi che l'utente che ha effettuato l'accesso abbia i privilegi di sudo.
Installa UFW
UFW non è installato di default in Debian 9. Puoi installare il pacchetto
ufw
digitando:
Controlla lo stato UFW
Una volta completato il processo di installazione, è possibile verificare lo stato di UFW con il seguente comando:
sudo ufw status verbose
L'output sarà simile al seguente:
Status: inactive
UFW è disabilitato per impostazione predefinita. L'installazione non attiverà automaticamente il firewall per evitare un blocco dal server.
Se UFW è attivato, l'output sarà simile al seguente:
Politiche predefinite UFW
Per impostazione predefinita, UFW bloccherà tutte le connessioni in entrata e consentirà tutte le connessioni in uscita. Ciò significa che chiunque tenti di accedere al proprio server non sarà in grado di connettersi se non si apre specificamente la porta, mentre tutte le applicazioni e i servizi in esecuzione sul server saranno in grado di accedere al mondo esterno.
Le politiche di default sono definite nel
/etc/default/ufw
e possono essere cambiate usando il
sudo ufw default
Le politiche del firewall sono la base per la creazione di regole più dettagliate e definite dall'utente. Nella maggior parte dei casi, i criteri predefiniti UFW iniziali sono un buon punto di partenza.
Profili applicativi
Quando si installa un pacchetto con
apt
, verrà aggiunto un profilo dell'applicazione nella directory
/etc/ufw/applications.d
che descrive il servizio e contiene le impostazioni UFW.
Per elencare tutti i profili applicazione disponibili sul tipo di sistema:
sudo ufw app list
A seconda dei pacchetti installati sul tuo sistema, l'output sarà simile al seguente:
Available applications: DNS IMAP IMAPS OpenSSH POP3 POP3S Postfix Postfix SMTPS Postfix Submission…
Per trovare ulteriori informazioni su un profilo specifico e regole incluse, utilizzare il comando seguente:
sudo ufw app info OpenSSH
Profile: OpenSSH Title: Secure shell server, an rshd replacement Description: OpenSSH is a free implementation of the Secure Shell protocol. Port: 22/tcp
A L'output sopra ci dice che il profilo OpenSSH apre la porta
22
.
Consenti connessioni SSH
Prima di abilitare il firewall UFW, dobbiamo prima consentire le connessioni SSH in entrata.
Se ti stai connettendo al tuo server da una posizione remota, il che è quasi sempre il caso e abiliti il firewall UFW prima di consentire esplicitamente le connessioni SSH in entrata, non sarai più in grado di connetterti al tuo server Debian.
Per configurare il firewall UFW per consentire le connessioni SSH in entrata, eseguire il comando seguente:
sudo ufw allow OpenSSH
Rules updated Rules updated (v6)
Se il server SSH è in ascolto su una porta diversa dalla porta predefinita 22, sarà necessario aprire quella porta.
Ad esempio, il server ssh è in ascolto sulla porta
8822
, quindi è possibile utilizzare il comando seguente per consentire le connessioni su quella porta:
Abilita UFW
Ora che il firewall UFW è configurato per consentire connessioni SSH in entrata, è possibile abilitarlo eseguendo:
sudo ufw enable
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y Firewall is active and enabled on system startup
Sarai avvisato che l'attivazione del firewall potrebbe interrompere le connessioni ssh esistenti, basta digitare
y
e
Enter
.
Consenti connessioni su altre porte
A seconda delle applicazioni in esecuzione sul tuo server e delle tue esigenze specifiche dovrai anche consentire l'accesso in entrata ad alcune altre porte.
Di seguito sono riportati alcuni esempi di come consentire le connessioni in entrata ad alcuni dei servizi più comuni:
Apri la porta 80 - HTTP
Le connessioni HTTP possono essere consentite con il seguente comando:
sudo ufw allow
Invece del profilo
http
, è possibile utilizzare il numero di porta,
80
:
Apri la porta 443 - HTTPS
Le connessioni HTTP possono essere consentite con il seguente comando:
sudo ufw allow
Per ottenere lo stesso invece di
https
puoi usare il numero di porta,
443
:
Porta aperta 8080
Consenti intervalli di porte
Con UFW puoi anche consentire l'accesso agli intervalli di porte. Quando si consentono intervalli di porte con UFW, è necessario specificare il protocollo,
tcp
o
udp
.
Ad esempio, per consentire porte da
7100
a
7200
su
tcp
e
udp
, eseguire il comando seguente:
sudo ufw allow 7100:7200/tcp
sudo ufw allow 7100:7200/udp
Consenti indirizzi IP specifici
sudo ufw allow from 64.63.62.61
Consenti indirizzi IP specifici su una porta specifica
Per consentire l'accesso su una porta specifica, supponiamo che la porta 22 dalla tua macchina di lavoro con indirizzo IP 64.63.62.61 usi il seguente comando:
sudo ufw allow from 64.63.62.61 to any port 22
Consenti sottoreti
Il comando per consentire la connessione a una sottorete di indirizzi IP è lo stesso di quando si utilizza un singolo indirizzo IP, l'unica differenza è che è necessario specificare la maschera di rete. Ad esempio, se si desidera consentire l'accesso per gli indirizzi IP che vanno da 192.168.1.1 a 192.168.1.254 alla porta 3360 (MySQL) è possibile utilizzare questo comando:
sudo ufw allow from 192.168.1.0/24 to any port 3306
Consenti connessioni a un'interfaccia di rete specifica
Per consentire l'accesso su una porta specifica, supponiamo che la porta 3360 sia solo per l'interfaccia di rete specifica
eth2
, utilizzare
allow in on
e il nome dell'interfaccia di rete:
sudo ufw allow in on eth2 to any port 3306
Nega connessioni
Il criterio predefinito per tutte le connessioni in entrata è impostato su
deny
che significa che UFW bloccherà tutte le connessioni in entrata a meno che non si apra specificamente la connessione.
Supponiamo che tu abbia aperto le porte
80
e
443
e che il tuo server sia sotto attacco dalla rete
23.24.25.0/24
. Per negare tutte le connessioni da
23.24.25.0/24
, utilizzare il comando seguente:
sudo ufw deny from 23.24.25.0/24
sudo ufw deny from 23.24.25.0/24 to any port 80
sudo ufw deny from 23.24.25.0/24 to any port 443
La scrittura delle regole di negazione è la stessa della scrittura delle regole di autorizzazione, è sufficiente sostituire
allow
con
deny
.
Elimina le regole UFW
Esistono due modi diversi per eliminare le regole UFW, in base al numero della regola e specificando la regola effettiva.
L'eliminazione delle regole UFW in base al numero della regola è più semplice, soprattutto se non si conosce UFW.
Per eliminare una regola in base a un numero di regola, devi prima trovare il numero della regola che desideri eliminare. Per farlo, esegui il seguente comando:
sudo ufw status numbered
Status: active To Action From -- ------ ---- 22/tcp ALLOW IN Anywhere 80/tcp ALLOW IN Anywhere 8080/tcp ALLOW IN Anywhere
Per eliminare la regola numero 3, la regola che consente le connessioni alla porta 8080, è possibile utilizzare il comando seguente:
sudo ufw delete 2
Il secondo metodo consiste nell'eliminare una regola specificando la regola effettiva. Ad esempio, se hai aggiunto una regola per aprire la porta
8069
, puoi eliminarla con:
Disabilita UFW
Se per qualsiasi motivo desideri interrompere UFW e disattivare tutte le regole eseguite:
sudo ufw disable
In seguito, se si desidera riattivare UTF e attivare tutte le regole, digitare:
Ripristina UFW
Il ripristino di UFW disabiliterà UFW ed eliminerà tutte le regole attive. Ciò è utile se si desidera ripristinare tutte le modifiche e ricominciare da capo.
Per ripristinare UFW è sufficiente digitare il seguente comando:
Conclusione
Hai imparato come installare e configurare il firewall UFW sul tuo computer Debian 9. Assicurarsi di consentire tutte le connessioni in entrata necessarie per il corretto funzionamento del sistema, limitando al contempo tutte le connessioni non necessarie.
uww firewall iptables debian securityCome elencare ed eliminare le regole del firewall ufw
UFW è l'acronimo di Uncomplicated Firewall ed è un frontend intuitivo per la gestione delle regole del firewall iptables (netfilter). In questo tutorial, tratteremo come elencare ed eliminare le regole del firewall UFW.
Come impostare un firewall con firewalld su centos 7
FirewallD è una soluzione firewall completa che gestisce le regole iptables del sistema e fornisce un'interfaccia D-Bus per operare su di esse. In questo tutorial, ti mostriamo come impostare un firewall con FirewallD sul tuo sistema CentOS 7 e ti spieghiamo i concetti di base di FirewallD.
Come impostare un firewall con ufw su Ubuntu 18.04
Per impostazione predefinita, Ubuntu viene fornito con uno strumento di configurazione del firewall chiamato UFW (Uncomplicated Firewall). UFW è un front-end intuitivo per la gestione delle regole del firewall di iptables e il suo obiettivo principale è quello di semplificare la gestione di iptables o come dice il nome senza complicazioni.