Server VPN fai da te: WireGuard su un VPS pagato in Monero
Pubblicato 15 Oct 2026
Un server VPN fai da te con WireGuard su un VPS economico pagato in Monero: configurazione passo passo, costi reali e cosa una VPN personale non nasconde.

Una VPN self-hosted, o VPN fai da te, è un server VPN WireGuard su un piccolo VPS che prendi a noleggio: telefono e portatile vi si collegano attraverso un tunnel, e i siti che visiti vedono l'indirizzo del server invece della tua connessione di casa. Costruire la tua VPN richiede una manciata di comandi e da circa €3 a $10 al mese; se paghi in Monero un provider che chiede al massimo un'email, sulla fattura non compare alcun nome. Non ti rende anonimo, ed è da questo compromesso che parte la guida.
Verificato il 1° ottobre 2026.
VPS vs VPN: cosa nasconde ciascuno
Un VPS (virtual private server, server privato virtuale) è una macchina virtuale a noleggio: da solo non nasconde nulla. Una VPN (virtual private network, rete privata virtuale) è un tunnel cifrato dal tuo dispositivo a un server: la tua rete vede pacchetti cifrati diretti a un solo indirizzo, e i siti vedono il server al posto tuo.
Installa un software VPN su un VPS e ne hai una tutta tua; abbonati a Mullvad o IVPN e condividi la loro. Chi vede cosa:
| Chi vede cosa | Senza VPN | La tua VPN su un VPS | VPN commerciale condivisa |
|---|---|---|---|
| Il tuo operatore internet o il Wi-Fi del bar | Ogni sito che visiti | UDP cifrato verso un solo server | Traffico cifrato verso il server della VPN |
| I siti che visiti | Il tuo IP di casa | L'IP del tuo server, usato solo da te | Un IP condiviso da molti clienti |
| Chi gestisce il server | Nessun server coinvolto | Il tuo provider di hosting può vedere i volumi di traffico e gli IP che si connettono | L'azienda della VPN, secondo la sua policy sui log |
Quando ha senso una VPN self-hosted e quando è meglio una VPN condivisa
Prima di creare la tua VPN, decidi da chi ti stai nascondendo. Una VPN fai da te conviene quando la minaccia è la rete a cui sei collegato: il Wi-Fi dell'hotel, un operatore che registra la tua navigazione, un filtro in ufficio. In più ti dà un indirizzo di uscita fisso e nessuna azienda VPN di cui doverti fidare.
Non conviene quando la minaccia sta dall'altra parte. Un IP di uscita che usi solo tu funziona come un'impronta digitale: accedi a un solo account che porta il tuo nome e da quel momento lo porta anche l'indirizzo. Il tuo provider di hosting sa inoltre che dietro quell'IP c'è un solo cliente e, se conserva i registri dei flussi di rete, quale indirizzo vi si collega ogni mattina: casa tua.
Una VPN condivisa ti nasconde nella folla: ogni indirizzo di uscita rimanda all'azienda VPN, non a una persona. Il nostro vano VPN e proxy elenca quelle che accettano Monero. Per l'anonimato nei confronti dei siti stessi, nessuna delle due sostituisce Tor Browser.
Cosa serve: un VPS KVM, una località, un pagamento in Monero
KVM, non container. Un VPS KVM ha un proprio kernel Linux con WireGuard già incluso; un VPS a container (OpenVZ, LXC) condivide il kernel del provider e potrebbe non permetterti di caricarlo.
Basta poco. Un server VPN personale richiede poca CPU e poca memoria; guarda piuttosto il traffico incluso. Un terabyte al mese corrisponde a circa 3 Mbit/s, 24 ore su 24.
Una località vicina a te, perché la distanza aggiunge latenza. La giurisdizione decide chi può chiedere i registri al provider; ne parla la nostra guida ai VPS offshore.
Una registrazione che non vanifichi il pagamento. Monero tiene il tuo nome fuori dalla fattura, ma un numero di telefono o una verifica dei documenti ce lo rimette. La procedura d'ordine completa è nella nostra guida senza KYC.
VPS per WireGuard pagabili in Monero, in ordine alfabetico, con i dati presi dalle pagine di ciascun provider:
| Provider | Piano più piccolo | Traffico | Alla registrazione chiede | Note |
|---|---|---|---|---|
| 1984 Hosting | €8,72 / mese (1 CPU, 1 GB RAM) | 1 TB | Email, telefono facoltativo | Islanda; immagine WireGuard pronta all'uso |
| Cockbox | $10 / mese (0,5 vCPU, 1 GB RAM) | "Illimitato" in Moldavia | Email (non verificata) e password | Moldavia, Romania; Bitcoin o Monero |
| Kyun | Circa €3,10 / mese (1 core, 1 GiB, 10 GB, un IPv4) | Non pubblicato | Password e un puzzle proof-of-work | Solo Monero; Stati Uniti, Paesi Bassi, Romania |
| Servers Guru | €4,99 / mese (1 vCPU, 2 GB RAM) | 20 TB in uscita, in entrata senza limiti | Paesi Bassi, Finlandia, Singapore, Canada | |
| SporeStack | $4 / mese (Slow Servers, 768 MiB, IPv4) | 0,375 TiB | Nulla: ricarichi un token | Gli Slow Servers stanno a Spokane (Stati Uniti) e l'attivazione può richiedere fino a 48 ore; i server DigitalOcean e Vultr si avviano in pochi minuti, da $7,50 ogni 30 giorni |
Mynymbox (da €4 al mese, solo email) consente i servizi VPN nella sua policy di utilizzo accettabile, ma il giorno della verifica tutti i suoi piani VPS risultavano esauriti. Altri provider nel vano VPS.
Configurare il server VPN WireGuard sul VPS
WireGuard fa parte del kernel Linux dalla versione 5.6, uscita a marzo 2020 (annuncio), quindi su Debian 12 o 13 o su Ubuntu 24.04 e successive non c'è nulla da compilare. Accedi come root con la tua chiave SSH e scegli una strada.
Opzione A: WireGuard puro con wg-quick
Il server WireGuard completo, configurato a mano. Esegui ip route show default e annota la parola che segue dev (spesso eth0 o ens3): usala ovunque compaia eth0 qui sotto.
apt update && apt install -y wireguard iptables qrencode
cd /etc/wireguard
umask 077
wg genkey | tee server.key | wg pubkey > server.pub
wg genkey | tee phone.key | wg pubkey > phone.pub
Crea /etc/wireguard/wg0.conf:
[Interface]
Address = 10.66.66.1/24
ListenPort = 51820
PrivateKey = <contents of server.key>
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
[Peer]
PublicKey = <contents of phone.pub>
AllowedIPs = 10.66.66.2/32
E il file del client, phone.conf:
[Interface]
PrivateKey = <contents of phone.key>
Address = 10.66.66.2/32
DNS = 9.9.9.9
[Peer]
PublicKey = <contents of server.pub>
Endpoint = <server IP>:51820
AllowedIPs = 0.0.0.0/0, ::/0
PersistentKeepalive = 25
AllowedIPs = 0.0.0.0/0, ::/0 manda tutto nel tunnel; dato che questo server inoltra solo IPv4, il traffico IPv6 si blocca invece di sfuggire al tunnel. Avvia il server e mostra la configurazione del client come codice QR per l'app WireGuard:
systemctl enable --now wg-quick@wg0
qrencode -t ansiutf8 < phone.conf
Ogni dispositivo in più è un'altra coppia di chiavi e un altro blocco [Peer] (10.66.66.3/32 e così via), seguiti da systemctl restart wg-quick@wg0. Quando un dispositivo ha la sua configurazione, cancella dal server i suoi file .key e .conf.
Opzione B: wg-easy in Docker, con interfaccia web
wg-easy racchiude WireGuard in un container con un'interfaccia web per aggiungere client e mostrare i codici QR. La sua pagina GitHub indica la licenza AGPL-3.0-only, la release 15.4.0 di agosto 2026 e commit risalenti a fine settembre 2026. Installa Docker e scarica il file compose:
curl -sSL https://get.docker.com | sh
mkdir -p /etc/docker/containers/wg-easy
cd /etc/docker/containers/wg-easy
curl -o docker-compose.yml https://raw.githubusercontent.com/wg-easy/wg-easy/master/docker-compose.yml
Il file avvia ghcr.io/wg-easy/wg-easy:15, con WireGuard su UDP 51820 e l'interfaccia web su TCP 51821, aperta a Internet. Il progetto suggerisce un reverse proxy HTTPS per raggiungere l'interfaccia dall'esterno; per una sola persona è più semplice tenerla privata. Cambia la riga della porta dell'interfaccia in "127.0.0.1:51821:51821/tcp", poi togli il commento alla riga environment: e alla riga INSECURE subito sotto, impostandola su true. L'HTTP in chiaro qui è accettabile solo perché dall'esterno nulla lo raggiunge, ed è proprio la condizione posta dalla guida senza reverse proxy del progetto. Esegui docker compose up -d, poi apri un tunnel dal tuo computer e vai su http://localhost:51821:
ssh -L 51821:127.0.0.1:51821 root@<server IP>
Non affidarti a ufw per nascondere la porta: la documentazione di Docker avverte che le porte pubblicate aggirano le regole di ufw.
Inoltro IP, firewall e DNS
L'opzione A richiede l'inoltro dei pacchetti (il file compose di wg-easy lo imposta per il suo container) e poi un firewall che lasci passare solo SSH e WireGuard. Cambia 22 se il tuo SSH è in ascolto su un'altra porta, e rispondi y quando ufw enable ti avvisa riguardo a SSH:
echo "net.ipv4.ip_forward=1" > /etc/sysctl.d/99-wireguard.conf
sysctl --system
apt install -y ufw
ufw allow 22/tcp
ufw allow 51820/udp
ufw route allow in on wg0 out on eth0
ufw enable
La riga DNS = decide chi risponde alle tue richieste DNS. Con 9.9.9.9 (Quad9) le query passano nel tunnel, quindi il tuo operatore smette di vederle, ma Quad9 le vede. Per non coinvolgere terzi, fai girare sul server un resolver come Unbound in ascolto su 10.66.66.1, aprilo al tunnel con ufw allow in on wg0 to any port 53 e indica quell'indirizzo nella riga DNS =.
Per verificare che funzioni, apri una qualsiasi pagina che mostra il tuo IP con il tunnel attivo: deve comparire l'indirizzo del server.
Sulle reti censurate: AmneziaWG, Outline e VLESS
WireGuard non si camuffa: la sua documentazione lascia l'offuscamento a un livello superiore, e non ha una modalità TCP (limitazioni note). Una rete che ispeziona i pacchetti può individuarlo e bloccarlo. Tre progetti open source sono pensati proprio per questo caso, tutti sullo stesso tipo di VPS:
- AmneziaWG, un fork di WireGuard-Go del progetto Amnezia, invia pacchetti spazzatura prima dell'handshake, sostituisce gli header fissi dei messaggi di WireGuard con valori scelti da te e aggiunge padding ai pacchetti perché le loro dimensioni non corrispondano più. Con queste opzioni disattivate resta compatibile con WireGuard (documentazione). L'app AmneziaVPN lo installa sul tuo server via SSH.
- Outline fa girare un server Shadowsocks gestito da un'app desktop. Lanciato nel 2018 da Jigsaw, un incubatore interno a Google, nel 2026 è passato all'indipendente Outline Foundation (FAQ).
- VLESS è il protocollo di trasporto leggero del progetto Xray (specifica), spesso eseguito sulla porta 443 sopra TLS o REALITY di Xray, così che la connessione sembri normale traffico HTTPS.
Questi strumenti esistono perché alcuni Stati limitano le VPN. Al 1° ottobre 2026, in sintesi e non come consulenza legale:
- Cina: una circolare del Ministero dell'Industria e della Tecnologia dell'Informazione di gennaio 2017 vieta di creare o noleggiare canali VPN per attività transfrontaliere senza autorizzazione (testo ufficiale).
- Russia: la legge federale n. 281-FZ del 31 luglio 2025, in vigore dal 1° settembre 2025, punisce con multe chi pubblicizza strumenti per accedere a risorse bloccate, come le VPN, e chi cerca e consulta consapevolmente contenuti inseriti nell'elenco ufficiale dei materiali estremisti, con o senza uno di questi strumenti.
- Iran: a febbraio 2024 il Consiglio supremo del cyberspazio ha annunciato una risoluzione che vieta le VPN prive di autorizzazione legale; il suo segretario ha poi dichiarato che era rivolta agli enti statali e non al pubblico, il che ne lascia incerta la portata.
Le norme e il modo in cui vengono applicate cambiano. Controlla la legge in vigore nel luogo in cui ti trovi.
Evitare che il server lasci tracce
Solo chiavi per SSH. Metti
PasswordAuthentication noin/etc/ssh/sshd_config.d/10-keys.conf, eseguisystemctl reload sshe verifica in una seconda finestra che la tua chiave ti faccia ancora entrare. Usa una chiave creata solo per questo server.Aggiornamenti di sicurezza automatici.
apt install -y unattended-upgrades, poidpkg-reconfigure -plow unattended-upgradesper attivarli.Log in memoria.
wg showtiene in RAM l'ultimo indirizzo di ogni peer, e SSH registra ogni accesso con il suo IP di origine. Tieni in RAM anche il journal di sistema:mkdir -p /etc/systemd/journald.conf.d printf '[Journal]\nStorage=volatile\n' > /etc/systemd/journald.conf.d/volatile.conf systemctl restart systemd-journaldDa quel momento il journal si trova in
/run/log/journale sparisce al riavvio. Se è installatorsyslog, scrive i propri file in/var/log.SSH attraverso il tunnel. Con l'opzione A funzionante, esegui
ufw allow in on wg0 to any port 22 proto tcpeufw delete allow 22/tcp, poi connettiti a10.66.66.1. Se un giorno il tunnel smette di funzionare, la console web o seriale del provider, dove disponibile, ti permette di rientrare.Un'identità per server. Non riutilizzare l'email, la chiave SSH o il nome utente dei tuoi altri account.
Quanto costa rispetto a Mullvad o IVPN
| Opzione | Al mese | Dispositivi | Indirizzo di uscita |
|---|---|---|---|
| Il tuo VPS (tabella sopra) | Da circa €3,10 a $10 | Quanti ne configuri | Solo tuo |
| Mullvad | €5, fisso per qualsiasi durata | 5 | Condiviso |
| IVPN Standard | $6 ($2 a settimana, $60 all'anno) | 5 | Condiviso |
| cryptostorm | $6 | 1 | Condiviso |
Tutti e tre i servizi accettano Monero. I server più economici costano meno, ma lo scotto da pagare sono la configurazione, gli aggiornamenti e un indirizzo di uscita che rimanda sempre e solo a te. Puoi anche usare entrambe le soluzioni: il tuo server per il Wi-Fi dell'hotel, una VPN condivisa per tutto ciò che non deve risalire a un singolo utente.
FAQ
È possibile creare una VPN fai da te?
Sì. Qualsiasi VPS Linux con KVM e un indirizzo IPv4 pubblico può far girare WireGuard, parte del kernel da Linux 5.6. L'opzione A qui sopra è il metodo completo, e wg-easy aggiunge un'interfaccia web. Funziona anche un Raspberry Pi in casa, ma in quel caso l'indirizzo di uscita è il tuo IP di casa.
Un VPS è più sicuro di una VPN?
Sono cose diverse: un VPS è un server, una VPN è un tunnel. Con una VPN tua su un VPS non devi fidarti di nessuna azienda VPN, ma sei l'unico utente del tuo indirizzo di uscita e tocca a te applicare gli aggiornamenti. Per confonderti nella folla, lo strumento migliore è una VPN condivisa no-log pagata in Monero.
Posso usare il mio VPS come VPN?
Di solito sì: basta un piano KVM con l'inoltro IP attivo, purché le regole del provider lo consentano. La policy di utilizzo accettabile di Mynymbox consente i servizi VPN, la pagina dei VPS in Monero di Servers Guru cita le VPN tra gli usi previsti, Cockbox ammette tutto ciò che è legale in Romania e 1984 Hosting offre un'immagine WireGuard pronta all'uso. I server SporeStack devono rispettare anche le regole di DigitalOcean o di Vultr. Tieni d'occhio il traffico incluso.
Quali sono gli svantaggi di una VPN WireGuard?
WireGuard non tenta alcun offuscamento e non ha una modalità TCP, quindi una rete che lo blocca o che consente solo TCP lo ferma. Il server tiene in memoria l'ultimo indirizzo IP di ogni peer. Di default il protocollo non è resistente agli attacchi quantistici, anche se una chiave pre-condivisa aggiunge un livello di protezione.
Usare una VPN è illegale negli Stati Uniti?
Nessuna legge federale lo vieta, e la Federal Trade Commission pubblica consigli per scegliere un'app VPN (febbraio 2018). Quello che fai attraverso il tunnel ricade sotto le stesse leggi che varrebbero senza, e i termini di un sito web possono comunque vietare l'accesso tramite VPN. Questa è una sintesi, non una consulenza legale.
In breve
Noleggia un piccolo VPS KVM con Monero, installa WireGuard con wg-quick o wg-easy, chiudi tutto tranne SSH e UDP 51820, e tieni i log in RAM e l'accesso SSH dietro il tunnel. Così ottieni privacy rispetto alla rete a cui sei collegato. La privacy nella folla è ciò che vende una VPN condivisa, e l'anonimato è compito di Tor.