Generatore di exit node Tailscale
Scegli server di controllo, nome host, modalità di accesso e firewall: il generatore scrive lo script completo per un VPS Linux, il passaggio di approvazione, una policy di auto-approvazione facoltativa e i comandi per usare e verificare l'exit node dai tuoi dispositivi. Nulla esce dal tuo browser.
Tutto viene generato nel tuo browser. Nulla viene inviato o salvato. Non incollare mai una vera chiave di autenticazione in un sito web: lascia il segnaposto e sostituiscilo sul server.
Nome mostrato nel menu Exit node dei tuoi dispositivi. Minuscole, cifre e trattini.
Con un tag come tag:exit, una regola autoApprovers approva l'exit node in automatico. Lascia vuoto per approvare a mano.
Una chiave di autenticazione permette a uno script o a cloud-init di accedere senza browser. Creala in Settings > Keys (Tailscale) o con headscale preauthkeys create.
Lo script non attiva mai un firewall. Aggiunge solo le regole necessarie a Tailscale a quello già in uso.
- Lo script si ferma su tailscale up e mostra un URL di accesso: aprilo nel browser per aggiungere il server al tuo tailnet.
Generato per exit-vps · 5 passaggi
#!/usr/bin/env bash
set -euo pipefail
# 1. Installare Tailscale con lo script ufficiale
curl -fsSL https://tailscale.com/install.sh | sh
# 2. Attivare l'IP forwarding (obbligatorio per un exit node)
echo 'net.ipv4.ip_forward = 1' | sudo tee /etc/sysctl.d/99-tailscale.conf
echo 'net.ipv6.conf.all.forwarding = 1' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
sudo sysctl -p /etc/sysctl.d/99-tailscale.conf
# 3. Facoltativo: UDP GRO forwarding per il throughput
command -v ethtool >/dev/null || { sudo apt-get install -y ethtool 2>/dev/null || sudo dnf install -y ethtool; }
NETDEVS=$(
(ip -4 -o route get 8.8.8.8; ip -6 -o route get 2001:4860:4860::8888) 2>/dev/null |
awk '{for (i = 1; i < NF; i++) if ($i == "dev") print $(i + 1)}' |
sort -u
)
for NETDEV in $NETDEVS; do
sudo ethtool -K "$NETDEV" rx-udp-gro-forwarding on rx-gro-list off || true
done
# 4. Accedere e annunciare l'exit node
sudo tailscale up \
--advertise-exit-node \
--hostname=exit-vps
# 5. Verifica: nodo online e forwarding attivo (= 1)
tailscale status
sysctl net.ipv4.ip_forward
Approva l'exit node
Nella console di amministrazione apri Machines, il menu del nodo, scegli Edit exit node e spunta Use as exit node. Solo un amministratore può farlo.
# Elencare gli exit node utilizzabili da questo dispositivo
tailscale exit-node list
# Far passare tutto il traffico dall'exit node
sudo tailscale set --exit-node=exit-vps
# Uguale, mantenendo l'accesso alla rete locale
sudo tailscale set --exit-node=exit-vps --exit-node-allow-lan-access=true
# Deve mostrare l'IP pubblico del VPS
curl -4 https://ifconfig.me
# Smettere di usare l'exit node
sudo tailscale set --exit-node=
Su Windows, macOS, iOS e Android l'app Tailscale elenca gli exit node approvati nel menu Exit node: scegli il nome host qui sopra. Consenti l'accesso alla rete locale se ti servono ancora stampante o NAS.
Un exit node ha bisogno di un server sempre acceso
Un piccolo VPS ti dà un IP pubblico fisso nel paese che scegli, esegue questo script così com'è e può ospitare Headscale o un server WireGuard sulla stessa macchina.
Link di affiliazione: potremmo ricevere una commissione senza costi aggiuntivi per te. Il generatore resta gratuito e non dipende da questo.
Cosa fa lo script, passo per passo
Un exit node è un dispositivo del tuo tailnet che fa uscire il traffico internet degli altri dispositivi. Su Linux servono tre cose che l'installazione predefinita non fa: IP forwarding attivo nel kernel, l'opzione --advertise-exit-node e l'approvazione di un amministratore del tailnet. Lo script gestisce le prime due; l'approvazione è un clic nella pagina Machines oppure automatica tramite un tag e una regola autoApprovers.
Il passaggio UDP GRO è un'ottimizzazione facoltativa del throughput, documentata da Tailscale per exit node e subnet router con kernel Linux 6.2 o successivo. Non sopravvive a un riavvio a meno di aggiungerla a networkd-dispatcher o NetworkManager, e su kernel più vecchi fallisce senza conseguenze: per questo lo script ne ignora gli errori.
Più dispositivi possono essere exit node nello stesso tailnet. Ogni client ne usa uno alla volta: per nome, per IP Tailscale o con --exit-node=auto:any per seguire il nodo suggerito. Esegui lo script su ogni server che vuoi offrire, con un nome host diverso ogni volta.
Dove far girare il tuo exit node
L'exit node decide quale IP vedono i siti. Ogni opzione risponde a un'esigenza diversa.
| Exit node su | IP vista dai siti | Utile per | Limite |
|---|---|---|---|
| Un VPS | Un IP di data center nel paese scelto | Uscita sempre attiva, Wi-Fi pubblico, IP stabile per allow-list | Costo mensile; l'IP è a tuo nome, non anonimo |
| Un computer o router di casa | Il tuo IP di casa | Raggiungere i servizi di casa, il solito catalogo streaming | Dipende dall'upload e dalla corrente di casa |
| Add-on Mullvad | Un IP di server Mullvad | Molti paesi, IP condivisi | Add-on a pagamento, nessun controllo sul server |