WireGuard è un protocollo VPN moderno, veloce e sicuro. È integrato direttamente nel kernel Linux dalla versione 5.6, il che gli conferisce ottime prestazioni.
Perché scegliere WireGuard?
| Vantaggio | Dettaglio |
|---|---|
| ⚡ Ultra veloce | 2-5 volte più veloce di OpenVPN |
| 🔒 Molto sicuro | Crittografia moderna (ChaCha20, Curve25519) |
| 📝 Facile | Solo ~4.000 righe di codice (vs 600.000 per OpenVPN) |
| 📱 QR Code | Configurazione mobile in 10 secondi |
| 🔋 Economico | Meno esigente in termini di batteria su mobile |
Requisiti
Sistema operativo supportato
| Distribuzione | Versioni supportate |
|---|---|
| Debian | 11 (Bullseye), 12 (Bookworm), 13 (Trixie) ✨ |
| Ubuntu | 22.04 LTS, 24.04 LTS, 25.04, 25.10 |
💡 Raccomandazione: Utilizza Debian 13 o Ubuntu 24.04 LTS per beneficiare di WireGuard integrato nel kernel.
Configurazione minima
| Elemento | Richiesto |
|---|---|
| RAM | 512 MB minimo |
| CPU | 1 vCPU |
| Storage | 5 GB |
| Porta | 51820 UDP aperta |
⚠️ Importante: Apri la porta 51820/UDP nel firewall del tuo provider di hosting (pannello cloud) prima di iniziare.
Installazione del server WireGuard
Passo 1: Connessione al server
Collegati via SSH al tuo VPS:
ssh root@tuo-ip-server
Passo 2: Aggiornamento del sistema
apt update && apt upgrade -y
Passo 3: Download e avvio dello script
curl -O https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh
chmod +x wireguard-install.sh
./wireguard-install.sh
Passo 4: Rispondere alle domande
Lo script pone alcune domande semplici:
Welcome to the WireGuard installer!
I need to ask you a few questions before starting the setup.
IPv4 or IPv6 public address: [Premi Invio]
Risposte raccomandate:
| Domanda | Risposta | Spiegazione |
|---|---|---|
| Indirizzo pubblico | Invio | Auto-rilevato |
| Interfaccia pubblica | Invio | Auto-rilevata |
| Nome interfaccia WireGuard | wg0 | Nome predefinito |
| Server WireGuard IPv4 | 10.66.66.1 | Rete VPN |
| Porta server WireGuard | 51820 | Porta standard |
| Primo risolutore DNS | 1.1.1.1 | Cloudflare (veloce) |
| Secondo risolutore DNS | 1.0.0.1 | Cloudflare backup |
| Nome client | il-mio-pc | Nome a tua scelta |
Passo 5: Recuperare la configurazione client
Alla fine dell'installazione, lo script mostra:
- Un QR code (per smartphone) 📱
- Il percorso del file di configurazione
It is also available in /root/wg0-client-il-mio-pc.conf
If you want to add more clients, run this script again.
Per smartphone: Scansiona direttamente il QR code mostrato nel terminale con l'app WireGuard.
Per computer: Scarica il file .conf:
# Dal tuo PC locale
scp root@tuo-ip-server:/root/wg0-client-il-mio-pc.conf ~/Desktop/
Aggiungere altri dispositivi
Per creare profili per i tuoi altri dispositivi, riavvia lo script:
./wireguard-install.sh
Menu mostrato:
WireGuard is already installed.
Select an option:
1) Add a new client
2) Remove an existing client
3) Remove WireGuard
4) Exit
Scegli 1 e inserisci un nuovo nome (es: iphone, tablet).
💡 Consiglio: Un QR code viene generato automaticamente per ogni nuovo client!
Connessione al VPN
Windows
- Scarica WireGuard per Windows
- Installa e apri l'applicazione
- Clicca su "Importa un tunnel da un file"
- Seleziona il tuo file
.conf - Clicca su "Attiva"
macOS
- Scarica WireGuard dall'App Store
- Apri l'applicazione
- Clicca su "Importa un tunnel da un file"
- Seleziona il tuo file
.conf - Clicca su "Attiva"
Linux (Debian/Ubuntu)
# Installazione del client
sudo apt install wireguard resolvconf
# Copia il file di configurazione
sudo cp il-mio-pc.conf /etc/wireguard/wg0.conf
# Connessione
sudo wg-quick up wg0
# Disconnessione
sudo wg-quick down wg0
Per una connessione automatica all'avvio:
sudo systemctl enable wg-quick@wg0
sudo systemctl start wg-quick@wg0
Android 📱
- Installa WireGuard dal Play Store
- Apri l'applicazione
- Premi sul "+" → "Scannerizza un QR code"
- Scansiona il QR code mostrato nel terminale del server
- Premi sul toggle per attivare
iOS (iPhone/iPad) 📱
- Installa WireGuard dall'App Store
- Apri l'applicazione
- Premi su "+" → "Crea da un QR code"
- Scansiona il QR code
- Autorizza la configurazione VPN
- Premi sul toggle per attivare
Verificare che funzioni
Una volta connesso al VPN:
- Vai su whatismyip.com
- L'indirizzo IP mostrato deve essere quello del tuo VPS
✅ Se è così, il tuo VPN funziona!
Verificare lo stato lato server
sudo wg show
Risultato atteso:
interface: wg0
public key: aBcDeFgH...
private key: (hidden)
listening port: 51820
peer: xYzAbCdE...
endpoint: 203.0.113.50:51820
allowed ips: 10.66.66.2/32
latest handshake: 1 minute, 30 seconds ago
transfer: 15.24 MiB received, 92.38 MiB sent
Comandi utili
| Azioni | Comando |
|---|---|
| Vedi lo stato del VPN | sudo wg show |
| Avvia WireGuard | sudo systemctl start wg-quick@wg0 |
| Ferma WireGuard | sudo systemctl stop wg-quick@wg0 |
| Riavvia WireGuard | sudo systemctl restart wg-quick@wg0 |
| Vedi i log | sudo journalctl -u wg-quick@wg0 -f |
| Aggiungi/Rimuovi un client | ./wireguard-install.sh |
| Mostra il QR code di un client | qrencode -t ansiutf8 < /root/wg0-client-nome.conf |
Risoluzione rapida dei problemi
❌ Il client non si connette
Verifiche:
- La porta 51820 UDP è aperta nel firewall del tuo provider di hosting?
- WireGuard è in esecuzione sul server?
sudo wg show
Se non appare nulla:
sudo systemctl start wg-quick@wg0
❌ Connesso ma senza Internet
Controlla l'IP forwarding:
cat /proc/sys/net/ipv4/ip_forward
Se mostra 0, attivalo:
echo 1 > /proc/sys/net/ipv4/ip_forward
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
Controlla le regole NAT:
sudo iptables -t nat -L POSTROUTING
❌ Il QR code non appare
Installa qrencode:
apt install qrencode
Poi mostra il QR code:
qrencode -t ansiutf8 < /root/wg0-client-il-mio-pc.conf
❌ Alta latenza o disconnessioni
Aggiungi un keepalive nella configurazione client. Modifica il file .conf e aggiungi sotto [Peer]:
PersistentKeepalive = 25
WireGuard vs OpenVPN
| Criterio | WireGuard | OpenVPN |
|---|---|---|
| Velocità | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ |
| Semplicità | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ |
| Linee di codice | ~4.000 | ~600.000 |
| Crittografia | Moderna (ChaCha20) | Classica (AES) |
| Supporto mobile | Eccellente + QR | Buono |
| Traversa i firewall | Medio (UDP) | Eccellente (TCP 443) |
| Maturità | Recente (2020) | Affidabile (2001) |
💡 Il nostro consiglio: Usa WireGuard per velocità e semplicità. Tieni OpenVPN come backup se devi attraversare firewall restrittivi (porta TCP 443).
Risorse utili
| Risorsa | Link |
|---|---|
| Sito ufficiale WireGuard | wireguard.com |
| WireGuard Windows | wireguard.com/install |
| WireGuard macOS | App Store |
| WireGuard Android | Play Store |
| WireGuard iOS | App Store |
| Script di installazione | github.com/angristan/wireguard-install |
Riepilogo
| Passo | Azione |
|---|---|
| 1 | Collegati via SSH al VPS |
| 2 | Aggiorna il sistema |
| 3 | Scarica e avvia lo script di installazione |
| 4 | Rispondi alle domande (o mantieni i valori predefiniti) |
| 5 | Scansiona il QR code (mobile) o recupera il file .conf (PC) |
| 6 | Importa nell'app WireGuard |
| 7 | Attiva e goditi! 🎉 |
