Un firewall sensato è la prima linea di difesa del tuo computer contro le intrusioni nella rete. Quando sei a casa, probabilmente sei dietro un firewall integrato nel router fornito dal tuo provider di servizi Internet. Quando sei lontano da casa, però, l'unico firewall che hai è quello in esecuzione sul tuo computer, quindi è importante configurare e controllare il firewall sul tuo computer Linux. Se gestisci un server Linux, è altrettanto importante sapere come gestire il tuo firewall in modo da poterlo proteggere dal traffico indesiderato sia in locale che in remoto.
Installa un firewall
Molte distribuzioni Linux vengono fornite con un firewall già installato e tradizionalmente era iptables . È estremamente efficace e personalizzabile, ma può essere complesso da configurare. Fortunatamente, gli sviluppatori hanno prodotto diversi frontend per aiutare gli utenti a controllare il proprio firewall senza scrivere lunghe regole di iptables.
Su Fedora, CentOS, Red Hat e distribuzioni simili, il software firewall installato per impostazione predefinita è firewalld , configurato e controllato con firewall-cmd comando. Su Debian e sulla maggior parte delle altre distribuzioni, firewalld è disponibile per l'installazione dal repository del software. Ubuntu viene fornito con Uncomplicated Firewall (ufw), quindi per utilizzare firewalld, devi abilitare l'universo deposito:
$ sudo add-apt-repository universe
$ sudo apt install firewalld
Devi anche disattivare ufw:
$ sudo systemctl disable ufw
Non c'è motivo non usare ufw. È un eccellente frontend firewall. Tuttavia, questo articolo si concentra su firewalld a causa della sua ampia disponibilità e integrazione in systemd, che viene fornito con quasi tutte le distribuzioni.
Indipendentemente dalla tua distribuzione, affinché un firewall sia efficace, deve essere attivo e deve essere caricato all'avvio:
$ sudo systemctl enable --now firewalld
Informazioni sulle zone firewall
Firewalld mira a rendere la configurazione del firewall il più semplice possibile. Lo fa stabilendo zone . Una zona è un insieme di regole sensate e comuni che soddisfano le esigenze quotidiane della maggior parte degli utenti. Ce ne sono nove per impostazione predefinita:
- fidato: Tutte le connessioni di rete sono accettate. Questa è l'impostazione del firewall meno paranoica e dovrebbe essere utilizzata solo in un ambiente affidabile, come un laboratorio di prova o in una casa familiare in cui tutti i membri della rete locale sono noti per essere amichevoli.
- casa, lavoro, interni: In queste tre zone vengono accettate la maggior parte delle connessioni in entrata. Ciascuno di essi esclude il traffico sulle porte che di solito non prevedono attività. Ognuno di questi è un'impostazione ragionevole per l'uso in un ambiente domestico dove non c'è motivo di aspettarsi che il traffico di rete oscuri le porte e generalmente ti fidi degli altri utenti della rete.
- pubblico: Per l'uso in aree pubbliche. Questa è un'impostazione paranoica, pensata per i momenti in cui non ti fidi di altri computer sulla rete. Sono accettate solo connessioni in entrata comuni selezionate e per lo più sicure.
- dmz: DMZ sta per zona demilitarizzata. Questa zona è destinata ai computer accessibili pubblicamente, che si trovano sulla rete esterna di un'organizzazione con accesso limitato alla rete interna. Per i personal computer, questa di solito non è un'area utile, ma è un'opzione importante per determinati tipi di server.
- esterno: Per l'uso su reti esterne con masquerading abilitato (il che significa che gli indirizzi della tua rete privata sono mappati e nascosti dietro un indirizzo IP pubblico). Simile alla zona dmz, sono accettate solo le connessioni in entrata selezionate, incluso SSH.
- blocco: Sono possibili solo le connessioni di rete avviate all'interno di questo sistema e tutte le connessioni di rete in entrata vengono rifiutate con un icmp-host-prohibited Messaggio. Si tratta di un'impostazione estremamente paranoica ed è un'opzione importante per determinati tipi di server o personal computer in un ambiente non affidabile o ostile.
- rilascia: Tutti i pacchetti di rete in entrata vengono eliminati senza risposta. Sono possibili solo connessioni di rete in uscita. L'unica impostazione più paranoica di questa è spegnere il WiFi e scollegare il cavo Ethernet.
Puoi leggere ogni zona e qualsiasi altra zona definita dalla tua distribuzione o amministratore di sistema guardando i file di configurazione in /usr/lib/firewalld/zones . Ad esempio, ecco la zona FedoraWorkstation fornita con Fedora 31:
$ cat /usr/lib/firewalld/zones/FedoraWorkstation.xml
<?xml version="1.0" encoding="utf-8"?>
<zone>
<short>Fedora Workstation</short>
<description>Unsolicited incoming network packets are rejected from port 1 to 1024, except for select network services. Incoming packets that are related to outgoing network connections are accepted. Outgoing network connections are allowed.</description>
<service name="dhcpv6-client"/>
<service name="ssh"/>
<service name="samba-client"/>
<port protocol="udp" port="1025-65535"/>
<port protocol="tcp" port="1025-65535"/>
</zone>
Ottieni la tua zona attuale
Puoi vedere in quale zona ti trovi in qualsiasi momento con le --get-active-zones opzione:
$ sudo firewall-cmd --get-active-zones
In risposta, si riceve il nome della zona attiva insieme all'interfaccia di rete ad essa assegnata. Su un laptop, questo di solito significa che hai una scheda WiFi nella zona predefinita:
FedoraWorkstation
interfaces: wlp61s0
Cambia la tua zona attuale
Per cambiare la tua zona, riassegna la tua interfaccia di rete a un'altra zona. Ad esempio, per modificare l'esempio wlp61s0 tessera alla zona pubblica:
$ sudo firewall-cmd --change-interface=wlp61s0 \
--zone=public
Più risorse Linux
- Comandi Linux cheat sheet
- Cheat sheet sui comandi avanzati di Linux
- Corso online gratuito:Panoramica tecnica RHEL
- Cheat sheet della rete Linux
- Cheat sheet di SELinux
- Cheat sheet dei comandi comuni di Linux
- Cosa sono i container Linux?
- I nostri ultimi articoli su Linux
Puoi cambiare la zona attiva per un'interfaccia in qualsiasi momento e per qualsiasi motivo, sia che tu stia uscendo in un bar e senti il bisogno di aumentare la politica di sicurezza del tuo laptop, sia che tu stia andando a lavorare e hai bisogno di aprire alcune porte per accedere alla intranet o per qualsiasi altro motivo. Le opzioni per firewall-cmd completamento automatico quando premi la scheda chiave, quindi finché ricordi le parole chiave "cambia" e "zona", puoi inciampare nel comando finché non lo impari a memoria.
Ulteriori informazioni
C'è molto di più che puoi fare con il tuo firewall, inclusa la personalizzazione delle zone esistenti, l'impostazione di una zona predefinita e altro ancora. Più ti senti a tuo agio con i firewall, più sicure sono le tue attività online, quindi abbiamo creato un cheat sheet per una consultazione facile e veloce.