eliminato il file copia
This commit is contained in:
@@ -1,130 +0,0 @@
|
||||
---
|
||||
title: "Accedere a una LAN da remoto con Tailscale"
|
||||
date: "2025-04-21"
|
||||
draft: false
|
||||
summary: "Una guida su come accedere alla propria LAN da remoto con Tailscale e un subnet routers."
|
||||
tags:
|
||||
- vpn
|
||||
- networking
|
||||
- pve
|
||||
hideBackToTop: false
|
||||
hidePagination: true
|
||||
toc: true
|
||||
readTime: true
|
||||
autonumber: false
|
||||
math: true
|
||||
showTags: true
|
||||
fediverse: "@dado@social.novemila.org"
|
||||
---
|
||||
|
||||
Tailscale è una VPN zero-config basata sul protocollo WireGuard, progettata per collegare in modo sicuro dispositivi attraverso reti diverse come se fossero nella stessa rete locale (LAN).
|
||||
|
||||
Le sue caratteristiche principali:
|
||||
|
||||
- Ogni *connessione è crittografata*, garantendo la protezione dei dati durante il transito
|
||||
- Opera in modalità *mesh*: a differenza dei tradizionali sistemi centralizzati, in cui un server dirige il traffico, in una rete mesh ogni dispositivo (nodo) comunica direttamente con gli altri in modalità peer-to-peer. Questo approccio riduce la latenza e migliora l'efficienza
|
||||
- Gestisce automaticamente il NAT (Network Address Translation) e la configurazione di firewall, semplificando notevolmente le varie configurazioni
|
||||
|
||||

|
||||
|
||||
- Una volta che i dispositivi si connettono alla *tailnet* (la propria rete privata), Tailscale si occupa di instradare il traffico, garantendo che i dati raggiungano il destinatario corretto senza interventi manuali
|
||||
|
||||
Per maggiori informazioni, fare riferimento alla [documentazione ufficiale](https://tailscale.com/blog/how-tailscale-works)
|
||||
|
||||
## Installazione di un subnet routers
|
||||
|
||||
Grazie ai [Proxmox Helper-Scripts](https://community-scripts.github.io/ProxmoxVE/scripts?id=add-tailscale-lxc), possiamo installare Tailscale in maniera semplicissima.
|
||||
|
||||
Per prima cosa, dobbiamo creare un container LXC basato su Debian 12 sulla nostra infrastruttura PVE. Per maggiori dettagli, vedere gli articoli [Come installare e configurare PVE e PBS utilizzando una connessione WiFi](/posts/2025-03-08-proxmox.md) e [Gestire il firewall di PVE](/posts/2025-03-30-proxmox-firewall.md).
|
||||
|
||||
Il container LXC agirà da `subnet router`, ovvero da *gateway*, inoltrando il traffico della subnet `10.10.1.0/24`, consentendo così l'accesso via VPN a tutte le risorse della LAN.
|
||||
|
||||
Ora, come scritto nella [documentazione](https://community-scripts.github.io/ProxmoxVE/scripts?id=add-tailscale-lxc), dal nodo PVE fisico dobbiamo lanciare il seguente script:
|
||||
|
||||
```bash
|
||||
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/tools/addon/add-tailscale-lxc.sh)"
|
||||
```
|
||||
|
||||
Selezionare l'host su cui installare Tailscale e attendere il completamento del processo.
|
||||
|
||||

|
||||
|
||||
## Configurazione del subnet routers
|
||||
|
||||
Dal container LXC, seguendo la [documentazione di Tailscale](https://tailscale.com/kb/1019/subnets#connect-to-tailscale-as-a-subnet-router), abilitare l'IP forwarding:
|
||||
|
||||
```txt
|
||||
echo 'net.ipv4.ip_forward = 1' | tee -a /etc/sysctl.d/99-tailscale.conf
|
||||
echo 'net.ipv6.conf.all.forwarding = 1' | tee -a /etc/sysctl.d/99-tailscale.conf
|
||||
sysctl -p /etc/sysctl.d/99-tailscale.conf
|
||||
```
|
||||
|
||||
Dopo aver abilitato l'IP forwarding sul dispositivo, eseguire il comando `tailscale up --advertise-routes=10.10.1.0/24`.
|
||||
|
||||
L'opzione `--advertise-routes` permette di specificare, tramite una lista separata da virgole, le subnet che il dispositivo renderà raggiungibili attraverso la tailnet. Il dispositivo, in altri termini, farà da gateway per quelle sottoreti, permettendo ai dispositivi della propria tailnet (la rete privata creata da Tailscale) di accedere alle risorse presenti in quella LAN.
|
||||
|
||||
Il comando `tailscale` ha diversi altri parametri:
|
||||
|
||||
```txt
|
||||
USAGE
|
||||
tailscale [flags] <subcommand> [command flags]
|
||||
|
||||
SUBCOMMANDS
|
||||
up Connect to Tailscale, logging in if needed
|
||||
down Disconnect from Tailscale
|
||||
set Change specified preferences
|
||||
login Log in to a Tailscale account
|
||||
logout Disconnect from Tailscale and expire current node key
|
||||
switch Switch to a different Tailscale account
|
||||
configure Configure the host to enable more Tailscale features
|
||||
syspolicy Diagnose the MDM and system policy configuration
|
||||
netcheck Print an analysis of local network conditions
|
||||
ip Show Tailscale IP addresses
|
||||
dns Diagnose the internal DNS forwarder
|
||||
status Show state of tailscaled and its connections
|
||||
metrics Show Tailscale metrics
|
||||
ping Ping a host at the Tailscale layer, see how it routed
|
||||
nc Connect to a port on a host, connected to stdin/stdout
|
||||
ssh SSH to a Tailscale machine
|
||||
funnel Serve content and local servers on the internet
|
||||
serve Serve content and local servers on your tailnet
|
||||
version Print Tailscale version
|
||||
web Run a web server for controlling Tailscale
|
||||
file Send or receive files
|
||||
bugreport Print a shareable identifier to help diagnose issues
|
||||
cert Get TLS certs
|
||||
lock Manage tailnet lock
|
||||
licenses Get open source license information
|
||||
exit-node Show machines on your tailnet configured as exit nodes
|
||||
update Update Tailscale to the latest/different version
|
||||
whois Show the machine and user associated with a Tailscale IP (v4 or v6)
|
||||
drive Share a directory with your tailnet
|
||||
completion Shell tab-completion scripts
|
||||
```
|
||||
|
||||
### Abilitare la subnet dalla console di amministrazione
|
||||
|
||||
Infine, dalla console di amministrazione, dobbiamo approvare la subnet:
|
||||
|
||||
- Aprire la pagina *Machines* nella console di amministrazione
|
||||
|
||||

|
||||
|
||||
- Selezionare il dispositivo con l'etichetta *subnets*, quindi navigare nella sezione *Routing Settings*
|
||||
- Selezionare *Edit* per aprire le impostazioni di modifica delle rotte
|
||||
- Spuntare le rotte da approvare
|
||||
|
||||
## Tailscale sullo smartphone Android
|
||||
|
||||
Possiamo installare Tailscale da [Fdroid](https://f-droid.org/packages/com.tailscale.ipn/) sullo smartphone e fare l'accesso col proprio account. Dopo aver attivato la VPN, se tutto é stato configurato nella maniera corretta, potremo accedere alle risorse della subnet che abbiamo approvato:
|
||||
|
||||

|
||||
|
||||
## Riferimenti
|
||||
|
||||
- [SSH into Raspberry Pi from Outside Home Network Using Tailscale](https://itsfoss.com/tailscale-raspberry-pi-ssh/)
|
||||
- [Tailscale - Proxmox VE Helper-Scripts](https://community-scripts.github.io/ProxmoxVE/scripts?id=add-tailscale-lxc)
|
||||
- [Accedere a una rete da remoto con Tailscale](https://pietro.in/posts/tailscale-router/)
|
||||
- [DNS in Tailscale](https://tailscale.com/kb/1054/dns)
|
||||
- [Set up a subnet router](https://tailscale.com/kb/1019/subnets#set-up-a-subnet-router)
|
||||
- [Che cos’è una rete mesh e come funziona?](https://nordvpn.com/it/blog/rete-mesh/)
|
Reference in New Issue
Block a user