speedtest.it
← Blog
Cybersecurity

WireGuard: La Nuova Frontiera delle VPN

WireGuard: il protocollo VPN più veloce e moderno. Meno di 4000 righe di codice, kernel space su Linux, ChaCha20 e perché sta sostituendo OpenVPN.

WireGuard: La Nuova Frontiera delle VPN

Quando Jason Donenfeld ha pubblicato WireGuard nel 2015, il mondo delle VPN era dominato da OpenVPN — un software robusto ma complicato, con quasi 400.000 righe di codice. La risposta di Donenfeld è stata radicale: un protocollo VPN completo in meno di 4.000 righe. Semplice da leggere, da verificare, da mantenere. E stranamente, più sicuro proprio grazie a questa semplicità. Oggi WireGuard è integrato nel kernel Linux, adottato da quasi tutti i principali provider VPN e considerato lo stato dell'arte del settore.

Cos'è WireGuard?

WireGuard è un protocollo VPN open source progettato con un unico obiettivo: fare meno cose, ma farle benissimo. Mentre OpenVPN supporta decine di algoritmi di cifratura, decine di opzioni di configurazione e due modalità di trasporto, WireGuard ha fatto scelte precise e inamovibili:

  • Un solo algoritmo di scambio chiavi: Curve25519
  • Un solo cifrario simmetrico: ChaCha20
  • Un solo MAC: Poly1305
  • Un solo hash: BLAKE2s
  • Trasporto: UDP sempre (mai TCP)

Non puoi scegliere algoritmi diversi. Questa "mancanza di flessibilità" è intenzionale: elimina intere categorie di errori di configurazione e semplifica drasticamente l'analisi di sicurezza del codice.

Perché WireGuard è più veloce di OpenVPN

Kernel space vs userspace

La differenza più profonda è dove gira il codice. OpenVPN gira in userspace: ogni pacchetto deve attraversare il confine tra il kernel Linux e lo spazio applicativo, un'operazione costosa che si ripete milioni di volte al secondo.

WireGuard gira nel kernel space (su Linux) — direttamente dove i pacchetti di rete vengono elaborati, senza overhead di context switch. Su Windows e macOS usa implementazioni userspace ottimizzate, ma su Linux la differenza è sostanziale.

Algoritmi ottimizzati per hardware moderno

ChaCha20 è stato progettato per essere veloce anche su processori senza istruzioni AES hardware — tutti i telefoni ARM ne beneficiano. AES-GCM (usato da OpenVPN) è veloce sui processori Intel/AMD con istruzioni AES-NI, ma lento su ARM senza estensioni hardware.

Il risultato pratico: su uno smartphone in mobilità, WireGuard è spesso 3-5× più veloce di OpenVPN con la stessa sicurezza.

Handshake quasi istantaneo

La negoziazione iniziale di WireGuard dura millisecondi. OpenVPN può richiedere 1-3 secondi per stabilire la connessione e negoziare il tunnel TLS. Su reti mobili dove la connessione cade e si riconnette frequentemente (entrate in un tunnel, cambio da Wi-Fi a 4G), la differenza si sente concretamente.

Il modello di sicurezza: meno superficie di attacco

Crittografia "opinionated"

In crittografia, dare troppe scelte è un problema. Ogni opzione che aggiungi è una configurazione errata possibile. WireGuard elimina questa categoria di vulnerabilità scegliendo una sola combinazione di algoritmi, tutti considerati moderni e sicuri dalla comunità crittografica.

Curve25519 per lo scambio di chiavi è lo stesso usato da Signal, WhatsApp end-to-end e TLS 1.3. È stato progettato per essere resistente agli errori di implementazione — difficile da sbagliare anche per un programmatore non esperto di crittografia.

Autenticazione con chiavi pubbliche

Non ci sono certificati, CA (Certificate Authority), né gestione di PKI complessa. WireGuard usa coppie di chiavi pubbliche/private in stile SSH: ogni peer ha una chiave pubblica, ogni tunnel autorizza esplicitamente quali chiavi pubbliche possono connettersi. Semplice, verificabile, difficile da configurare male.

Perfect Forward Secrecy

WireGuard genera chiavi di sessione effimere che cambiano ogni pochi minuti. Anche se qualcuno registrasse tutto il traffico VPN oggi e ottenesse le chiavi private del server tra anni, non potrebbe decifrare le sessioni passate.

Il "stealth" mode non intenzionale

WireGuard risponde solo a pacchetti autenticati con una chiave pubblica valida. Scansioni di porte, probe di rilevamento, tentativi di connessione non autorizzati — WireGuard li ignora silenziosamente, come se la porta non esistesse. Un attaccante che non conosce la tua chiave pubblica non può nemmeno capire che c'è un server WireGuard in ascolto.

WireGuard vs OpenVPN: quando scegliere cosa

| | WireGuard | OpenVPN | |---|---|---| | Velocità | ✅ Superiore | ⚠️ Più lento | | Semplicità configurazione | ✅ Minima | ❌ Complessa | | Flessibilità algoritmi | ❌ Nessuna | ✅ Massima | | Firewall traversal (TCP 443) | ❌ Solo UDP | ✅ Può usare TCP 443 | | Maturità | ⚠️ Relativamente nuovo | ✅ Molto maturo | | Supporto piattaforme | ✅ Ampio | ✅ Universale | | Kernel integration | ✅ Linux kernel | ❌ Userspace |

Scegli WireGuard se: vuoi velocità, semplicità, uso personale o aziendale senza requisiti di compliance particolari.

Scegli OpenVPN se: devi attraversare firewall che bloccano UDP (WireGuard usa solo UDP), hai requisiti di compliance che specificano algoritmi particolari, o il tuo ambiente ha già infrastruttura OpenVPN consolidata.

Installare WireGuard: quanto è semplice?

Una configurazione client completa ha questo aspetto:

[Interface]
PrivateKey = <chiave_privata_client>
Address = 10.0.0.2/24
DNS = 1.1.1.1

[Peer]
PublicKey = <chiave_pubblica_server>
Endpoint = vpn.esempio.com:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25

Sei righe di configurazione per un tunnel VPN funzionante. OpenVPN richiede file di configurazione con decine di righe, certificati separati, file CA.

Per installare un server WireGuard completo con interfaccia web su Debian 12, segui la nostra guida passo-passo.

WireGuard è adatto alle aziende?

Sì, con alcune considerazioni. WireGuard non gestisce nativamente l'autenticazione basata su username/password o l'integrazione con directory aziendali (Active Directory, LDAP). Per questi casi esistono soluzioni come:

  • Tailscale: costruito su WireGuard, aggiunge autenticazione SSO, gestione centralizzata dei dispositivi e controllo degli accessi
  • Headscale: versione self-hosted di Tailscale
  • NetBird: alternativa open source enterprise-ready

Domande frequenti

WireGuard è sicuro quanto OpenVPN? Sì, per la maggior parte degli usi. La superficie di attacco ridotta e gli algoritmi moderni lo rendono tecnicamente più facile da verificare. OpenVPN ha 25 anni di audit e bug fix — un vantaggio reale per ambienti con requisiti di compliance stringenti. Per uso personale e aziendale standard, WireGuard è la scelta più sicura nella pratica.

Posso usare WireGuard su tutti i dispositivi? Sì. WireGuard ha client ufficiali per Windows, macOS, Linux (integrato nel kernel), iOS e Android. Su Linux non è nemmeno necessario installare nulla — è parte del kernel dal 5.6 (marzo 2020).

WireGuard viene bloccato dai firewall? WireGuard usa solo UDP, quindi viene bloccato da firewall che permettono solo TCP. In reti corporate restrittive o in paesi con censura di rete, OpenVPN su TCP porta 443 è più difficile da bloccare. Per contesti normali, WireGuard non ha problemi.


← Tutti gli articoli