Linux12 dicembre 2025 923 visualizzazioni

Come installare un server VPN WireGuard su un VPS Linux

Come installare un server VPN WireGuard su un VPS Linux

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

Logo WireGuard


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:

  1. Un QR code (per smartphone) 📱
  2. 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

  1. Scarica WireGuard per Windows
  2. Installa e apri l'applicazione
  3. Clicca su "Importa un tunnel da un file"
  4. Seleziona il tuo file .conf
  5. Clicca su "Attiva"

macOS

  1. Scarica WireGuard dall'App Store
  2. Apri l'applicazione
  3. Clicca su "Importa un tunnel da un file"
  4. Seleziona il tuo file .conf
  5. 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 📱

  1. Installa WireGuard dal Play Store
  2. Apri l'applicazione
  3. Premi sul "+""Scannerizza un QR code"
  4. Scansiona il QR code mostrato nel terminale del server
  5. Premi sul toggle per attivare

iOS (iPhone/iPad) 📱

  1. Installa WireGuard dall'App Store
  2. Apri l'applicazione
  3. Premi su "+""Crea da un QR code"
  4. Scansiona il QR code
  5. Autorizza la configurazione VPN
  6. Premi sul toggle per attivare

Verificare che funzioni

Una volta connesso al VPN:

  1. Vai su whatismyip.com
  2. 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:

  1. La porta 51820 UDP è aperta nel firewall del tuo provider di hosting?
  2. 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! 🎉