Il Domain Name System (DNS) funziona come una rubrica: i resolver DNS traducono i nomi di dominio (es. novemila.org), leggibili dall’utente, in indirizzi IP, utilizzabili dai computer. Per impostazione predefinita, le query e le risposte DNS vengono trasmesse in chiaro tramite il protocollo UDP. Questa modalità espone i dati a potenziali intercettazioni da parte di governi, provider di servizi internet (ISP), attori malintenzionati o soggetti in grado di monitorare il traffico.
Per mitigare tali rischi, sono stati sviluppati due standard: DNS over TLS (DoT) e DNS over HTTPS (DoH). Entrambi i protocolli criptano il traffico DNS, garantendo così la sicurezza e la riservatezza delle informazioni trasmesse.
DNS over TLS
DNS over TLS è un protocollo che aggiunge la crittografia TLS sopra UDP, utilizzato tradizionalmente per le query DNS. DoT opera sulla porta 853, distinguendosi così dal traffico HTTPS.
DNS over HTTPS
DNS over HTTPS crittografa le query DNS utilizzando il protocollo HTTPS, trasmettendole tramite TCP sulla porta 443. Le richieste DNS inviate tramite DoH si nascondono con il resto del traffico HTTPS, rendendo più difficile l’identificazione e l’analisi da parte di osservatori esterni.
Configurazione di DoT in OPNsense
Accedere alla sezione Services > Unbound DNS > DNS over TLS e cliccare sul pulsante + per aggiungere un nuovo server DoT. Di seguito viene riportato un esempio di configurazione utilizzando i server DNS di Quad9, ma sono compatibili anche altri server DoT, come NextDNS e Cloudflare. Tutti i parametri si possono trovare nella documentazione di Quad9:
Si consiglia di aggiungere anche il server secondario 149.112.112.112 e, qualora la rete utilizzi IPv6, gli indirizzi IPv6 corrispondenti.
DNS di sistema
Per garantire l’uso esclusivo di DoT per tutte le query DNS della propria rete, accertarsi di non avere alcun server DNS specificato nella pagina System > Settings > General. Inoltre, è fondamentale deselezionare le opzioni “Allow DNS server list to be overridden by DHCP/PPP on WAN” e “Do not use the local DNS service as a nameserver for this system”.
Test della configurazione
È possibile verificare se le query DNS vengono indirizzate sulla porta 853 impostando, da Unbound DNS > Advanced, il livello di log a 2 o superiore. Assicurarsi che la casella Log Queries sia selezionata.
Dopo aver configurato il logging, spostarsi in Unbound DNS > Log File per osservare le risposte dai server DNS di Quad9 sulla porta 853 (il contenuto delle risposte non sarà visibile, in quanto crittografato).
Oppure, il sito dnscheck.tools permette di sapere quale DNS resover é utilizzato per el query DNS.
Qualora si opti per l’utilizzo di
NextDNScome provider DoT, è possibile gestire liste di blocco (ad esempio per pubblicità, traccianti o domini malevoli) direttamente dal pannello di amministrazione. Si sconsiglia di aggiungere ulteriori liste di blocco inServices > Unbound DNS > Blocklistssu OPNsense, al fine di evitare sovrapposizioni e potenziali conflitti. È buona pratica mantenere una configurazione minima, riducendo il rischio di problemi durante la navigazione.
Crowdsec
CrowdSec è un Intrusion Prevention System (IPS) open source che raccoglie in modo collaborativo informazioni su diverse tipologie di minacce, al fine di monitorare e proteggere la rete da attacchi noti.
A differenza di altre piattaforme IPS, che utilizzano regole specifiche per identificare e bloccare traffico malevolo, CrowdSec calcola un punteggio di reputazione per gli indirizzi IP, impiegando l’intelligence condivisa dalla comunità: il firewall si limita a bloccare tale elenco di IP noti come malevoli, evitando l’elaborazione di numerose regole.
Architettura
CrowdSec è composto da due elementi principali: l’agent e il bouncer. Gli agent monitorano i file di log alla ricerca di attività dannose e riportano informazioni alla comunità di CrowdSec. Il bouncer è invece responsabile del blocco degli indirizzi IP.
Riferirsi all’articolo sul
VPSper maggiori informazioni e per conoscere i vari comandi da terminale.
Installazione e configurazione
Per configurare CrowdSec, accedere a System > Firmware > Plugins e installare il plugin os-crowdsec, assicurandosi che i community plugins siano abilitati.
Accedere a Services > CrowdSec > Settings e abilitare le seguenti opzioni:
CrowdSec genera automaticamente floating rules per bloccare il traffico da e verso indirizzi IP segnalati come malevoli, inseriti negli alias crowdsec_blocklists e crowdsec6_blocklists, anch’essi generati in modo automatico.
È possibile verificare il corretto funzionamento del sistema tentando di pingare un indirizzo IP presente nell’alias crowdsec_blocklists: il traffico verso tali indirizzi verrà bloccato dalle floating rules impostate.
Si consiglia di aggiungere il seguente Cronjob da System > Settings > Cron per aggiornare periodicamente le Unbound Blocklists: