GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come configurare UFW Firewall su Ubuntu 18.04

In questo articolo, ti mostrerò come configurare il firewall UFW su Ubuntu 18.04. In Ubuntu, il firewall predefinito è UFW, abbreviazione di Uncomplicated FireWall . È in circolazione dal rilascio di Ubuntu 18.04 ed è stato creato per semplificare la configurazione di iptables che era piuttosto complessa.

Quando si utilizza qualsiasi operazione, un firewall è una delle funzionalità più importanti da considerare per quanto riguarda la sicurezza del sistema. Un firewall è uno scudo o una barriera che esiste tra il tuo PC e Internet e blocca il traffico non autorizzato come l'accesso remoto al tuo sistema e aiuta a proteggere dal codice dannoso che attraversa costantemente Internet. Un firewall può essere hardware o software. Un firewall hardware è un sistema firewall autonomo che viene inserito nella rete per aggiungere uno strato protettivo controllando il flusso di traffico da e verso la rete e per impedire agli utenti di accedere a siti indesiderati. Un firewall software è integrato in sistemi operativi come Linux e Windows e aiuta a proteggere il tuo sistema da attacchi esterni.

Leggi anche :

  • Come abilitare, negare, consentire, eliminare regole su Ubuntu UFW Firewall

Installazione di UFW

Per impostazione predefinita, Ubuntu 18.04 viene fornito con ufw installato. Tuttavia, per i sistemi precedenti, dovresti eseguire il comando seguente

apt-get install ufw

Per verificare se ufw è in esecuzione, esegui

systemctl status ufw

Se è in esecuzione, dovresti ottenere l'output di seguito

● ufw.service - Uncomplicated firewall
   Loaded: loaded (/lib/systemd/system/ufw.service; enabled; vendor preset: enab
   Active: active (exited) since Tue 2018-04-10 22:03:30 UTC; 4min 1s ago
  Process: 376 ExecStart=/lib/ufw/ufw-init start quiet (code=exited, status=0/SU
 Main PID: 376 (code=exited, status=0/SUCCESS)
    Tasks: 0
   Memory: 0B
      CPU: 0
   CGroup: /system.slice/ufw.service

Apr 10 22:03:30 ip-172-31-41-251 systemd[1]: Started Uncomplicated firewall.
Warning: Journal has been rotated since unit was started. Log output is incomple

Per verificare se è attivo o inattivo esegui

ufw status

Se è inattivo, otterrai l'output di seguito

Status: inactive

Per attivare UFW con il set di regole predefinito eseguito

ufw enable

Per disabilitare il firewall esegui

ufw disable

Impostazione delle regole ufw predefinite

Per impostare regole predefinite che consentano tutti i protocolli in uscita, accedi come root ed esegui

ufw default allow outgoing

Risultato

Default outgoing policy changed to 'allow'
(be sure to update your rules accordingly)

Per negare tutte le connessioni in entrata, esegui

ufw default deny incoming

Risultato

Default outgoing policy changed to 'deny'
(be sure to update your rules accordingly)

I comandi precedenti consentiranno tutte le connessioni in uscita e negheranno o bloccheranno tutte le connessioni in entrata.
A questo punto, potresti voler abilitare il firewall, tuttavia prima di farlo, consenti prima ssh. Ciò impedisce la disconnessione dal server poiché in precedenza abbiamo specificato la negazione di tutte le connessioni in entrata.

Per consentire ssh, esegui

ufw allow 22/tcp

In uscita

Skipping adding existing rule
Skipping adding existing rule (v6)

L'accesso ssh può essere consentito anche dal nome del servizio,

ufw allow ssh

Se vuoi rimuovere la regola esegui

ufw delete allow 22/ssh

Per negare un servizio per nome esegui

ufw deny service-name

Ad esempio

ufw deny ssh

Per vedere tutti i servizi che possono essere consentiti o negati nel sistema, controlla il /etc/services file.

cat /etc/services | less

Risultato di esempio

ftp-data        20/tcp
ftp             21/tcp
fsp             21/udp          fspd
ssh             22/tcp                          # SSH Remote Login Protocol
ssh             22/udp
telnet          23/tcp
smtp            25/tcp          mail
time            37/tcp          timserver
time            37/udp          timserver
rlp             39/udp          resource        # resource location
nameserver      42/tcp          name            # IEN 116
whois           43/tcp          nicname
tacacs          49/tcp                          # Login Host Protocol (TACACS)
tacacs          49/udp
re-mail-ck      50/tcp                          # Remote Mail Checking Protocol
re-mail-ck      50/udp
domain          53/tcp                          # Domain Name Server
domain          53/udp

Avvio del firewall ufw

Per attivare il firewall accedi come root ed esegui il seguente comando:

 ufw enable

Ti potrebbe essere richiesto con il seguente avviso

Command may disrupt existing ssh connections. Proceed with operation (y|n)? y

Se selezioni sì, otterrai l'output di seguito

Firewall is active and enabled on system startup

Il firewall è ora attivo e si avvierà ad ogni avvio. Possiamo esaminare di nuovo le regole del firewall:

ufw status

L'output ora mostrerà lo stato del firewall più i servizi/porte consentiti

Risultato

ufw status active
Status: active

To                         Action      From
--                         ------      ----
22/tcp                     ALLOW       Anywhere
22                         ALLOW       Anywhere
22/tcp (v6)                ALLOW       Anywhere (v6)
22 (v6)                    ALLOW       Anywhere (v6)

Consenti connessioni in ufw

Puoi facilmente consentire la connessione in entrata su porta/intervallo, nome dell'applicazione, indirizzo IP/sottorete in ufw.
Dai un'occhiata agli esempi qui sotto.

a) Consentire applicazioni per nome o numero di porta/intervallo

ufw allow service-name

O

ufw allow port/tcp

Ad esempio

 ufw allow ssh or  ufw allow 22/tcp
 ufw allow ftp or ufw allow 21/tcp

sudo ufw consenti 1500:2000/tcp

b) Consente l'indirizzo IP/sottoreti

I comandi seguenti consentono connessioni da IP o sottoreti specifici e possiamo anche utilizzare numeri di porta specifici.
Per consentire connessioni da un indirizzo IP specifico

ufw allow from 10.200.20.45

Per specificare un IP a cui è consentito connettersi a una porta specifica eseguita

ufw allow from 10.200.20.45 to any port 22

Quanto sopra consente all'indirizzo IP 10.200.20.45 di connettersi solo tramite ssh

Per consentire a una determinata sottorete di IP di connettersi al sistema, utilizzare la notazione CIDR per specificare una maschera di rete

ufw allow from 192.168.1.0/24

Quanto sopra consente agli IP da 192.168.1 a 192.168.1.254 di connettersi al sistema
Puoi anche specificare la porta di destinazione della sottorete

ufw allow from 192.168.1.0/24 to any port 22

Ciò implica che gli IP da 192.168.1 a 192.168.1.254 possono connettersi al sistema tramite la porta 22 che è ssh.

c) Consenti in base al nome dell'interfaccia

Se dobbiamo consentire le connessioni tramite il nome dell'interfaccia è possibile

ufw allow in on eth0 to any port 80

Come negare le connessioni in ufw

Per impostazione predefinita ufw è configurato per negare tutte le connessioni in entrata.

a) Indirizzo IP/sottorete

Se vogliamo bloccare l'accesso a un indirizzo IP specifico, possiamo farlo seguendo il comando:

ufw deny from 192.168.1.15

Questo bloccherà tutte le connessioni in entrata dall'host con indirizzo IP 192.168.1.15

Avanti, blocchiamo l'intera sottorete:

ufw deny from 150.165.125.0/24

Questo bloccherà tutte le connessioni provenienti da questa sottorete.

b) Nega porte e applicazioni

Per negare una porta o un servizio

ufw deny 80/tcp

O

ufw deny http

sudo ufw nega 1500:2000/tcp *Questo negherà gli intervalli di porte*

Eliminare e tenere traccia delle regole

Quando aggiungi molte regole, puoi tenerne traccia meglio visualizzandone i numeri. Puoi ottenere numeri con il seguente comando:

ufw status numbered

Risultato

ufw status numbered
Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 22/tcp                     ALLOW IN    Anywhere
[ 2] 22                         ALLOW IN    Anywhere
[ 3] 80/tcp                     ALLOW IN    Anywhere
[ 4] 53/tcp                     ALLOW IN    Anywhere
[ 5] 22/tcp (v6)                ALLOW IN    Anywhere (v6)
[ 6] 22 (v6)                    ALLOW IN    Anywhere (v6)
[ 7] 80/tcp (v6)                ALLOW IN    Anywhere (v6)
[ 8] 53/tcp (v6)                ALLOW IN    Anywhere (v6)

Diciamo che vogliamo eliminare le regole numero 2. Lo facciamo seguendo il comando:

 ufw delete 2

Nota :

Dopo l'eliminazione della seconda regola nel firewall, la regola 3 sarà ora la nuova regola 2. Quindi, se desideri eliminare la regola 3 corrente, eliminerai utilizzando il numero 2.

 ufw delete allow http

Reimpostare le regole

Se non sei soddisfatto delle regole attuali e vuoi ricominciare da capo, puoi farlo eseguendo

ufw reset

Registrazione e ricarica

Per abilitare la registrazione usa il seguente comando:

 ufw logging on

Se vuoi disabilitare la registrazione per qualche motivo (non consigliato), puoi usare questo comando:

sudo ufw disconnessione

I registri sono per impostazione predefinita in /var/log/ufw.log Per vederli in tempo reale, usa tail -f in questo modo:

tail -f /var/log/ufw.log /pre>

You will see all actions of firewall in that file. If you need to reload firewall for some reason, because you changed some config files manually, use following command.
 ufw reload

Se vuoi vedere le regole aggiunte di recente

 ufw show added

File di configurazione UFW

Per la maggior parte degli scenari, puoi utilizzare i comandi del terminale, ma in alcuni casi vorresti modificare direttamente i file di configurazione. L'ufw ha più file di configurazione, vale a dire:

/etc/ufw/before.rules
/etc/ufw/before6.rules

Questi due file contengono regole che vengono valutate prima di tutte le regole aggiunte dai comandi ufw. Quindi, se vuoi che una regola venga applicata prima, la vuoi lì. Il primo file è per ipv4 e il secondo è per v6

/etc/ufw/after.rules
/etc/ufw/after6.rules

Questi vengono valutati dopo le regole di comando ufw. Sono utili da usare se si desidera ignorare alcune regole e applicarle in ogni caso. Di nuovo, due file, per due versioni del protocollo IP attualmente in uso.

/etc/default/ufw

Qui abbiamo i moduli del kernel utilizzati da ufw, così come altre impostazioni generali. Puoi modificare qualsiasi di questi file di configurazione solo come root e puoi utilizzare qualsiasi editor di testo che ti piace.

Evita di aggiungere regole duplicate
Successivamente osserviamo il meccanismo contro le regole duplicate. Per prima cosa apriremo la porta 101

 sudo ufw allow 100

Nota che il comando senza protocollo come sopra apre sia la porta UDP che TCP. Quindi eseguiamo di nuovo lo stesso comando per vedere cosa succede

 ufw allow 100

Risultato

Skipping adding existing rule
Skipping adding existing rule (v6)

Non ci consente di aggiungere una regola duplicata. Va bene, ma c'è ancora la possibilità di aggiungere una regola duplicata, con questa serie di comandi:

 ufw allow 101/udp
 ufw allow 101/tcp

Dopo aver consentito sia TCP che UDP sulla porta 101, possiamo ancora aggiungere la porta 101 aperta per tutti i protocolli e questa è una regola duplicata poiché la porta 101 viene aperta due volte, una per ogni protocollo e una per tutti.

ufw allow 101

Questo lascia spazio all'errore e generalmente non è una buona pratica. Dobbiamo annullare tutti e tre i comandi con il comando ufw delete se vogliamo tornare all'impostazione predefinita per la porta 101.

Per chiudere alcune porte, esegui gli stessi comandi, invece consenti, digita nega.

In questo articolo, abbiamo trattato l'utilizzo di UFW, un firewall semplice utilizzato per consentire o limitare il traffico. È un firewall molto potente per regolare il traffico verso il tuo sistema. Sentiti libero di provare i comandi sul tuo sistema.


Ubuntu
  1. Come configurare HAProxy in Ubuntu 16.04

  2. Come configurare un firewall con UFW in Ubuntu \ Debian

  3. Come configurare un firewall con UFW su Ubuntu 16.04

  4. Come configurare un firewall con UFW su Ubuntu 18.04

  5. Come configurare UFW Firewall su Ubuntu 18.04

Come configurare UFW Firewall su Debian 11

Come installare UFW Firewall su Ubuntu 16.04 LTS

Come configurare UFW Firewall su Ubuntu 18.04 LTS

Come configurare UFW Firewall su Ubuntu 20.04 LTS

Come configurare il firewall con UFW su Ubuntu Linux

Come configurare UFW Firewall su Ubuntu 20.04