UFW o firewall semplice è un'applicazione per gestire un firewall basato su iptables su Ubuntu. UFW è lo strumento di configurazione del firewall predefinito per Ubuntu Linux e fornisce un modo intuitivo per configurare il firewall, il comando UFW è proprio come la lingua inglese, quindi i comandi sono facili da ricordare. Il firewall UFW supporta IPv4 e IPv6.
UFW fornisce anche un'applicazione GUI, se usi un desktop GNOME puoi installare gufw , oppure se usi un desktop KDE puoi installare kcm-ufw .
Prerequisiti
- Versione Ubuntu tra il 15.04 e il 21.04. Anche le versioni più recenti di Ubuntu dovrebbero funzionare.
- privilegi di root
Che cosa è trattato in questo tutorial?
- Installazione di UFW.
- La sintassi di base del comando UFW.
- Il comando UFW Consenti e Nega.
- Comandi UFW avanzati.
- Eliminazione di una regola in UFW.
- Disabilita e ripristina UFW.
Installazione di UFW
Per impostazione predefinita, UFW dovrebbe essere già installato su Ubuntu 20.04. Puoi verificarlo con il comando:
which ufw
Se non restituisce il percorso del comando, installa UFW con il seguente comando apt:
sudo apt-get install ufw
Per i seguenti comandi, usa sudo o privilegi di root. Puoi diventare utente root con il comando:
sudo -s
Quindi esegui il comando seguente per abilitare UFW:
ufw enable
Risultato:
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup
Il comando UFW di base
Il comando "ufw enable" attiverà UFW con le regole predefinite. Puoi verificare che UFW sia in esecuzione eseguendo questo comando:
ufw status verbose
Risultato:
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip
Se desideri disabilitare o disattivare UFW, puoi utilizzare:
ufw disable
Risultato:
Firewall stopped and disabled on system startup
Il comando UFW Consenti e Nega
UFW negherà tutte le connessioni in entrata dopo averlo attivato. Quindi la prima cosa da fare è consentire l'accesso SSH per il server se si desidera gestire il sistema in remoto. Il comando "ufw allow sshport" consentire l'accesso tramite SSH, sostituire SSHPORT con la porta del servizio SSH, la porta SSH predefinita è 22.
ufw allow 22
Risultato:
Rules updated
Rules updated (v6) #For IPv6
Se desideri consentire le connessioni in entrata sulla porta 22 solo per TCP, aggiungi alla fine del comando "/tcp " come mostrato nell'esempio seguente.
ufw allow 22/tcp
Quando il servizio a cui si desidera consentire l'accesso è in ascolto sulla porta predefinita, è possibile utilizzare il nome del servizio anziché il numero di porta. Ciò semplifica l'apertura della porta poiché potresti non conoscerla. UFW cercherà il numero di porta corretto in /etc/services per te.
Questo comando aprirà la porta SSH predefinita:
ufw allow ssh
Ora controlla la regola con:
ufw status
2. UFW Nega comando
Il comando "deny" funziona in modo simile al comando "allow" e viene utilizzato per chiudere una porta nel firewall:
Nega con l'opzione Porta:
ufw deny 80
Risultato:
Rule added
Rule added (v6)
Esempio per "nega" con il nome del servizio. In questo esempio, bloccherò http port/80:
ufw deny http
Nota:
Puoi vedere tutte le porte e i loro nomi di servizio nel file "/etc/services" .
Comandi UFW avanzati
Ora approfondiremo la sintassi dei comandi UFW, impareremo come consentire intervalli di parti (ad esempio per le porte FTP passive e come consentire l'accesso da un solo IP o sottorete.
Puoi consentire un intervallo di porte in UFW. Alcuni servizi come FTP o IRC utilizzano una gamma di porte per comunicare con i propri client.
Per questo esempio consentiremo l'intervallo di porte utilizzato da ircd sul mio server l'intervallo è dalla porta 6660 a 6670:
sudo ufw allow 6660:6670/tcp
sudo ufw allow 6660:6670/udp
Il comando consentirà connessioni alle porte 6660-6670 tramite protocollo TCP e UDP.
E puoi aggiungere un IP specifico per consentire l'accesso a tutti i servizi aggiungendo "da " opzione. Ciò è utile, ad esempio, se si dispone di un IP statico a casa o in ufficio e si desidera consentire l'accesso a tutti i servizi sul server da lì. Il comando seguente consentirà all'IP 192.168.1.106 di accedere a tutte le porte del server:
ufw allow from 192.168.1.106
Risultato:
Rule added
Se desideri consentire tutti gli indirizzi IP sulla tua sottorete, puoi aggiungere la sottorete IP (intervallo di indirizzi IP) al comando UFW in questo modo:
ufw allow from 192.168.1.1/24
Risultato:
WARN: Rule changed after normalization
Rule added
Se desideri consentire l'accesso a una porta solo da un IP specifico, puoi combinare i comandi UFW che abbiamo appreso sopra.
Ad esempio solo IP 192.168.1.106 può accedere alla porta ssh 22 tcp e altri IP verranno rifiutati da quella porta, puoi usare il seguente comando:
ufw allow from 192.168.1.106 proto tcp to any port 22
Risultato:
Rule added
Se desideri consentire tutto il traffico sulla porta 80, puoi utilizzare questo comando:
ufw allow to any port 80
Eliminazione di una regola firewall UFW
In questa sezione imparerai come eliminare una regola salvata in UFW. Puoi usare "elimina " comando per eliminare la regola ufw. Digita il comando "ufw delete " e seguito dall'opzione che desideri eliminare, consenti o nega .
Ecco alcuni esempi:
Eliminazione della regola SSH consentita con il nome del servizio:
ufw delete allow ssh
Risultato:
Rule deleted
Rule deleted (v6)
Quel comando cancellerà la regola "consenti ssh ". fai attenzione, non chiuderti fuori dal server.
Elimina la regola "nega" sulla porta 80:
ufw delete deny 80
Risultato:
Rule deleted
Rule deleted (v6)
Se si dispone di una regola complessa, esiste un modo semplice per identificare ed eliminare la regola in base al relativo ID regola. Esegui il comando seguente per ottenere un elenco di tutte le regole con i relativi ID:
ufw status numbered
Risultato:
Status: active
To Action From
-- ------ ----
[ 1] 22/tcp ALLOW IN Anywhere
[ 2] 22/tcp (v6) ALLOW IN Anywhere (v6)
Ora elimina la regola SSH solo per IPv6 utilizzando il numero della regola:
ufw delete 2
Disabilita e ripristina UFW
Se desideri disattivare UFW senza eliminare le regole , puoi utilizzare "disabilita " comando:
ufw disable
Risultato:
Firewall stopped and disabled on system startup
Se vuoi disattivare completamente l'UFW ed eliminare tutte le regole , puoi utilizzare "reimposta " comando:
ufw reset
Risultato:
Resetting all rules to installed defaults. This may disrupt existing ssh
connections. Proceed with operation (y|n)? y
Backing up 'after6.rules' to '/etc/ufw/after6.rules.20150918_190351'
Backing up 'user.rules' to '/lib/ufw/user.rules.20150918_190351'
Backing up 'after.rules' to '/etc/ufw/after.rules.20150918_190351'
Backing up 'before.rules' to '/etc/ufw/before.rules.20150918_190351'
Backing up 'before6.rules' to '/etc/ufw/before6.rules.20150918_190351'
Backing up 'user6.rules' to '/lib/ufw/user6.rules.20150918_190351'
Conclusione
UFW (Uncomplicated Firewall) è lo strumento di configurazione del firewall predefinito in Ubuntu. I comandi UFW sono simili alla lingua inglese, questo li rende facili da usare e ricordare. Questo tutorial UFW è una guida per iniziare con questo simpatico strumento firewall se vuoi saperne di più su UFW, puoi andare al wiki di Ubuntu o alla ufw-manpage.