In questa lezione impari a
- spiegare che cos'è pfSense e su cosa si basa
- conoscere le funzioni principali: firewall, NAT, VPN, DHCP, DNS, DMZ
- confrontare pfSense con OPNsense e con i firewall commerciali
pfSense è il firewall che userai in laboratorio per proteggere e organizzare una rete. In questa lezione vediamo che cos'è e cosa sa fare; dalla prossima lo installiamo.
Cos'è pfSense?
pfSense è una distribuzione firewall/router open source basata sul sistema operativo FreeBSD, progettata specificamente per funzionare come perimetro di sicurezza di rete. Nato nel 2004 come fork del progetto m0n0wall, pfSense è oggi uno dei firewall più utilizzati al mondo, sia in ambito aziendale che domestico, con milioni di installazioni attive in tutto il pianeta.
A differenza dei firewall commerciali che costano migliaia di euro e richiedono costose licenze annuali, pfSense è completamente gratuito e offre funzionalità di livello enterprise paragonabili a quelle delle soluzioni commerciali. Può essere installato su qualsiasi hardware compatibile x86-64, da un vecchio PC riciclato fino a server dedicati di ultima generazione, rendendolo accessibile a tutti.
Perché "pfSense"?. Il nome deriva da "pf" (Packet Filter), il firewall integrato in FreeBSD e OpenBSD, e "sense" che richiama il concetto di "sensibilità" alla sicurezza di rete. Il progetto è mantenuto da Netgate, azienda americana che offre anche appliance hardware preconfigurate per chi preferisce soluzioni "chiavi in mano".

Funzionalità principali di pfSense
pfSense non è solo un semplice firewall: è una piattaforma di sicurezza di rete completa che integra decine di funzionalità avanzate. Vediamo nel dettaglio le caratteristiche che lo rendono così potente e versatile.
1. Firewall stateful (stateful packet filtering)
Il cuore di pfSense è il suo firewall stateful basato su pf (Packet Filter). A differenza dei firewall stateless che analizzano ogni pacchetto in modo isolato, un firewall stateful tiene traccia dello stato delle connessioni, permettendo regole più intelligenti e sicure.
Cosa significa in pratica? Quando un client interno apre una connessione verso Internet (esempio: browser che carica una pagina web), pfSense ricorda questa connessione e permette automaticamente il traffico di ritorno, senza bisogno di creare regole specifiche per ogni risposta. Questo approccio è:
- Più sicuro: Previene attacchi di tipo spoofing e connessioni non sollecitate
- Più efficiente: Riduce il numero di regole necessarie
- Più semplice: La configurazione è intuitiva e meno soggetta a errori
Le regole firewall di pfSense supportano:
- Filtraggio per indirizzo IP sorgente/destinazione (singoli IP, subnet, range)
- Filtraggio per porta TCP/UDP (singole porte, range, alias)
- Filtraggio per protocollo (TCP, UDP, ICMP, ESP, AH, GRE, etc.)
- Scheduling (regole attive solo in determinati orari/giorni)
- Rate limiting (limitazione numero connessioni per IP)
- Traffic shaping integration (prioritizzazione traffico)
- Logging granulare (log dettagliati per debugging e audit)
2. NAT (network address translation)
Il NAT è la funzionalità che permette a più dispositivi di una rete locale (LAN) di condividere un singolo indirizzo IP pubblico (WAN). pfSense supporta diverse modalità di NAT:
Outbound NAT (NAT in uscita)
Traduce automaticamente gli IP privati della LAN (es. 192.168.1.x) nell'IP pubblico della WAN quando i client accedono a Internet. pfSense offre due modalità:
- Automatic outbound NAT: Configurazione automatica (consigliato per la maggior parte degli utenti)
- Manual/Hybrid outbound NAT: Controllo granulare per scenari avanzati (multi-WAN, VPN, etc.)
Port forwarding (inbound NAT)
Permette di rendere accessibili da Internet servizi ospitati nella LAN o DMZ. Esempio classico: server web interno raggiungibile dall'esterno sulla porta 443. pfSense crea automaticamente le regole firewall corrispondenti,.
NAT 1:1 (One-to-one NAT)
Associa un IP pubblico a un IP privato in modo bidirezionale. Utile quando si dispone di più IP pubblici e si vuole dedicarne uno specifico a un server particolare (es. mail server, web server di produzione).
NPt (network prefix translation: IPv6)
Equivalente del NAT per IPv6, traduce i prefissi di rete mantenendo l'end-to-end connectivity.
3. VPN (virtual private network)
pfSense integra nativamente tre protocolli VPN diversi, permettendo connessioni sicure sia per utenti remoti (Road Warrior) che per collegamenti site-to-site tra sedi.
OpenVPN
Il protocollo VPN più popolare e versatile. Caratteristiche:
- SSL/TLS encryption: Sicurezza con certificati X.509
- Multi-piattaforma: Client disponibili per Windows, macOS, Linux, iOS, Android
- Flessibilità: Supporta TCP e UDP, multiple porte, tunnel multipli
- Wizard integrato: Setup guidato in pochi passaggi
- Client Export Package: Esporta configurazioni .ovpn pronte all'uso
- Autenticazione avanzata: LDAP, RADIUS, certificati, OTP (One-Time Password)
IPsec
Protocollo VPN standard industriale, ideale per:
- Site-to-Site VPN: Connessioni permanenti tra uffici/datacenter
- Interoperabilità: Compatibile con firewall/router di altri vendor (Cisco, Fortinet, etc.)
- Prestazioni: Spesso più veloce di OpenVPN su hardware con accelerazione hardware
- Mobile IPsec: Supporto nativo per client iOS/Android/Windows
WireGuard
Il protocollo VPN di nuova generazione (disponibile come package):
- Velocissimo: Prestazioni superiori a OpenVPN e IPsec
- Codice minimale: Superficie d'attacco ridotta = maggiore sicurezza
- Crittografia moderna: ChaCha20, Curve25519, BLAKE2s
- Configurazione semplice: Poche righe rispetto a OpenVPN/IPsec
Quale VPN scegliere?. Raccomandazioni d'uso:
- OpenVPN: Road Warrior, massima compatibilità, certificati aziendali
- IPsec: Site-to-Site, interoperabilità con altri vendor, mobile devices
- WireGuard: Prestazioni massime, configurazioni semplici, uso moderno
4. Traffic shaping (QoS: quality of service)
Il Traffic Shaping permette di gestire intelligentemente la banda disponibile, garantendo che i servizi critici abbiano sempre la priorità. pfSense utilizza ALTQ (Alternate Queuing) con diversi scheduler:
- PRIQ (Priority Queuing): Code con priorità fissa (0-7)
- CBQ (Class Based Queuing): Gerarchico, supporta bandwidth sharing
- HFSC (Hierarchical Fair Service Curve): Il più avanzato, garantisce latenza e banda
- FAIRQ (Fair Queuing): Equa distribuzione tra flussi
- CoDel (Controlled Delay): Riduce il bufferbloat
Casi d'uso reali:
- VoIP/Video conferenze: Priorità massima per Teams, Zoom, telefonia → zero lag
- Gaming online: Bassa latenza garantita per giochi multiplayer
- Streaming: Banda minima garantita per Netflix/YouTube senza buffering
- Download P2P: Limitazione per non saturare la linea
- Filiali remote: Banda garantita per applicazioni business-critical
5. DHCP server & relay
pfSense include un DHCP server completo basato su ISC DHCP, con funzionalità enterprise:
- Multiple subnet: Un server DHCP per ogni interfaccia/VLAN
- Static Mappings: Prenotazioni basate su MAC address
- DHCP Options: NTP server, TFTP server, domain name, WINS, opzioni custom
- Lease management: Controllo tempi di lease (default, max)
- Failover: Configurazione HA con secondary DHCP server
- DHCP Relay: Inoltro richieste DHCP a server remoti
- Logging: Log completi di assegnazioni e rinnovi
6. DNS resolver (Unbound) & forwarder (dnsmasq)
pfSense offre due modalità di gestione DNS:
DNS resolver (Unbound): consigliato
Resolver DNS completo che interroga direttamente i root server:
- DNSSEC Validation: Verifica autenticità risposte DNS
- DNS over TLS (DoT): Query DNS cifrate verso upstream
- Query caching: Prestazioni ottimali con cache locale
- Host Overrides: DNS split-brain per domini interni
- Access Lists: Controllo granulare su chi può usare il DNS
- Python Module Support: Estensibile con moduli custom
DNS forwarder (dnsmasq)
Inoltra le query a DNS esterni (Google, Cloudflare, OpenDNS):
- Configurazione più semplice
- Integrazione DHCP (risolve hostname assegnati)
- Ideale per reti piccole/domestiche
7. DMZ e segmentazione di rete
pfSense permette di creare zone di sicurezza separate (DMZ, Guest Network, IoT Network, etc.) con isolamento completo tra di esse. Ogni zona può avere:
- Interfaccia fisica dedicata oppure VLAN
- Regole firewall specifiche
- DHCP server indipendente
- Traffic shaping personalizzato
- DNS e routing custom
Esempio architettura tipica:
Internet (WAN)
↓
pfSense Firewall
├─→ LAN (192.168.1.0/24) → Workstation aziendali
├─→ DMZ (10.0.10.0/24) → Web server, Mail server pubblici
├─→ GUEST (10.0.20.0/24) → WiFi ospiti (isolato da LAN)
├─→ IoT (10.0.30.0/24) → Telecamere, domotica (limitato)
└─→ MGMT (10.0.99.0/24) → Switch, AP, management devices
Regole:
✅ LAN → DMZ (gestione server)
✅ DMZ → Internet (aggiornamenti)
❌ DMZ → LAN (bloccato!)
❌ GUEST → LAN/DMZ (bloccato!)
✅ Internet → DMZ porta 80/443 (servizi pubblici)
8. Monitoring e reporting
pfSense include strumenti completi per il monitoraggio della rete:
- Dashboard in tempo reale: CPU, RAM, disco, traffico, stati, gateway status
- RRD Graphs: Grafici storici di traffico, pacchetti, qualità connessione
- pfTop: Visualizzazione connessioni attive in tempo reale
- Status → States: Tabella di stato con tutte le connessioni attive
- Packet Capture: Cattura pacchetti integrata (stile Wireshark)
- Log completi: System, Firewall, DHCP, DNS, VPN, etc.
- Remote Syslog: Invio log a server centralizzati (Graylog, ELK, Splunk)
Package opzionali per monitoring avanzato:
- ntopng: Deep packet inspection, analisi applicativa, geolocalizzazione
- Bandwidthd: Statistiche utilizzo banda per IP
- Darkstat: Monitoring leggero traffico di rete
- iftop: Monitoraggio banda in tempo reale
9. Multi-WAN e failover
pfSense supporta connessioni WAN multiple con:
- Load Balancing: Distribuzione traffico su più linee per massimizzare banda
- Failover: Cambio automatico alla linea backup se quella primaria cade
- Gateway Groups: Combinazione di load balancing + failover
- Policy Routing: Routing diverso per traffico diverso (es. VoIP su linea A, dati su linea B)
- Gateway Monitoring: Monitoraggio qualità linea (latency, packet loss)
10. Content filtering e IDS/IPS
Tramite package aggiuntivi, pfSense può bloccare contenuti dannosi e rilevare intrusioni:
- pfBlockerNG: Blocco geolocalizzato (paesi), liste malware, ad-blocking, DNS filtering
- Snort: IDS/IPS con migliaia di regole community e commerciali
- Suricata: IDS/IPS di nuova generazione, multi-threading, più veloce di Snort
- Squid + SquidGuard: Proxy HTTP con content filtering (categorie, parole chiave)
- E2Guardian: Content filtering avanzato per scuole/aziende
Video: ▶ Guarda: Come Configurare pfSense
pfSense vs alternative
Analizziamo come pfSense si posiziona rispetto ad altre soluzioni popolari:
pfSense vs OPNsense
OPNsense è un fork di pfSense nato nel 2015. Differenze principali:
| Aspetto | pfSense | OPNsense |
|---|---|---|
| Interfaccia | Bootstrap-based, classica | Più moderna, Material Design-inspired |
| Comunità | Molto più grande e storica | Crescente ma più piccola |
| Aggiornamenti | Stabili e testati | Più frequenti, a volte meno stabili |
| Package | Più ampia selezione | Selezione limitata ma curata |
| Supporto commerciale | Netgate (azienda consolidata) | Deciso Systems (più piccola) |
Verdetto: Entrambe sono ottime scelte. pfSense ha una comunità più grande e più risorse di apprendimento, OPNsense ha un'interfaccia più moderna. Per chi inizia, pfSense è consigliato per la documentazione superiore.
pfSense vs firewall commerciali
I vantaggi di pfSense sono già stati discussi. Quando considerare un firewall commerciale?
- Supporto 24/7 garantito: SLA con tempi di risposta contrattualizzati
- Compliance strict: Alcune certificazioni richiedono vendor specifici
- Integrazione ecosistema: Se hai già infrastruttura Cisco/Fortinet/etc.
- Responsabilità legale: Qualcuno da chiamare in causa in caso di breach
Tuttavia, per 90% delle PMI, pfSense offre tutto ciò che serve a costo zero.
Le parole che userai
Un piccolo glossario dei termini che tornano in tutte le lezioni.
| Termine | Che cosa vuol dire |
|---|---|
| Firewall | Il "muro di fuoco" che protegge la tua rete. Controlla tutto ciò che entra ed esce. |
| WAN (Wide Area Network) | Internet pubblico. La connessione che arriva dal tuo provider (Tim, Vodafone, Fastweb). |
| LAN (Local Area Network) | La tua rete interna. Tutti i dispositivi di casa/ufficio collegati tra loro. |
| DMZ (DeMilitarized Zone) | Una zona "cuscinetto" tra Internet e la tua LAN. Dove metti server pubblici ma isolati. |
| VPN (Virtual Private Network) | Un "tunnel sicuro" attraverso Internet. Ti fa sembrare di essere in un altro posto. |
| IP Address | L'"indirizzo di casa" di un dispositivo in rete. Esempio: 192.168.1.10. |
| DNS (Domain Name System) | L'"elenco telefonico" di Internet. Traduce "google.com" in "142.250.184.78". |
| DHCP (Dynamic Host Configuration Protocol) | L'"addetto alle camere" che assegna indirizzi IP automaticamente ai nuovi dispositivi. |
| QoS / Traffic Shaping | Il "controllore del traffico" che decide chi ha priorità sulla rete. |
| NAT (Network Address Translation) | Traduce gli IP privati (dentro casa) in IP pubblico (verso Internet) e viceversa. |
| Port Forwarding | "Inoltra questa chiamata a..." Dice a chi consegnare il traffico che arriva su una porta specifica. |
| Alias | La "rubrica" del firewall. Invece di ricordare IP, ricordi nomi (es: "Stampanti", "Server"). |
| Gateway | La "porta d'uscita" verso Internet. Di solito il tuo modem/router del provider. |
| Subnet Mask | Definisce quanto è grande il tuo "quartiere" di rete. 255.255.255.0 = 254 dispositivi. |
| MAC Address | Il "codice fiscale" della scheda di rete. Unico al mondo, identifica il dispositivo fisico. |
Esercizi
Prima di installare pfSense, verifica di avere chiaro a cosa serve ogni funzione.
Esercizio 1 – Quale funzione serve?. Per ogni situazione indica la funzione di pfSense che la risolve:
- i PC del laboratorio devono ricevere l'indirizzo IP da soli;
- un docente deve aprire il registro della scuola da casa in modo sicuro;
- il sito web della scuola deve essere raggiungibile da Internet senza esporre la rete interna;
- la videolezione scatta quando qualcuno scarica file pesanti;
- se la fibra cade, la scuola deve restare online con una linea 4G;
- durante le lezioni alcuni siti non devono essere raggiungibili.
Suggerimento
DHCP · VPN · DMZ con port forwarding · traffic shaping · multi-WAN con failover · content filtering.
Esercizio 2 – Stateful o stateless?. Uno studente apre https://www.wikipedia.org. Spiega in 4–5 righe perché, con un firewall stateful, non serve una regola che lasci entrare la risposta di Wikipedia, mentre con un filtro stateless servirebbe.
Suggerimento
Il firewall stateful ricorda la connessione aperta dall'interno (tabella degli stati) e riconosce i pacchetti di risposta come parte di quella connessione.
Esercizio 3 – Scegli il firewall. Una piccola azienda di 30 dipendenti deve scegliere tra pfSense, OPNsense e un firewall commerciale. Prepara una tabella con costo, supporto, hardware richiesto e aggiornamenti, poi scrivi la tua scelta motivata in 5 righe.