WireGuard: una guida pratica

WireGuard è un protocollo VPN sperimentale che sta generando una buona dose di entusiasmo nel mondo VPN.


È estremamente leggero (con solo 3782 righe di codice), il che lo rende molto più veloce rispetto ai protocolli VPN tradizionali come OpenVPN e IPsec. La brevità del codice semplifica anche l'audit e, poiché utilizza primitive crittografiche comprovate, dovrebbe essere molto sicuro.

WireGuard, quindi, ha un grande potenziale, ma è ancora molto nelle fasi sperimentali e di sviluppo. Non è stato ancora adeguatamente verificato per problemi di sicurezza e la mancanza di un sistema di condivisione delle chiavi sicuro tra i server impedisce attualmente un diffuso lancio commerciale.

Quest'ultimo problema potrebbe essere risolto utilizzando un sistema crittografico a chiave pubblica più tradizionale come RSA per distribuire le chiavi. Tuttavia, ciò comporterebbe una maggiore complessità, eliminando così in primo luogo molti dei vantaggi dell'utilizzo di WireGuard.

WireGuard è quindi un lavoro in corso. È tuttavia molto interessante che alcuni provider stiano iniziando a sperimentare il nuovo protocollo. E con un ringraziamento speciale a NordVPN, siamo molto entusiasti di avere l'opportunità di dare un'occhiata pratica.

Per favore, controlla anche Cos'è il protocollo VPN WireGuard? per uno sguardo più dettagliato alla teoria alla base di questo nuovo protocollo VPN.

Utilizzando WireGuard

Al momento, WireGuard è ufficialmente disponibile per Android e Linux, sebbene il supporto per Windows e iOS sia presto promesso. È anche disponibile per la riga di comando di macOS usando Homebrew o MacPorts.

Un'alternativa ai clienti ufficiali è TunSafe. Questo è stato sviluppato come impresa commerciale e il suo software era originariamente chiuso. TunSafe offre ancora un servizio VPN commerciale utilizzando il protocollo WireGuard, che è integrato in tutti i suoi client (anche se al momento è gratuito).

Il software stesso, tuttavia, è stato ora reso completamente open source e può essere impostato utilizzando qualsiasi file di configurazione di terze parti.

Come vedremo, il software TunSafe è spesso più completo rispetto ai client ufficiali. È disponibile in formato GUI completo per Windows, Android e iOS.

Può anche essere eseguito dalla riga di comando di Linux, macOS o FreeBSD. Ciò richiede la compilazione dalla fonte, ma vengono fornite istruzioni semplici e facili da seguire.

Linux

Il client WireGuard ufficiale

WireGuard è stato progettato specificamente per il kernel Linux. Il client WireGuard ufficiale è solo a riga di comando, in esecuzione come servizio all'interno del Terminale.

Oltre a dover risolvere alcuni problemi di dipendenza ($ sudo apt install wireguard openresolv linux-headers - $ (uname -r) wireguard-dkms wireguard-tools ha fatto il trucco), l'installazione e l'uso sono molto semplici.

Il protocollo WireGuard ha il routing completo IPv4 e IPv6 all'interno del tunnel VPN. Non abbiamo rilevato perdite di DNS di alcun tipo quando lo si utilizza su qualsiasi piattaforma, ma è stato riferito che TunSafe per Windows può perdere IPv6 attraverso l'interfaccia Tun) più su questo in seguito).

Non esiste alcun kill switch incorporato in quanto tale, ma è possibile crearlo aggiungendo comandi iptables al file di configurazione.

Un buon esempio di come eseguire questa operazione manualmente, che dovrebbe essere applicabile a qualsiasi file di configurazione di WireGuard, è disponibile nella pagina di configurazione di WireGuard di Mullvad. Oppure un provider VPN può semplicemente aggiungere i comandi ai suoi file di configurazione standard.

Come già notato, il client WireGuard di base può anche essere eseguito in macOS utilizzando Homebrew o MacPorts.

TunSafe

Per eseguire TunSafe in Linux devi compilare tu stesso il codice sorgente. Fortunatamente, questo non è affatto spaventoso come sembra. Le istruzioni sul sito Web sono molto chiare e abbiamo avuto il demone della riga di comando attivo e funzionante in pochi minuti.

Va detto, tuttavia, che non possiamo vedere alcun vantaggio nell'uso di TunSafe rispetto al client Linux ufficiale. TunSafe può anche essere compilato dal sorgente per macOS e FreeBSD.

androide

L'app ufficiale WireGuard

L'app Android ufficiale è disponibile tramite il sito Web F-Droid.

Ciò che manca all'app nelle funzionalità (in realtà non ne ha), compensa la facilità d'uso. Utilizzando ciò che immaginiamo diventerà il modo standard per configurare le impostazioni di WireGuard, NordVPN ci ha fornito immagini contenenti codici QR per i suoi server WireGuard sperimentali.

Tutto quello che dovevamo fare era scansionare questo codice per ogni server usando la fotocamera del nostro telefono e ta-da! L'installazione è stata completata. È anche possibile aggiungere manualmente file di installazione o persino crearne uno proprio.

E questo è tutto ciò che c'è veramente da sapere sull'app. Una volta installato, si è collegato all'istante e ha funzionato esattamente come dovrebbe.

L'app VPN TunSafe

Ora che è open source, TunSafe è una buona alternativa all'app Android ufficiale. La funzionalità principale dell'app è quasi identica all'app ufficiale open source su cui si basa. Come tale, può essere configurato per connettersi a qualsiasi server WireGuard tramite codice QR, configurare file o creare da nuovi.

La differenza principale è che TunSafe esegue anche un servizio VPN, quindi per impostazione predefinita hai la possibilità di collegarti ai server VPN di TunSafe. Sebbene in definitiva un'impresa commerciale, al momento TunSafe VPN è al 100% gratis da usare. Dopo 30 giorni, tuttavia, la larghezza di banda per i server TunSafe è limitata a 1 GB / giorno.

Non ci sono limiti quando si utilizzano file di configurazione di terze parti oltre a quelli addebitati dagli operatori del server. Secondo la sua politica sulla privacy, TunSafe VPN è un servizio senza log.

A differenza dell'app ufficiale, TunSafe per Android presenta un kill switch e split tunneling ("app escluse"). Può anche visualizzare i tempi di ping sui propri server, ma non quelli di terze parti. Per utenti esperti, è possibile configurare un server WireGuard da soli in Linux.

finestre

TunSafe

Al momento in cui scrivo, l'unico modo per eseguire WireGuard in Windows è utilizzare TunSafe. Come OpenVPN, TunSafe per Windows richiede un adattatore Ethernet TAP per funzionare.

Il problema principale è che l'adattatore TAP può perdere le richieste DNS IPv6 al di fuori dell'interfaccia VPN. Si consiglia pertanto vivamente di disabilitare IPv6 in Windows quando si utilizza TunSafe per Windows.

Un altro problema è che l'utilizzo di un adattatore TAP aggiunge complessità alla semplicità di WireGuard. Che in qualche modo funziona contro uno dei principali vantaggi dell'utilizzo di WireGuard.

Il client utilizza una semplice GUI, che semplifica l'importazione di un file .conf di WireGuard. Non è possibile importare file tramite codice QR, ma questo è comprensibile in quanto molti PC Windows non dispongono di telecamere.

Offre inoltre un interruttore Kills, che può utilizzare le regole di routing (basate sul client) o le regole del firewall (di sistema) per funzionare. O entrambi. È molto utile.

GUI Pre-Alpha

Nel maggio 2020 Edge Security ha annunciato il pre-alpha ufficiale di WireGuard per Windows È ancora molto presto, ma il client GUI mostra la direzione in cui è diretto il progetto.

La cosa più importante da notare è che, diversamente dal client TunSafe, non è necessario alcun adattatore TAP OpenVPN. Il client utilizza invece Wintun, un driver TUN di livello 3 minimo per Windows, anch'esso sviluppato dal team WireGuard.

Degno di nota (e non immediatamente ovvio dalla GUI), è che il client dispone di un automatico integrato "kill-interruttore" per bloccare il traffico al di fuori del tunnel VPN.

Inoltre, possiamo confermare che il passaggio da un tunnel all'altro è un processo molto semplice. Quindi tutto sembra molto promettente!

Test di velocità

Oltre alla semplicità per se stessa, uno dei maggiori vantaggi di WireGuard su OpenVPN è che la semplicità aggiunta dovrebbe anche rendere WireGuard molto più veloce. Quindi abbiamo eseguito alcuni test...

Abbiamo scelto di usare Mullvad per questo perché Mullvad supporta pienamente Linux. Supporta inoltre WireGuard e OpenVPN sugli stessi server (o almeno posizioni server molto simili), consentendo un buon confronto like-for-like.

I test sono stati eseguiti utilizzando speedtest.net, poiché il nostro sistema di test della velocità richiede che i file OpenVPN funzionino. Tutti i test eseguiti dal Regno Unito. Le frequenze medie di ping (latenza) sono indicate tra parentesi.

WireGuard dovrebbe, in teoria, essere molto più veloce di OpenVPN. Ma questo non è confermato da questi test. Va ricordato, tuttavia, che questo è ancora molto presto per l'implementazione effettiva di WireGuard e che Mullvad è incredibilmente veloce quando si tratta di prestazioni OpenVPN.

Conclusione

Attualmente WireGuard non è stato ancora sufficientemente controllato e testato per penetrazione per raccomandare come alternativa seria ai protocolli VPN sicuri come OpenVPN e IKEv2. Ma sembra davvero molto promettente.

È facile da configurare e utilizzare e, nei nostri test, si è collegato rapidamente e ha mantenuto una connessione molto stabile.

Sulla carta, WireGuard è molto più funzionale di OpenVPN. I nostri risultati dei test potrebbero essere dovuti al fatto che l'implementazione completa è ancora nella fase del prototipo o potrebbe essere dovuta alle limitazioni del nostro ambiente di test.

Sono stati eseguiti tramite WiFi e l'unico connettore WiFi che abbiamo attualmente che è compatibile con Linux è (un po 'ironicamente) un dongle 802.11g molto economico che costa circa $ 5.

Quindi fai quello che vuoi dai nostri risultati dei test di velocità. A parte questo, siamo rimasti molto colpiti da come sta procedendo WireGuard e non vediamo l'ora che subisca ulteriori test di miglioramento. Per chiunque condivida questo entusiasmo, le donazioni al progetto sono molto gradite.

Brayan Jackson Administrator
Sorry! The Author has not filled his profile.
follow me