WireGuard su pfSense: setup
pfSense, distribuzione firewall basata su FreeBSD, supporta WireGuard tramite il pacchetto ufficiale dalla versione 2.5.2 in poi. È una scelta solida per implementare road warrior VPN e collegamenti site-to-site da una sede principale a sedi remote.
Installazione del pacchetto
WireGuard su pfSense può essere installato dal menu System > Package Manager > Available Packages cercando WireGuard. Una volta installato compare la voce VPN > WireGuard con tre tab principali: Tunnels, Peers e Settings.
Procedura passo-passo
- Da System > Package Manager installa il pacchetto WireGuard e attendi la conferma.
- Vai in VPN > WireGuard > Tunnels e crea tun_wg0 con listen port 51820, generando le chiavi.
- Assegna un'IP interno tunnel come 172.16.50.1/24 sotto Addresses.
- Vai in Interfaces > Assignments e assegna tun_wg0 come interfaccia WAN_WG, poi abilitala.
- Crea regole firewall su Interfaces > WireGuard per consentire traffico in entrata dai peer.
- Aggiungi NAT outbound in modalita ibrida per la subnet 172.16.50.0/24.
- In VPN > WireGuard > Peers aggiungi ogni client con public key e allowed IPs.
- Genera la configurazione client manualmente o usa il pacchetto pfSense WireGuard QR helper se disponibile.
Site-to-site pfSense
Per collegare due pfSense via WireGuard: su entrambi crea tunnel reciproco con public key dell'altro, allowed IPs con la subnet LAN remota, e endpoint pubblico. Verifica firewall su entrambi i lati che consenta UDP sulla porta WireGuard. La rotta statica è tipicamente automatica grazie all'AllowedIPs, ma in alcuni scenari complessi va aggiunta manualmente in System > Routing.
Failover e gateway groups
pfSense permette di creare Gateway Groups per failover: configura due tunnel WireGuard verso provider diversi o sedi diverse, raggruppali in un Gateway Group con tier 1 e tier 2. Crea policy-based routing per ridirigere traffico critico via gateway primario con fallback automatico. Monitora connettivita con dpinger già integrato.
Caveat e troubleshooting
Errori comuni in pfSense WireGuard: dimenticare di assegnare l'interfaccia (Interfaces > Assignments), non creare regole firewall sulla nuova interfaccia, NAT outbound non configurato per la subnet tunnel. Il log in Status > System Logs > System > General mostra eventi WireGuard. Per debug puro abilita level Debug nel pacchetto WireGuard impostazioni.
OpenVPN coesistenza
pfSense può eseguire WireGuard e OpenVPN simultaneamente, su porte diverse, senza conflitti. Strategia comune: WireGuard per smart workers (performance), OpenVPN per dispositivi legacy che non supportano WireGuard. Documenta indirizzamento (subnet diverse per ogni VPN) e regole firewall separate. Monitora entrambi via Dashboard > VPN status widget.
Performance tuning su pfSense
Su hardware modesto pfSense WireGuard può essere CPU-limited. Tuning: aumenta dimensioni socket UDP via System > Advanced > Networking > UDP receive buffer; usa ChaCha20 implicito in WireGuard che e ottimizzato per CPU senza AES-NI; abilita Hardware CRC offloading dove supportato. Misura con iperf3 tra due endpoint per quantificare benefici.
Best practice di sicurezza
Indipendentemente dalla soluzione VPN scelta, alcune regole valgono sempre: usa chiavi e certificati robusti (RSA 2048+ o ECC P-256+, chiavi WireGuard generate con tool ufficiali), aggiorna regolarmente sia il software server sia i client, applica patch security non appena rilasciate, monitora i log per identificare attività anomale, ruota le credenziali periodicamente, segmenta la rete in modo che il tunnel non dia accesso indiscriminato a tutta la LAN aziendale, e formalizza una policy di disaster recovery con backup delle configurazioni. La VPN protegge il tunnel in transito ma non sostituisce hygiene di sicurezza degli endpoint: combina con MFA, EDR, patching aggressivo e formazione utenti per ottenere una postura di sicurezza completa.
Monitoring e osservabilita
Una VPN che non viene monitorata è una VPN che non sai se funziona. Raccogli metriche minime: numero di sessioni attive, latenza media end-to-end, percentuale di handshake riusciti vs falliti, throughput aggregato, geolocazione client. Strumenti come Prometheus + Grafana, Zabbix, PRTG o stack ELK forniscono dashboard utili. Configura alert proattivi su soglie critiche: tunnel down per oltre N minuti, picchi anomali di tentativi di autenticazione falliti, traffico fuori orario. In ambito aziendale integra con SIEM per correlazione cross-system e response automatica. Il monitoring continuo trasforma la VPN da componente passiva a infrastruttura osservabile e tunable nel tempo.
Documentazione e procedure operative
Documenta sempre l'architettura VPN come la documentereresti per un nuovo collega che la prende in carico domani: diagramma di rete, IP scheme, chiavi/certificati e dove sono custoditi, procedure di onboarding e revoca utenti, processi di rotazione chiavi, runbook per incidenti comuni (tunnel giu, latency anomala, certificato scaduto), responsabilità ownership. Conserva la documentazione in un wiki interno (Confluence, BookStack, GitBook) versionato e con backup. Quando un membro del team lascia, basta passare il riferimento alla documentazione: continuita operativa garantita anche con turnover.
Errori comuni e come risolverli
- Tunnel attivo ma non passa traffico: manca regola firewall sulla nuova interfaccia o NAT outbound mal configurato.
- Errore service stopped: verifica che tun_wg0 sia abilitato e che le chiavi non contengano spazi extra.
- DNS non funziona: configura DNS Resolver per ascoltare anche sull'interfaccia WireGuard e crea outbound NAT specifico.
- Tunnel site-to-site asimmetrico: controlla che allowed IPs in entrambi i lati includano correttamente le subnet remote.
Domande frequenti
D: WireGuard rallenta pfSense?
R: Su CPU recenti l'impatto e minimo; su hardware embedded vecchio (Atom) può fermarsi sotto i 100 Mbps.
D: Posso usare WireGuard insieme a OpenVPN?
R: Si, possono coesistere senza conflitti su porte diverse.
D: Come faccio ad alta disponibilità?
R: Con CARP+pfsync su due pfSense, WireGuard funziona ma serve script di failover per le chiavi.
Hai bisogno di aiuto?
Se vuoi configurare VPN aziendale con G Tech Group, scrivici tramite il modulo di contatto.