Guida completa a WireGuard: installazione, chiavi e configurazione avanzata

Ultimo aggiornamento: 24/09/2025

  • Architettura semplice e crittografia moderna: chiavi per peer e AllowedIP per il routing.
  • Installazione rapida su Linux e app ufficiali per desktop e dispositivi mobili.
  • Prestazioni superiori a IPsec/OpenVPN, con roaming e bassa latenza.
Guida Wireguard

Se si desidera un VPN che sia veloce, sicuro e facile da implementare, Gabbia di protezione È il meglio che puoi usare oggi. Con un design minimalista e una crittografia moderna, è ideale per utenti domestici, professionisti e ambienti aziendali, sia su computer che su dispositivi mobili e router.

In questa guida pratica troverai tutto, dalle basi alle Impostazioni avanzate: Installazione su Linux (Ubuntu/Debian/CentOS), chiavi, file server e client, inoltro IP, NAT/Firewall, applicazioni su Windows/macOS/Android/iOS, Suddiviso tunneling, prestazioni, risoluzione dei problemi e compatibilità con piattaforme quali OPNsense, pfSense, QNAP, Mikrotik o Teltonika.

Che cos'è WireGuard e perché sceglierlo?

Gabbia di protezione è un protocollo VPN open source e un software progettato per creare Tunnel crittografati L3 su UDPSi distingue rispetto a OpenVPN o IPsec per la sua semplicità, le prestazioni e la minore latenza, basandosi su algoritmi moderni come Curve25519, ChaCha20-Poly1305, BLAKE2, SipHash24 e HKDF.

La sua base di codice è molto piccola (circa migliaia di linee), che facilita gli audit, riduce la superficie di attacco e migliora la manutenzione. È inoltre integrato nel kernel Linux, consentendo elevate velocità di trasferimento e risposta agile anche su hardware modesto.

 

È multipiattaforma: ci sono app ufficiali per Windows, macOS, Linux, Android e iOSe supporto per sistemi orientati a router/firewall come OPNsense. È disponibile anche per ambienti come FreeBSD, OpenBSD e piattaforme NAS e di virtualizzazione.

VPN Wireguard

Come funziona all'interno

 

WireGuard stabilisce un tunnel crittografato tra peer (coetanei) identificato da chiavi. Ogni dispositivo genera una coppia di chiavi (privata/pubblica) e condivide solo la sua chiave pubblica con l'altra estremità; da lì, tutto il traffico viene crittografato e autenticato.

Direttiva IP consentiti Definisce sia il routing in uscita (quale traffico deve passare attraverso il tunnel) sia l'elenco delle sorgenti valide che il peer remoto accetterà dopo aver decrittografato correttamente un pacchetto. Questo approccio è noto come Instradamento della chiave crittografica e semplifica notevolmente la politica del traffico.

WireGuard è eccellente con il il roaming- Se l'IP del tuo client cambia (ad esempio, passi dal Wi-Fi al 4G/5G), la sessione viene ristabilita in modo trasparente e molto rapido. Supporta anche interruttore di spegnimento per bloccare il traffico in uscita dal tunnel se la VPN non funziona.

Installazione su Linux: Ubuntu/Debian/CentOS

Su Ubuntu, WireGuard è disponibile nei repository ufficiali. Aggiorna i pacchetti e poi installa il software per ottenere il modulo e gli strumenti. wg e wg-quick.

apt update && apt upgrade -y
apt install wireguard -y
modprobe wireguard

In Debian stabile puoi fare affidamento sui repository del ramo instabile se ne hai bisogno, seguendo il metodo consigliato e con cura nella produzione:

sudo sh -c 'echo deb https://deb.debian.org/debian/ unstable main > /etc/apt/sources.list.d/unstable.list'
sudo sh -c 'printf "Package: *\nPin: release a=unstable\nPin-Priority: 90\n" > /etc/apt/preferences.d/limit-unstable'
sudo apt update
sudo apt install wireguard

In CentOS 8.3 il flusso è simile: si attivano i repository EPEL/ElRepo se necessario e quindi si installa il pacchetto Gabbia di protezione e moduli corrispondenti.

Contenuti esclusivi: clicca qui  Nuove norme sulla protezione dei dati?

protezione del cavo

Generazione delle chiavi

Ogni peer deve avere il suo coppia di chiavi privata/pubblica. Applicare umask per limitare le autorizzazioni e generare chiavi per server e client.

umask 077
wg genkey | tee privatekey | wg pubkey > publickey

Ripetere su ogni dispositivo. Non condividere mai il chiava privata e salvarli entrambi in modo sicuro. Se preferisci, crea file con nomi diversi, ad esempio server di chiavi private y chiaveserverpubblica.

Configurazione del server

Crea il file principale in /etc/wireguard/wg0.confAssegna una subnet VPN (non utilizzata sulla tua LAN reale), la porta UDP e aggiungi un blocco [Pari] per cliente autorizzato.

[Interface]
Address = 10.0.0.1/24
ListenPort = 51820
PrivateKey = <clave_privada_servidor>

# Cliente 1
[Peer]
PublicKey = <clave_publica_cliente1>
AllowedIPs = 10.0.0.2/32

È possibile utilizzare anche un'altra subnet, ad esempio 192.168.2.0/24e crescere con più peer. Per distribuzioni rapide, è comune utilizzare wg-veloce con i file wgN.conf.

Configurazione client

Sul client creare un file, ad esempio wg0-client.conf, con la sua chiave privata, l'indirizzo del tunnel, il DNS facoltativo e il peer del server con il suo endpoint pubblico e la porta.

[Interface]
PrivateKey = <clave_privada_cliente>
Address = 10.0.0.2/24
DNS = 8.8.8.8

[Peer]
PublicKey = <clave_publica_servidor>
Endpoint = <ip_publica_servidor>:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25

Se metti IP consentiti = 0.0.0.0/0 Tutto il traffico passerà attraverso la VPN; se vuoi raggiungere solo reti di server specifiche, limitalo alle subnet necessarie e ridurrai latenza e consumo.

Inoltro IP e NAT sul server

Abilita l'inoltro in modo che i client possano accedere a Internet tramite il server. Applica modifiche al volo con sysctl.

echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf
echo 'net.ipv6.conf.all.forwarding=1' >> /etc/sysctl.conf
sysctl -p

Configurare NAT con iptables per la subnet VPN, impostando l'interfaccia WAN (ad esempio, eth0):

iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth0 -j MASQUERADE

Rendila persistente con i pacchetti appropriati e le regole di salvataggio da applicare al riavvio del sistema.

apt install -y iptables-persistent netfilter-persistent
netfilter-persistent save

Avvio e verifica

Avvia l'interfaccia e abilita l'avvio del servizio con il sistema. Questo passaggio crea l'interfaccia virtuale e aggiunge percorsi necessario.

systemctl start wg-quick@wg0
systemctl enable wg-quick@wg0
wg

Con wg Vedrai i peer, le chiavi, i trasferimenti e gli orari dell'ultimo handshake. Se i criteri del firewall sono restrittivi, consenti l'accesso tramite l'interfaccia. wg0 e la porta UDP del servizio:

iptables -I INPUT 1 -i wg0 -j ACCEPT

App ufficiali: Windows, macOS, Android e iOS

Sul desktop è possibile importare un file .confSui dispositivi mobili, l'app consente di creare l'interfaccia da un QR code contenente la configurazione; è molto comodo per i clienti non tecnici.

Se il tuo obiettivo è quello di esporre servizi auto-ospitati come Plex/Radarr/Sonarr Tramite la tua VPN, assegna semplicemente gli IP nella subnet WireGuard e regola AllowedIPs in modo che il client possa raggiungere quella rete; non devi aprire porte aggiuntive verso l'esterno se tutto l'accesso avviene tramite tunnel.

Vantaggi e svantaggi

WireGuard è molto veloce e semplice, ma è importante considerare i suoi limiti e le sue specificità a seconda del caso d'uso. Ecco una panoramica bilanciata delle più pertinente.

Contenuti esclusivi: clicca qui  Come crittografare una cartella Mac
Vantaggi Svantaggi
Configurazione chiara e breve, ideale per l'automazione Non incorpora l'offuscamento del traffico nativo
Alte prestazioni e bassa latenza anche in mobile In alcuni ambienti legacy sono disponibili meno opzioni avanzate
Crittografia moderna e codice piccolo che semplificano revisione Privacy: l'associazione IP/chiave pubblica può essere sensibile a seconda delle policy
Roaming senza interruzioni e kill switch disponibili sui client La compatibilità con terze parti non è sempre omogenea

 

Split tunneling: indirizzare solo ciò che è necessario

Lo split tunneling ti consente di inviare solo il traffico di cui hai bisogno attraverso la VPN. Con IP consentiti Puoi decidere se effettuare un reindirizzamento completo o selettivo su una o più subnet.

# Redirección completa de Internet
[Peer]
AllowedIPs = 0.0.0.0/0
# Solo acceder a recursos de la LAN 192.168.1.0/24 por la VPN
[Peer]
AllowedIPs = 192.168.1.0/24

Esistono varianti come il reverse split tunneling, filtrato da URL o tramite applicazione (tramite estensioni/client specifici), sebbene la base nativa di WireGuard sia il controllo tramite IP e prefissi.

Compatibilità ed ecosistema

WireGuard è nato per il kernel Linux, ma oggi è multipiattaformaOPNsense lo integra in modo nativo; pfSense è stato temporaneamente interrotto per verifiche e successivamente è stato offerto come pacchetto opzionale a seconda della versione.

Su NAS come QNAP è possibile montarlo tramite QVPN o macchine virtuali, sfruttando le NIC 10GbE per alte velocitàLe schede router MikroTik hanno incorporato il supporto WireGuard a partire da RouterOS 7.x; nelle sue prime iterazioni, era in versione beta e non era consigliato per la produzione, ma consente tunnel P2P tra dispositivi e persino client finali.

Produttori come Teltonika hanno un pacchetto per aggiungere WireGuard ai loro router; se hai bisogno di attrezzature, puoi acquistarle su shop.davantel.com e seguire le linee guida del produttore per l'installazione Pacchetti extra.

Prestazioni e latenza

Grazie al suo design minimalista e alla scelta di algoritmi efficienti, WireGuard raggiunge velocità molto elevate e basse latenze, generalmente superiore a L2TP/IPsec e OpenVPN. Nei test locali con hardware potente, la velocità effettiva è spesso doppia rispetto a quella delle alternative, rendendolo ideale per streaming, gaming o VoIP.

Implementazione aziendale e telelavoro

In ambito aziendale, WireGuard è adatto per creare tunnel tra uffici, accesso remoto dei dipendenti e connessioni sicure tra CPD e cloud (ad esempio, per i backup). La sua sintassi concisa semplifica il controllo delle versioni e l'automazione.

Si integra con directory come LDAP/AD utilizzando soluzioni intermedie e può coesistere con piattaforme IDS/IPS o NAC. Un'opzione popolare è PacketFence (open source), che consente di verificare lo stato delle apparecchiature prima di concedere l'accesso e il controllo BYOD.

protezione del cavo

Windows/macOS: Note e suggerimenti

L'app ufficiale di Windows di solito funziona senza problemi, ma in alcune versioni di Windows 10 si sono verificati problemi durante l'utilizzo IP consentiti = 0.0.0.0/0 a causa di conflitti di routing. Come alternativa temporanea, alcuni utenti optano per client basati su WireGuard come TunSafe o limitano gli AllowedIP a subnet specifiche.

Guida rapida Debian con chiavi di esempio

Genera chiavi per server e client in /etc/wireguard/ e crea l'interfaccia wg0. Assicurati che gli IP della VPN non corrispondano ad altri IP sulla tua rete locale o sui tuoi client.

cd /etc/wireguard/
wg genkey | tee claveprivadaservidor | wg pubkey > clavepublicaservidor
wg genkey | tee claveprivadacliente1 | wg pubkey > clavepublicacliente1

Server wg0.conf con subnet 192.168.2.0/24 e porta 51820. Abilita PostUp/PostDown se vuoi automatizzare NAT con iptables quando si attiva/disattiva l'interfaccia.

[Interface]
Address = 192.168.2.1/24
PrivateKey = <clave_privada_servidor>
ListenPort = 51820
#PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
#PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

[Peer]
PublicKey = <clave_publica_cliente1>
AllowedIPs = 0.0.0.0/0

Client con indirizzo 192.168.2.2, che punta all'endpoint pubblico del server e con keepalive facoltativo se è presente un NAT intermedio.

[Interface]
PrivateKey = <clave_privada_cliente1>
Address = 192.168.2.2/32

[Peer]
PublicKey = <clave_publica_servidor>
AllowedIPs = 0.0.0.0/0
Endpoint = <ip_publica_servidor>:51820
#PersistentKeepalive = 25

Apri l'interfaccia e guarda l'MTU, la segnaletica del percorso e fwmark e regole di routing policy. Esaminare l'output e lo stato di wg-quick con spettacolo wg.

Contenuti esclusivi: clicca qui  Come avere un cellulare sotto controllo gratis

Mikrotik: tunnel tra RouterOS 7.x

MikroTik supporta WireGuard fin da RouterOS 7.x. Crea un'interfaccia WireGuard su ciascun router, applicala e verrà generata automaticamente. clavesAssegnare gli IP a Ether2 come WAN e wireguard1 come interfaccia tunnel.

Configurare i peer incrociando la chiave pubblica del server sul lato client e viceversa, definire indirizzi consentiti/IP consentiti (ad esempio 0.0.0.0/0 se si desidera consentire qualsiasi origine/destinazione attraverso il tunnel) e impostare l'endpoint remoto con la sua porta. Un ping all'IP del tunnel remoto confermerà l' stretta di mano.

Se si collegano telefoni cellulari o computer al tunnel Mikrotik, regolare le reti consentite in modo da non aprirne più del necessario; WireGuard decide il flusso dei pacchetti in base alle proprie esigenze. Instradamento della chiave crittografica, quindi è importante far coincidere origini e destinazioni.

Crittografia utilizzata

WireGuard impiega un moderno set di: Rumore come framework, Curve25519 per ECDH, ChaCha20 per la crittografia simmetrica autenticata con Poly1305, BLAKE2 per l'hashing, SipHash24 per le tabelle hash e HKDF per la derivazione di clavesSe un algoritmo è obsoleto, è possibile creare una versione del protocollo per migrarlo senza problemi.

Pro e contro sui dispositivi mobili

Usandolo sugli smartphone puoi navigare in sicurezza su Wi-Fi pubblico, nascondi il traffico al tuo ISP e connettiti alla tua rete domestica per accedere a NAS, domotica o gaming. Su iOS/Android, cambiare rete non interrompe il tunnel, il che migliora l'esperienza.

Come svantaggio, si verifica una certa perdita di velocità e una maggiore latenza rispetto all'output diretto e si dipende sempre dal fatto che il server sia disponibleTuttavia, rispetto a IPsec/OpenVPN, la penalità è solitamente inferiore.

WireGuard combina semplicità, velocità e sicurezza reale con una curva di apprendimento graduale: installalo, genera le chiavi, definisci gli IP consentiti e sei pronto a iniziare. Aggiungi l'inoltro IP, NAT ben implementato, app ufficiali con codici QR e compatibilità con ecosistemi come OPNsense, Mikrotik o Teltonika. una VPN moderna per quasi ogni scenario, dalla protezione delle reti pubbliche alla connessione delle sedi centrali e all'accesso ai servizi domestici senza problemi.