Installare WireGuard su un Mac sembra banale, finché il tutorial che stai seguendo non era scritto per Linux. Due cose fanno inciampare: esistono due prodotti WireGuard diversi per macOS, e il nome di interfaccia che tutti usano negli esempi, wg0, non può esistere su un Mac.
Non hai ancora una configurazione da importare? Il nostro generatore di configurazione WireGuard gratuito crea nel browser il file del server e quello del client Mac, pronto da importare come .conf; le chiavi sono generate in locale e nulla viene inviato a un server. Il generatore è gratuito e senza account, fino a 250 dispositivi, e la sua esportazione ZIP raccoglie ogni .conf client e il suo codice QR in PNG, comodo per configurare un intero ufficio o una famiglia in una volta.
Genera qui le tue configurazioni WireGuard
Inserisci l'indirizzo del server, scegli il numero di dispositivi, poi scansiona ogni codice QR dall'app.
Tutte le chiavi vengono generate nel tuo browser (Curve25519 / X25519). Niente viene inviato ai nostri server - la tua configurazione resta privata al 100%.
IPv4 pubblico o dominio della macchina che eseguirà WireGuard. Nessun server per ora? Lascia vuoto e aggiungilo dopo.
Gratis, senza account: fino a 250 client, ogni .conf con il suo codice QR, e uno ZIP con tutti i file.
Tutto ciò che il dispositivo invia a internet passa dal tuo server.
Impostazioni avanzateSubnet del tunnel, DNS, reti site-to-site. I valori predefiniti vanno bene nella maggior parte dei casi.
Facoltativo. Indica la subnet LAN dietro il server e/o dietro un client che fa da gateway di sede (un router, un Raspberry Pi, un NAS). Il generatore aggiunge ogni LAN agli AllowedIPs del server, dà a ogni peer le rotte verso le altre LAN e scrive le regole di inoltro sui gateway. Lascia vuoto un campo per un client normale.
Cosa scarichi
wg0.conf
per il server
client1.conf
uno per dispositivo
QR (esempio)
per l'app mobile
Anteprima illustrativa: righe e QR fittizi, nessuna chiave reale. I tuoi file veri vengono generati nel tuo browser al clic.
Non hai ancora un server? Il client Mac ha bisogno di un server WireGuard a cui collegarsi; un VPS Cloud Contabo (link di affiliazione) ne fa girare uno con un proprio IPv4 pubblico, da 5,50 € al mese con durata di 24 mesi (prezzo letto il 17 ottobre 2026). Se preferisci un provider statunitense con 30 giorni soddisfatti o rimborsati, il VPS Basic di Ultahost costa 5,52 $ al mese su 24 mesi (1 GB di RAM, IPv4 dedicato, letto il 21 ottobre 2026), sufficiente per un server WireGuard con pochi dispositivi. Provider ancora da scegliere? Confronti: miglior VPS per una VPN e Contabo vs Hetzner vs OVH, al prezzo realmente fatturato. Un'altra opzione: HostPapa Unmanaged VPS Lite (link affiliato) a 2,95 $ al mese con un impegno di 3 anni, poi a tariffa normale (1 core, 1 GB di RAM, 25 GB NVMe, accesso root via SSH, rimborso entro 30 giorni, rilevato il 28 ottobre 2026).
Le due installazioni, secondo la pagina ufficiale
La pagina di installazione di WireGuard le elenca entrambe, e sono software realmente distinti:
L'app del Mac App Store. Un client grafico con voce nella barra dei menu, importazione dei tunnel e attivazione su richiesta. È ciò che vuole la maggior parte delle persone.
Gli strumenti da riga di comando.
brew install wireguard-tools
# oppure, con MacPorts
port install wireguard-tools
Ottieni wg e wg-quick, gli stessi comandi che usi su un server. Sotto gira l'implementazione Go in spazio utente invece di un modulo del kernel, perché macOS non ha WireGuard nel kernel.
Non condividono l'elenco dei tunnel. Un tunnel importato nell'app non comparirà in wg show, e viceversa. Scegline uno per macchina, salvo un motivo preciso per averli entrambi.

Ciò che manda in errore i tutorial Linux: qui wg0 non esiste
È il fallimento più comune, e il messaggio di errore quasi mai lo spiega.
Su Linux crei wg0 e prosegui. Su macOS i tunnel passano dal driver utun, e la documentazione multipiattaforma di WireGuard enuncia il vincolo senza ambiguità: il driver utun non può avere nomi di interfaccia arbitrari. Bisogna usare utun seguito da un numero, per esempio utun0, oppure solo utun per lasciare scegliere al kernel.
# fallisce su macOS
sudo wg-quick up wg0
# funziona
sudo wg-quick up utun
Se hai copiato una guida che dice wg0, rinomina il file di configurazione e ogni comando che lo richiama. Chiavi, AllowedIPs, Endpoint e DNS non sono toccati: solo il nome dell'interfaccia dipende dalla piattaforma.
Sapere quale utun ti è toccato. Se lasci scegliere al kernel, ti serve un modo per conoscere il risultato. Imposta WG_TUN_NAME_FILE prima di alzare il tunnel e il nome scelto viene scritto lì:
export WG_TUN_NAME_FILE=/tmp/wg-name
sudo -E wg-quick up utun
cat /tmp/wg-name # per esempio utun4
Altrimenti leggi l'output di ifconfig indovinando quale utun sia il tuo: accettabile una volta, noioso in uno script.
Importare una configurazione che hai già
Se hai generato una configurazione client sul tuo server, si trasferisce così com'è. Nell'app usa l'opzione di importazione e seleziona il file .conf: il tunnel compare nell'elenco, pronto da attivare. Da riga di comando, mettilo in /opt/homebrew/etc/wireguard/utun.conf (Apple Silicon) o /usr/local/etc/wireguard/utun.conf (Intel), dando al file il nome dell'interfaccia, poi lancia wg-quick up utun.
Una configurazione generata per un telefono funziona anche su un Mac. È una definizione di peer, non un artefatto legato al dispositivo, a patto che ogni dispositivo abbia la propria coppia di chiavi e non una condivisa.
Verificare che funzioni davvero
Alza il tunnel, poi conferma due cose invece di darle per scontate.
sudo wg show
Un peer in salute mostra un latest handshake di meno di due minuti e contatori transfer diversi da zero in entrambe le direzioni. Inviato ma nulla ricevuto è la firma di un percorso di ritorno bloccato. Se l'handshake non si completa mai, la nostra guida alla risoluzione dei problemi di handshake percorre le cause in ordine di probabilità.
Poi conferma che il traffico passi davvero dal tunnel, e non solo che l'interfaccia esista: controlla il tuo IP pubblico dal browser e, se instradi il DNS nel tunnel, verifica che non ci siano fughe. La nostra nota sulle fughe DNS in WireGuard copre le impostazioni che contano.
Per avere l'essenziale a portata di mano: la WireGuard Cheat Sheet gratuita (PDF di 5 pagine in inglese, download diretto, senza registrazione) raccoglie le tabelle di keepalive e MTU, i comandi wg genkey/wg pubkey/wg genpsk e i quattro controlli del server in una riga da lanciare per primi quando un tunnel non fa passare traffico. Il WireGuard Self-Hosting Kit a pagamento (9 USD, in inglese) aggiunge una checklist di diagnosi con 12 cause e 11 modelli di configurazione.
Una VPN cambia il tuo IP. Non cambia il tuo browser.
Un tunnel sostituisce l'indirizzo che un servizio vede. Non cambia nulla di ciò che il tuo browser dichiara da solo - caratteri, schermo, fuso orario, stack grafico - e quella combinazione basta spesso a riconoscerti da una sessione all'altra.
Misura la tua impronta del browser - misurazione passiva, senza domande, senza account, senza email.
In breve
Due prodotti: l'app dell'App Store per un client grafico, wireguard-tools via Homebrew o MacPorts per la stessa riga di comando del tuo server. Non condividono i tunnel. E su macOS l'interfaccia deve chiamarsi utun o utunN, mai wg0, perché il driver utun non accetta nomi arbitrari. Quella sola riga spiega la maggior parte delle installazioni Mac fallite copiando guide Linux.
★ Datacenter GDPR di Norimberga · ✓ IPv4 dedicato incluso · porta da 200 Mbit/s
Il tuo Mac è il client. Il tunnel ha bisogno di un server → VPS ContaboUn VPS Linux fa girare il lato WireGuard a cui il tuo Mac si connette, con implementazione nel kernel anziché in spazio utente. Accesso root, prezzo prevedibile, datacenter europei.→Link di affiliazione
★ Datacenter GDPR di Norimberga · ✓ IPv4 dedicato incluso · porta da 200 Mbit/s
Ospita la tua VPN sul tuo VPS → ContaboCloud VPS 4 · 5,50 €/mese · Carta o PayPal · ordini accettati anche fuori dall'UE→Prezzo verificato il 17/10/2026, durata 24 mesi


