MikroTik come server VPN: WireGuard su RouterOS 7.16 — guida passo passo per la casa

In breve

Guida dettagliata per configurare un VPN casalingo su MikroTik con WireGuard in RouterOS 7.16. In 60–120 minuti potrai avviare il tuo server VPN personale, collegare smartphone e laptop, attivare split-tunnel o traffico completo attraverso la tua rete domestica, configurare il firewall e verificare la sicurezza.

MikroTik come server VPN: WireGuard su RouterOS 7.16 — guida passo passo per la casa

Introduzione

In questa guida imposterai un server VPN domestico sul router MikroTik usando WireGuard in RouterOS 7.16. Otterrai una connessione sicura e crittografata a qualsiasi ora da qualunque luogo verso la tua rete domestica e internet tramite la tua casa. Potrai collegare telefoni, laptop e tablet, abilitare l’accesso a NAS, telecamere e stampanti, oltre ad attivare split-tunnel (solo accesso alla rete domestica) o tunnel completo (tutto il traffico internet passa dalla tua casa).

La guida è pensata per principianti: spiegheremo i concetti base, creeremo passo passo l’interfaccia WireGuard, configureremo indirizzi, regole firewall e NAT, apriremo la porta necessaria, collegheremo client su iOS, Android, Windows e macOS. Per utenti avanzati c’è una sezione su ottimizzazione MTU, eccezioni FastTrack, supporto IPv6 e configurazioni site-to-site.

Prima di iniziare è utile conoscere le basi della subnetting in LAN e il concetto di porta sul router, ma spiegheremo comunque tutti i passaggi in modo semplice. Il tempo di esecuzione è 60–120 minuti, compresi test e risoluzione problemi. Se hai un IP esterno dinamico, configureremo DDNS MikroTik per accedere alla tua casa tramite un nome stabile.

Al termine saprai come: configurare un server WireGuard su MikroTik, aprire con sicurezza porte firewall, assegnare indirizzi VPN ai dispositivi, scegliere la modalità di instradamento del traffico, verificare il funzionamento e aggiungere rapidamente nuovi utenti.

Consiglio: Tieni aperta questa guida sul laptop e WinBox o WebFig su un’altra finestra, così da poter seguire i passaggi senza cambiare contesto.

Preparazione preliminare

Prima di partire, accertiamoci che tutto sia pronto e a portata di mano. Così risparmierai tempo e ridurremo errori.

Strumenti, programmi e accessi necessari

  • Router MikroTik con RouterOS 7.16 (modelli come hAP ac2/ac3, hAP ax2/ax3, RB4011, Chateau ecc.).
  • Accesso all’amministrazione: WinBox (Windows), WebFig (browser) o CLI (terminale/SSH).
  • Smartphone e/o laptop per testare i client WireGuard.
  • Diritti amministrativi sul router (completi). Conosci la password e puoi entrare.
  • Connessione internet (DHCP/PPPoE/fibra), preferibilmente con IP pubblico. Se il provider ti assegna un NAT privato (CGNAT), serve port forwarding da un router esterno o un accesso alternativo, ad esempio tramite un altro canale.

Requisiti di sistema e condizioni

  • RouterOS 7.16 o superiore. WireGuard è pienamente supportato nella serie v7, quindi aggiorna se hai la 6.x.
  • Memoria RAM sufficiente (di solito almeno 128 MB vanno bene per scenari domestici).
  • Una porta UDP libera sull’interfaccia esterna (default 51820/UDP, ma puoi usare qualsiasi altra porta).

Cosa scaricare e installare in anticipo

  • WinBox — strumento pratico di MikroTik per Windows; su macOS e Linux puoi usare WebFig dal browser.
  • App WireGuard per i client: iOS (App Store), Android (Google Play), Windows e macOS (app ufficiali WireGuard). L’installazione richiede pochi minuti su ogni dispositivo.

Backup della configurazione

Prima di configurare è importante creare un backup. Così potrai tornare indietro con un clic se qualcosa va storto.

  1. Apri WinBox e connettiti al router.
  2. Vai su Files e clicca il pulsante Backup.
  3. Assegna un nome al file, ad esempio backup_before_wireguard.
  4. Seleziona Encryption e imposta una password per proteggere il backup.
  5. Salva il file sul computer premendo Download.

⚠️ Attenzione: Conserva backup e password in un luogo sicuro. Un backup protetto ti permette di ripristinare rapidamente il router in caso di errore.

Consiglio: Salva anche la configurazione corrente esportandola: apri New Terminal ed esegui il comando /export file=pre_wg_config, poi scarica il file pre_wg_config.rsc da Files.

Concetti base

Facciamo un riepilogo veloce dei termini chiave per seguire la guida con sicurezza.

  • WireGuard — protocollo VPN moderno, con crittografia potente e configurazione semplice. Funziona su UDP creando un tunnel tra «peer» attraverso coppie di chiavi.
  • Peer — partecipante al tunnel WireGuard: può essere server o client. Ogni peer ha una coppia di chiavi (privata e pubblica) e una lista AllowedIPs, ovvero gli indirizzi permessi per il routing tramite quel peer.
  • Interfaccia WireGuard — interfaccia di rete virtuale su MikroTik (es. wg-home). Qui assegniamo l’indirizzo da cui passerà il traffico dei client.
  • Listen Port — porta UDP su cui il server WireGuard ascolta le connessioni in ingresso.
  • AllowedIPs — lista “bianca” di indirizzi che il peer può annunciare e instradare. Sul server di solito è l’indirizzo VPN del client, ad esempio 10.10.10.2/32. Sul client è o la rete da raggiungere (split-tunnel) o tutto il traffico (0.0.0.0/0 per tunnel completo).
  • Split-tunnel — solo il traffico verso reti domestiche passa attraverso il tunnel; il resto va direttamente su internet tramite il provider mobile o Wi-Fi.
  • Tunnel completo — tutto il traffico internet del client passa attraverso la rete domestica (server abilitato con NAT per sottorete VPN).
  • DDNS — DNS dinamico. MikroTik offre un servizio integrato che ti assegna un nome tipo something.sn.mynetname.net e lo aggiorna automaticamente al cambio IP esterno.
  • FastTrack — meccanismo di accelerazione connessioni su MikroTik. A volte bisogna escludere il traffico VPN per evitare problemi di gestione delle sessioni.

Importante: WireGuard non ha una “sessione server” nel senso classico. Il client invia il primo pacchetto, il server lo riceve e memorizza da dove proviene. Per client dietro NAT è utile impostare Persistent Keepalive per mantenere viva la rotta.

Step 1: Aggiorniamo RouterOS e prepariamo il dispositivo

Obiettivo

Assicurarsi di avere RouterOS 7.16, orario corretto sul router e un backup creato. Questa è la base per far funzionare WireGuard stabilmente.

Istruzioni passo passo

  1. Avvia WinBox o WebFig e accedi come amministratore.
  2. Vai su System → Packages e controlla la versione di RouterOS.
  3. Se inferiore a 7.16, vai su System → Packages → Check for Updates.
  4. Seleziona il canale stable e aggiorna a 7.16 o superiore.
  5. Al termine attendi il riavvio e rientra nel sistema.
  6. Vai su System → Identity e imposta un nome riconoscibile per il router, es. MT-Home.
  7. Vai su System → Clock e imposta il fuso orario e l’ora corretta.
  8. Apri System → SNTP Client o System → NTP Client (in 7.16 c’è NTP Client) e abilita la sincronizzazione con server pubblici.
  9. Verifica che in IP → Addresses l’interfaccia WAN abbia un indirizzo esterno (DHCP, PPPoE o statico).
  10. Controlla in IP → Firewall → Filter che siano presenti regole base: consentire established, related; bloccare invalid; drop di tutto il traffico indesiderato in ingresso da WAN.

⚠️ Attenzione: Non spegnere o interrompere l’aggiornamento. Usa un UPS se hai dubbi sulla stabilità della corrente.

Consiglio: Dopo l’aggiornamento, controlla System → Routerboard → Upgrade (per il firmware RB) e riavvia per allineare le versioni di RouterOS e Routerboard.

Risultato previsto

Il router gira su RouterOS 7.16, l’orario è corretto, la connessione internet funziona, il firewall base è attivo e il backup è a disposizione.

Problemi comuni e soluzioni

  • Internet non funziona dopo aggiornamento → Verifica che le impostazioni PPPoE o VLAN su WAN non siano state resettate, ripristinale dal backup.
  • L’orologio non si sincronizza → Controlla DNS in IP → DNS; se vuoto, inserisci 1.1.1.1 e 9.9.9.9, quindi riattiva NTP.
  • WinBox non si connette → Abilita MAC-WinBox in Neighbors o usa WebFig via browser con IP LAN.

✅ Verifica: In System → Packages c’è la versione 7.16 o superiore, in System → Clock l’orario è giusto, in IP → Firewall ci sono le regole base attive.

Step 2: Pianifichiamo indirizzamento e modalità accesso

Obiettivo

Decidere la sottorete VPN WireGuard, il tipo di instradamento (split o tunnel completo), DNS, porta e dominio per connettersi dall’esterno.

Istruzioni passo passo

  1. Scegli una sottorete VPN diversa dalla tua LAN domestica; consigliamo 10.10.10.0/24.
  2. Imposta l’indirizzo del server nella sottorete: 10.10.10.1/24 sull’interfaccia wg-home.
  3. Decidi se vuoi split-tunnel (accesso solo a reti domestiche) o tunnel completo (tutto il traffico via casa).
  4. Se split-tunnel, annota le reti domestiche di cui vuoi accesso, es. 192.168.88.0/24 e 192.168.10.0/24.
  5. Se tunnel completo, tieni presente che il router deve fare NAT per 10.10.10.0/24.
  6. Scegli la porta Listen per WireGuard, es. 51820/UDP; puoi usare porte non standard per ridurre il rumore degli scanner.
  7. Controlla se hai IP pubblico o CGNAT. In caso di CGNAT, verifica con il provider la possibilità di un IP pubblico o organizza port forwarding da un router esterno.
  8. Attiva DDNS MikroTik: IP → Cloud → Enable DDNS; annota il nome fornito, es. abcd1234.sn.mynetname.net.
  9. Imposta i DNS per i client: puoi usare 10.10.10.1 (router come resolver) o esterni 1.1.1.1, 9.9.9.9; per accesso ai nomi locali conviene 10.10.10.1.

Consiglio: Se in casa hai già Pi-hole o Unbound, inserisci il suo indirizzo DNS sui client per sfruttare nomi locali e blocco pubblicità.

Risultato previsto

Hai un piano: server WG a 10.10.10.1/24, liste reti locali, modalità (split o completo), porta UDP 51820 e nome DDNS per connetterti.

Problemi comuni e soluzioni

  • LAN e VPN con subnet uguali → Cambia subnet VPN, esempio 10.20.30.0/24, per evitare conflitti di routing.
  • DDNS non genera nome → Controlla accesso internet e DNS del router, riavvia IP → Cloud, assicurati che il traffico in uscita non sia bloccato.
  • IP grigio → Chiedi al provider un IP pubblico o usa un altro canale/port forwarding su dispositivo con IP pubblico.

✅ Verifica: In IP → Cloud vedi il nome DDNS attivo, hai definito la sottorete VPN e modalità, e la porta è scelta.

Step 3: Creiamo l’interfaccia WireGuard e configurazione base routing

Obiettivo

Avviare l’interfaccia WireGuard su MikroTik, generare le chiavi, assegnare indirizzo IP, abilitare il resolver DNS e predisporre NAT per la sottorete VPN.

Istruzioni passo passo

  1. Vai su Interfaces → WireGuard e clicca il + per aggiungere una nuova interfaccia.
  2. Imposta Name: wg-home.
  3. Inserisci Listen Port: 51820.
  4. Lasciala MTU a default (di solito 1420) o metti 1412 se WAN è PPPoE con MTU 1492.
  5. Salva l’interfaccia e annota il Public Key generato, ti servirà per i client come chiave del server.
  6. Apri IP → Addresses e clicca +.
  7. Metti Address: 10.10.10.1/24.
  8. Seleziona Interface: wg-home e conferma.
  9. Vai su IP → DNS e spunta Allow Remote Requests.
  10. Inserisci Server DNS: 1.1.1.1 e 9.9.9.9 oppure il resolver locale.
  11. Vai su IP → Firewall → NAT e clicca +.
  12. Imposta chain=srcnat.
  13. In Src. Address metti 10.10.10.0/24.
  14. In Out. Interface List scegli WAN.
  15. In Action seleziona masquerade e salva la regola.

Se preferisci usare il terminale, i comandi sono: /interface/wireguard add name=wg-home listen-port=51820, poi /ip address add address=10.10.10.1/24 interface=wg-home, seguito da /ip dns set allow-remote-requests=yes servers=1.1.1.1,9.9.9.9 e /ip firewall nat add chain=srcnat action=masquerade src-address=10.10.10.0/24 out-interface-list=WAN comment="WG clients to internet".

Consiglio: Inserisci un commento descrittivo in ogni regola per facilitare la gestione futura: MikroTik ti farà risparmiare ore di lavoro.

Risultato previsto

Interfaccia wg-home attiva, con Public Key, indirizzo 10.10.10.1/24 assegnato, il router risolve DNS per i client e NAT è pronto per la rete VPN.

Problemi e soluzioni

  • Public Key assente → Assicurati di aver salvato l’interfaccia, le chiavi si generano in automatico alla creazione.
  • DNS non funziona in VPN → Controlla che Allow Remote Requests sia attivo e che ci siano DNS pubblici indicati.
  • Client con tunnel completo senza internet → Verifica la presenza della regola masquerade per 10.10.10.0/24 e che sia posizionata sopra altre regole srcnat più generiche.

✅ Verifica: In Interfaces → WireGuard c’è wg-home con Listen Port 51820 e Public Key, in IP → Addresses 10.10.10.1/24 assegnato a wg-home, in IP → DNS attivo Allow Remote Requests.

Step 4: Configuriamo firewall, apriamo porta e DDNS

Obiettivo

Consentire in modo sicuro connessioni UDP al server WireGuard da internet, permettere traffico tra VPN e LAN, e assicurare visibilità su DDNS dall’esterno.

Istruzioni passo passo

  1. Vai su IP → Firewall → Filter e individua le regole nella catena chain=input.
  2. Verifica che la prima regola accetti connection-state=established,related,untracked.
  3. Controlla che il traffico invalid venga bloccato.
  4. Aggiungi una regola: chain=input, protocol=udp, dst-port=51820, in-interface-list=WAN, action=accept, comment="Allow WireGuard".
  5. Aggiungi regola: chain=input, in-interface=wg-home, action=accept, comment="Allow input from WG".
  6. Controlla che dopo queste regole ci sia un drop a tutto il traffico in ingresso da WAN non esplicitamente permesso.
  7. Passa a IP → Firewall → Filter e aggiungi regole nella catena chain=forward.
  8. Aggiungi: in-interface=wg-home, out-interface-list=LAN, action=accept, comment="WG → LAN".
  9. Aggiungi: in-interface=wg-home, out-interface-list=WAN, action=accept, comment="WG → Internet".
  10. Opzionale: aggiungi regola: in-interface-list=LAN, out-interface=wg-home, action=accept, comment="LAN → WG".
  11. Verifica la regola FastTrack (di solito accept fasttrack connection-state=established,related).
  12. Sposta le regole WireGuard sopra FastTrack o crea eccezioni per non perdere controllo sul traffico tunnel.
  13. Apri IP → Cloud e assicurati che DDNS sia abilitato e che venga mostrato un nome DNS.
  14. Se il router è dietro un altro router, configura il port forwarding UDP 51820 verso l’IP del tuo MikroTik sul dispositivo esterno.
  15. Da una rete esterna verifica la porta con uno scanner UDP (es. nmap da altro server) per confermarne la raggiungibilità.

Linee di comando CLI per firewall e NAT possono essere: /ip firewall filter add chain=input action=accept connection-state=established,related,untracked comment="accept established", /ip firewall filter add chain=input action=drop connection-state=invalid comment="drop invalid", /ip firewall filter add chain=input action=accept protocol=udp dst-port=51820 in-interface-list=WAN comment="allow WG", /ip firewall filter add chain=input action=accept in-interface=wg-home comment="allow input from wg", /ip firewall filter add chain=input action=drop in-interface-list=WAN comment="drop rest from WAN", /ip firewall filter add chain=forward action=accept in-interface=wg-home out-interface-list=LAN comment="WG to LAN", /ip firewall filter add chain=forward action=accept in-interface=wg-home out-interface-list=WAN comment="WG to Internet".

⚠️ Attenzione: Non aprire mai tutte le porte in ingresso da internet. Consenti solo protocolli e porte necessarie e blocca il resto in modo esplicito.

Consiglio: Usa IP → Firewall → Interface Lists: metti le interfacce WAN nella lista WAN, porte LAN e Wi-Fi nella lista LAN. Questo semplifica le regole e riduce errori quando modifichi la configurazione.

Risultato previsto

Porta UDP 51820 aperta in ingresso su WAN, traffico tra wg-home e LAN/internet permesso, DDNS attivo e port forwarding configurato se serve.

Problemi e correzioni

  • Porta non raggiungibile da esterno → Controlla che la regola input per WG sia prima di un eventuale drop, verifica che il provider non blocchi UDP, controlla port forwarding sul router esterno.
  • Nessun accesso da WG a LAN → Assicurati che ci sia la regola forward per WG → LAN e che nei client le AllowedIPs includano le subnet locali.
  • Sessioni WG si interrompono → Controlla FastTrack, escludi traffico WG o metti le regole WG sopra FastTrack.

✅ Verifica: Da esterno la scansione UDP mostra porta 51820 aperta o rispondente, firewall ordinato, DDNS visualizza IP corretto.

Step 5: Aggiungiamo il primo client (smartphone) e configuriamo split/completo tunnel

Obiettivo

Creare peer server per il telefono, generare chiavi client, scegliere modalità instradamento e connettersi.

Istruzioni passo passo

  1. Installa l’app WireGuard sullo smartphone (iOS o Android).
  2. Apri l’app e crea un nuovo tunnel scegliendo “Create from scratch”.
  3. L’app genererà PrivateKey e PublicKey; lascia l’app aperta.
  4. Su MikroTik vai in Interfaces → WireGuard → Peers e aggiungi un nuovo peer (+).
  5. Seleziona Interface: wg-home.
  6. Incolla la Public Key dell’app nello campo Public Key.
  7. In Allowed Address metti 10.10.10.2/32 (indirizzo VPN client).
  8. Se vuoi, genera su telefono una Preshared Key e incollala sia qui che nel client per sicurezza maggiore.
  9. In Persistent Keepalive inserisci 25 per mantenere la connessione per client dietro NAT mobile.
  10. Salva il peer su MikroTik.
  11. Sul telefono apri la configurazione del tunnel e inserisci i parametri server.
  12. Nella sezione Interface imposta Address: 10.10.10.2/32, DNS: 10.10.10.1 (o 1.1.1.1 se preferisci).
  13. Nella sezione Peer incolla la Public Key del server (da wg-home su MikroTik).
  14. Se usi Preshared Key, inseriscila anche qui.
  15. In Endpoint scrivi il tuo nome DDNS e la porta, es. abcd1234.sn.mynetname.net:51820.
  16. In AllowedIPs inserisci la modalità: per split-tunnel scrivi 10.10.10.0/24 e le reti domestiche (es. 192.168.88.0/24); per tunnel completo 0.0.0.0/0, ::/0.
  17. Salva la configurazione e attiva il tunnel tramite l’interruttore.
  18. In WinBox vai su Interfaces → WireGuard → Peers per vedere se è presente l’ultimo Handshake e RX/TX corrente.
  19. Verifica l’accesso: prova a navigare una risorsa locale, es. 192.168.88.1 (router) o NAS.
  20. Se usi tunnel completo, visita un sito “mostrami il mio IP” e controlla che sia l’IP esterno di casa, non quello mobile.

Comando equivalenti CLI per peer: /interface/wireguard peers add interface=wg-home public-key="TUO_PUBLIC_KEY_CLIENT" allowed-address=10.10.10.2/32 persistent-keepalive=25 comment="phone".

Consiglio: Assegna a ogni client un indirizzo /32 fisso nella sottorete VPN e tienili annotati in una tabella. Così gestirai più facilmente utenti e disconnessioni.

Risultato previsto

Lo smartphone si connette al tuo WireGuard su MikroTik, appare nei peers, ha accesso alla rete domestica e in tunnel completo il traffico internet passa da casa.

Problemi e soluzioni

  • Handshake assente → Controlla che PublicKey e Endpoint siano corretti, la porta aperta e DDNS aggiornata, verifica il firewall in input.
  • Handshake presente ma nessun accesso LAN → Assicurati che la regola forward WG → LAN esista e che AllowedIPs client includano le subnets corrette in split mode.
  • In tunnel completo assenza di internet → Controlla NAT sulla VPN 10.10.10.0/24 e la regola forward verso WAN.
  • DNS non risolve → Verifica Allow Remote Requests su MikroTik e che client abbia DNS 10.10.10.1 o esterno impostato.

✅ Verifica: Nell’app WireGuard lo stato è connesso, in MikroTik vedi l’ultimo Handshake, ping a 10.10.10.1 e IP LAN rispondono, in tunnel completo l’IP pubblico corrisponde a quello domestico.

Step 6: Colleghiamo laptop o PC (Windows/macOS/Linux)

Obiettivo

Aggiungere un secondo client con chiavi dedicate, mostrare la configurazione per Windows e macOS, verificare accesso e opzioni di avvio automatico.

Istruzioni passo passo

  1. Installa l’app WireGuard per il tuo sistema operativo e aprila.
  2. Crea un nuovo tunnel con generazione chiavi («Add Tunnel» → «Add empty tunnel»).
  3. Salva PrivateKey e PublicKey generate per quel dispositivo.
  4. Su MikroTik vai in Interfaces → WireGuard → Peers e aggiungi un nuovo peer.
  5. Imposta Interface: wg-home.
  6. Incolla la PublicKey del laptop nel campo Public Key.
  7. In Allowed Address metti 10.10.10.3/32 (indirizzo disponibile successivo).
  8. Se il laptop spesso si connette da NAT (caffè, hotel), imposta Persistent Keepalive a 25.
  9. Salva il peer.
  10. Sul laptop configura il tunnel: nella sezione Interface metti Address 10.10.10.3/32, DNS 10.10.10.1.
  11. In Peer inserisci la PublicKey del server.
  12. Endpoint: abcd1234.sn.mynetname.net:51820.
  13. In AllowedIPs scegli split (10.10.10.0/24 più subnet LAN) o tunnel completo (0.0.0.0/0, ::/0).
  14. Se usi PresharedKey, inseriscila sia server che client.
  15. Salva e attiva il tunnel.
  16. Testa ping a 10.10.10.1, poi 192.168.88.1 e infine un host locale qualsiasi.
  17. In tunnel completo verifica apertura siti internet e che mostrino il tuo IP domestico.
  18. Abilita l’avvio automatico se vuoi (Windows: «Activate on boot», macOS: aggiungi app all’avvio).

Consiglio: Per laptop aziendali è comodo usare split-tunnel per non far passare tutto il traffico aziendale da casa, ma solo quello verso la rete domestica.

Risultato previsto

Il laptop si collega stabilmente a WireGuard, accede alle risorse domestiche, e con tunnel completo naviga internet tramite la rete di casa, con possibilità di partenza automatica.

Problemi e soluzioni

  • Windows non avvia tunnel all’avvio → Esegui app come amministratore e attiva «Activate on boot», verifica servizi WireGuard.
  • macOS dimentica permessi → Aggiungi WireGuard alle liste di rete e VPN nelle impostazioni sistema, concedi autorizzazioni necessarie.
  • Ping a 192.168.88.1 fallisce → Controlla regole forward WG → LAN, aggiungi eccezioni se bloccate sopra.

✅ Verifica: L’interfaccia client mostra stato Established, contatori RX/TX crescono, routing funziona correttamente e accesso a risorse locali c’è.

Step 7: Politiche di routing, esclusioni e MTU

Obiettivo

Configurare dettagliatamente rotte per split-tunnel, escludere subnet locali da tunnel completo sul client, ottimizzare MTU e gestire eventuali problemi con FastTrack.

Istruzioni passo passo

  1. Se usi split-tunnel, aggiungi in AllowedIPs dei client gli indirizzi delle reti domestiche: 10.10.10.0/24, 192.168.88.0/24 e altre subnet di interesse.
  2. Se tunnel completo ma vuoi escludere dispositivi locali Wi-Fi (es. stampanti di hotel), configura rotte di esclusione sul client o crea un profilo split-tunnel separato.
  3. Su MikroTik conferma che esista NAT masquerade per 10.10.10.0/24 verso WAN, necessario per internet da VPN.
  4. Controlla FastTrack: sposta la regola sotto o aggiungi eccezioni per far sì che traffico tunnel sia gestito correttamente.
  5. Con WAN PPPoE riduci MTU dell’interfaccia WireGuard a 1412 per evitare frammentazione e migliorare stabilità.
  6. In caso di reti instabili aumenta Persistent Keepalive a 25–30 secondi per client dietro NAT ostico.
  7. Se vuoi, attiva reply-only in IP → ARP sulle interfacce LAN per ridurre rumore ARP, utile in reti grandi ma non obbligatorio.

Consiglio: Controlla MSS sul client con tunnel completo: in alcune piattaforme è utile abbassare MTU client a 1280–1380 per compatibilità mobile massima.

Risultato previsto

Routing del tunnel funzionante secondo le esigenze, nessuna perdita o frammentazione, FastTrack non interferisce, client dietro NAT difficili collegati stabilmente.

Problemi e soluzioni

  • Caricamento pagine lento o blocchi → Riduci MTU su client e/o wg-home a 1412 o 1380 e riprova.
  • Traffico sfugge al tunnel → Controlla AllowedIPs; se c’è solo 10.10.10.0/24, internet rimane fuori tunnel.
  • Perdita connessione inattiva → Imposta Persistent Keepalive = 25 sul client per risolvere problemi con NAT mobile.

✅ Verifica: Traceroute da client verso internet passa attraverso casa con tunnel completo, e solo verso reti domestiche in split mode; i siti si caricano rapidamente senza ritardi.

Step 8: Aggiungiamo altri utenti, teniamo traccia e aumentiamo la sicurezza

Obiettivo

Standardizzare l’aggiunta di peer, mantenere una gestione trasparente, abilitare misure di sicurezza aggiuntive e log per diagnosi rapida.

Istruzioni passo passo

  1. Per ogni nuovo utente crea un peer singolo con indirizzo /32 unico, es. 10.10.10.4/32, 10.10.10.5/32, ecc.
  2. Compila il campo Comment con nome utente, dispositivo e data di assegnazione.
  3. Tieni una tabella in un file o nota con: nome, dispositivo, IP, PublicKey, data, modalità (split/tunnel completo), PresharedKey.
  4. Limita l’accesso di alcuni peer solo alle reti necessarie: client tramite AllowedIPs, server con regole firewall forward.
  5. Abilita log di sistema per WireGuard: in System → Logging crea regola topics=wireguard action=memory/file per audit semplice degli handshake.
  6. Controlla regolarmente Peers: la colonna Last Handshake mostra chi è connesso e quando, RX/TX misura il traffico scambiato.
  7. Revoca l’accesso a dispositivi persi rimuovendo il peer in MikroTik per bloccare l’accesso immediatamente.

Consiglio: Se usi una regola Drop all input da WAN, conserva sempre un accesso fisico o un canale di emergenza out-of-band per non perderti nell’eventualità di modifiche errate.

Risultato previsto

Nuovi utenti aggiunti in pochi minuti, gestione chiara, monitoraggio degli accessi e traffico, revoca accesso rapida per dispositivi sospetti o persi.

Problemi e soluzioni

  • Utente segnala bassa velocità → Controlla MTU, qualità linea, carico WAN; testa con iperf dentro il tunnel.
  • Log affollati di messaggi → Filtra topics o usa action=disk con rotazione per non saturare la memoria.
  • Blocchi traffico casuali → Controlla l’ordine delle regole; permessi a WG devono stare sopra drop generali.

✅ Verifica: Aggiunta di client veloce, handshake attivo dopo accensione tunnel, log aggiornati, accesso revocato non più valido subito dopo la rimozione.

Controllo finale

Checklist di funzionalità

  • Interfaccia wg-home attiva con indirizzo 10.10.10.1/24.
  • Porta UDP 51820 aperta sull’interfaccia esterna, testabile da remoto.
  • Public Key visibile sul server, client con Endpoint e chiavi corrette.
  • Firewall consente input su UDP 51820 e forward WG verso LAN/WAN.
  • DNS del router permette ai client remoti di risolvere nomi.
  • Client accedono a reti domestiche (split) o a internet (tunnel completo).

Come testare

  1. Attiva il tunnel sul telefono e fai ping a 10.10.10.1, poi a 192.168.88.1.
  2. Apri NAS o web interface router via IP locale.
  3. Con tunnel completo verifica IP esterno coincide con l’IP di casa.
  4. Da rete esterna verifica porta UDP 51820 sul tuo DDNS.
  5. Su MikroTik controlla WireGuard → Peers: Last Handshake si aggiorna, RX/TX cresce.

Indicatori di successo

  • Handshake stabile ogni 20–120 secondi in attività.
  • Bassa latenza e nessuna frammentazione; pagine caricate velocemente.
  • Nessun blocco drop nei log per traffico WireGuard.

Errori tipici e soluzioni

  • Problema: Handshake assente sul client. Motivo: Porta 51820 UDP chiusa o Endpoint/DDNS errati. Soluzione: Controlla regola input, port forwarding e aggiornamento IP DDNS; verifica endpoint corrispondente a nome e porta configurati.
  • Problema: Handshake presente ma no accesso LAN. Motivo: Mancanza regola forward WG → LAN o AllowedIPs client incompleti. Soluzione: Aggiungi regola forward e aggiorna AllowedIPs con subnet LAN nei client.
  • Problema: Nessun internet in tunnel completo. Motivo: Mancanza NAT masquerade per 10.10.10.0/24 o regola nascosta sotto altro NAT. Soluzione: Aggiungi regola srcnat masquerade sopra le altre.
  • Problema: Navigazione lenta o blocchi. Motivo: MTU errato o frammentazione. Soluzione: Imposta MTU 1412 su wg-home e/o riduci MTU client a 1280–1380.
  • Problema: Cadute intermittenti su client mobili. Motivo: NAT con timeout breve. Soluzione: Imposta Persistent Keepalive=25 su server e client.
  • Problema: Accesso admin perso dopo restrizioni firewall. Motivo: Regola drop input prima di quelle di accettazione. Soluzione: Accedi via MAC-WinBox da LAN, correggi ordine regole, ripristina backup se serve.
  • Problema: Client connesso ma non risolve nomi. Motivo: Allow Remote Requests disattivato o DNS client non impostato. Soluzione: Attiva Allow Remote Requests e imposta DNS 10.10.10.1 o DNS esterni.

Funzionalità aggiuntive

Configurazioni avanzate

  • IPv6 con WireGuard: Aggiungi indirizzo ULA VPN, es. fd00:10:10::1/64 su wg-home, consenti ::/0 in AllowedIPs per tunnel completo; NAT66 non serve ma valuta provider e routing.
  • Site-to-Site (casa-seconda casa): Imposta WireGuard su due MikroTik, scambia chiavi pubbliche, consenti subnet reciproche in AllowedIPs, configura rotte statiche; così unisci due sedi.
  • Accesso limitato a servizi: Invece di includere tutta la LAN in AllowedIPs, esponi solo IP/porte necessarie e filtra il resto con firewall forward.
  • Eccezioni FastTrack: Escludi traffico da/per wg-home dal FastTrack o metti regole WireGuard sopra FastTrack per stabilità del tunnel.

Ottimizzazione

  • Hardware: Su MikroTik moderni WireGuard è veloce; controlla CPU Load nei picchi per stimare capacità reale.
  • Code QoS: Se usi QoS, verifica che traffico wg-home sia gestito correttamente.
  • Log: Attiva logging solo temporaneamente per non saturare memoria; usa rotazione e filtri per argomenti.

Ulteriori suggerimenti

  • Automatizza configurazioni: Conserva template .conf per client, sostituisci chiavi e indirizzi; genera QR code per mobile da PC e memorizza note su MikroTik.
  • Segmenta pool VPN: Dividi indirizzi, per esempio 10.10.10.2–.50 per famiglia, .51–.100 per ospiti, e applica filtri ai permessi di rete.

Consiglio: Tieni due utenti amministratori WireGuard con dispositivi diversi, per avere accesso di riserva in caso di problemi con uno.

FAQ

  • Quale porta usare per WireGuard? Default è 51820/UDP, ma puoi scegliere qualsiasi porta UDP libera; porte non standard aiutano a ridurre scansioni inutili.
  • Posso connettere più dispositivi contemporaneamente? Sì, ogni dispositivo deve avere un peer con un /32 unico nella subnet VPN.
  • Serve un IP esterno statico? No, basta il DDNS MikroTik; importante che la porta sia accessibile da esterno.
  • Come disconnetto velocemente un telefono perso? Rimuovi il peer corrispondente su MikroTik; l’accesso viene revocato subito.
  • Qual è la differenza tra split-tunnel e tunnel completo? In split-tunnel passa solo il traffico domestico, in tunnel completo tutto il traffico internet con NAT sul server.
  • Come scelgo l’MTU? Parti da 1420; per PPPoE usa 1412; se hai problemi riduci progressivamente fino a 1380 testando ogni volta.
  • Devo abilitare Preshared Key? È una sicurezza aggiuntiva sopra le chiavi WireGuard; opzionale ma consigliata per maggiore protezione.
  • Posso limitare l’accesso del client solo a un server in LAN? Sì, su client indica solo l’IP di quel server in AllowedIPs e sul MikroTik applica regole firewall mirate con permessi e blocchi.
  • Perché i grafici di traffico sono vuoti nonostante connessione attiva? Controlla che il traffico non stia passando con FastTrack e che gli interface siano corretti nel monitoraggio.
  • Come testare la porta senza siti esterni? Usa da un server remoto uno scan UDP con nmap sul DDNS e porta 51820; se risponde la porta è raggiungibile.

Conclusione

Hai messo in funzione un server WireGuard su MikroTik con RouterOS 7.16, configurando l’interfaccia wg-home, la subnet 10.10.10.0/24, il resolver DNS, regole firewall e NAT corrette, aprendo la porta UDP 51820 dall’esterno, collegato smartphone e laptop, scelto la modalità routing (split o completo) e verificato tutto. Hai inoltre imparato a gestire MTU, eccezioni FastTrack, IPv6 e configurazioni site-to-site.

Ora puoi aggiungere utenti, segmentare accessi, integrare smart home e servizi locali, e distribuire configurazioni automaticamente. Mantieni aggiornato RouterOS e backup per sicurezza e facilità di recupero.

Consiglio: Ogni trimestre controlla la lista peers, elimina quelli inattivi e aggiorna le chiavi su dispositivi critici per mantenere alto il livello di sicurezza.

⚠️ Attenzione: Un VPN fai-da-te richiede non solo installazione ma anche manutenzione: monitoraggio della porta, backup regolari e rapide procedure di rollback in caso di problemi. Se vuoi un server personale pronto all’uso senza complicazioni, valuta vpn.how: offre IP dedicati non condivisi, supporto WireGuard, OpenVPN, IKEv2, L2TP e SSTP, avvio server in 5 minuti dopo pagamento, no log, pagamenti in rubli con Tinkoff, Ozon, SBP e USDT/BTC, con server in molte città tra cui Mosca, San Pietroburgo, Amsterdam, Francoforte, Londra, New York, San José, Chicago, Singapore, Sydney, Madrid, Helsinki, Stoccolma, Varsavia, Copenaghen e Stavanger; tariffe da 490 ₽ al giorno o 2490 ₽ al mese con sconti per periodi lunghi. Ideale se non hai IP pubblico o poca voglia di smanettare col port forwarding del provider.

Ora hai in mano un VPN domestico funzionante su MikroTik. Allenati, documenta le modifiche e migliora la configurazione in base alle tue esigenze. Buon lavoro!

Roman Melnikov

Roman Melnikov

Technical Writer and System Administrator

Technical writer and DevOps engineer with 9 years of experience. Created over 50 detailed guides on system configuration and administration. His instructions helped thousands of professionals successfully solve technical tasks. Popular author on Habr and YouTube.
Bauman Moscow State Technical University. Information Systems and Technologies
Technical Documentation DevOps System Administration Linux Docker and Kubernetes CI/CD Infrastructure Automation Cloud Technologies System Monitoring Bash and Python Scripting

Condividi questo articolo: