−25%

su Windows con pagamento annuale, fino al 31/10. Vai ai piani

EQVPS
Inizia

VPS per l'accesso remoto a Home Assistant

Raggiungi Home Assistant da ovunque senza aprire porte a casa: un piccolo VPS gestisce WireGuard e HTTPS, la casa si collega a lui. Setup, costi, limiti.

Vuoi aprire la dashboard di Home Assistant dal treno. Il router dice di no: il provider ti mette dietro un carrier-grade NAT, oppure il port forwarding sarebbe possibile ma preferisci non esporre tutta la rete di casa a internet per accendere una luce. Un piccolo VPS risolve entrambi i problemi. La casa si collega in uscita al VPS tramite WireGuard, e il VPS è l'unica faccia pubblica: con un dominio vero, un certificato vero e niente in casa in ascolto verso il mondo.

Come funziona il setup

phone ──HTTPS──> VPS (Caddy :443) ──WireGuard──> Home Assistant :8123 at home
                       ▲
              home box dials out on UDP 51820

Sul VPS girano due cose: un server WireGuard e Caddy come reverse proxy. A casa, un client WireGuard (sull'host di Home Assistant, su un Raspberry Pi o sul router) tiene aperto un tunnel. Quando visiti https://ha.example.com, Caddy passa la richiesta nel tunnel a 10.8.0.2:8123.

Cosa ti serve

1. Server WireGuard sul VPS

apt update && apt install -y wireguard caddy
wg genkey | tee /etc/wireguard/server.key | wg pubkey > /etc/wireguard/server.pub
chmod 600 /etc/wireguard/server.key

cat > /etc/wireguard/wg0.conf <<EOF
[Interface]
Address = 10.8.0.1/24
ListenPort = 51820
PrivateKey = $(cat /etc/wireguard/server.key)

[Peer]
# the home side
PublicKey = HOME_PUBLIC_KEY
AllowedIPs = 10.8.0.2/32
EOF

systemctl enable --now wg-quick@wg0
ufw allow 51820/udp && ufw allow 80,443/tcp

2. Il lato di casa

Su qualsiasi macchina Linux di casa (o nell'add-on client WireGuard di Home Assistant) crea il peer. Il keepalive è importante: mantiene il tunnel aperto attraverso il NAT del router di casa.

[Interface]
Address = 10.8.0.2/24
PrivateKey = HOME_PRIVATE_KEY

[Peer]
PublicKey = SERVER_PUBLIC_KEY
Endpoint = ha-vps.example.com:51820
AllowedIPs = 10.8.0.1/32
PersistentKeepalive = 25

Se il client WireGuard gira su una macchina diversa da quella di Home Assistant, inoltra 10.8.0.2:8123 all'host di HA nella rete locale, oppure, più semplice, esegui il client direttamente sull'host di HA.

3. HTTPS con Caddy

cat > /etc/caddy/Caddyfile <<'EOF'
ha.example.com {
    reverse_proxy 10.8.0.2:8123
}
EOF
systemctl reload caddy

Caddy ottiene il certificato in automatico e gestisce la connessione WebSocket su cui si basa l'app di Home Assistant.

4. Di' a Home Assistant di fidarsi del proxy

Senza questo passaggio, HA rifiuta le richieste che passano dal proxy. In configuration.yaml:

http:
  use_x_forwarded_for: true
  trusted_proxies:
    - 10.8.0.1

Riavvia Home Assistant, apri https://ha.example.com e imposta quell'URL come indirizzo esterno nell'app mobile.

I compromessi, onestamente

L'HTTPS termina sul VPS, quindi quel server vede in chiaro il traffico della dashboard prima che entri nel tunnel. Il server è tuo, ed è proprio questo il punto, ma trattalo come parte della rete di casa: solo chiavi SSH, aggiornamenti attivi, nient'altro in esecuzione. Tieni attivi la password di Home Assistant e il login a due fattori: il proxy non è un livello di autenticazione.

Il servizio cloud ufficiale a pagamento del team di Home Assistant fa lo stesso lavoro senza alcuna manutenzione e finanzia il progetto. Se preferisci non gestire affatto un server, è una risposta perfettamente valida. La strada del VPS vince quando fai già self-hosting, vuoi il tuo dominio o vuoi mettere in futuro altri servizi di casa dietro lo stesso tunnel.

Guide correlate

Pronto a fare il deploy? Paga in crypto, niente KYC — online in circa un minuto.

Fai il deploy ora →

FAQ

Perché usare un VPS invece di aprire una porta sul router?

Molte connessioni domestiche sono dietro un carrier-grade NAT, quindi non c'è nessuna porta da inoltrare. E anche quando c'è, esporre a internet l'IP di casa e il router è un rischio inutile. Con un VPS è la casa ad aprire una connessione WireGuard in uscita, e l'unica cosa esposta a internet è un piccolo server che puoi ricostruire in pochi minuti.

Quale piano mi serve?

Un Nano-IP ($8/mese) basta e avanza: inoltra solo il traffico e termina l'HTTPS. Serve un piano con IP dedicato, perché il VPS deve accettare HTTPS in entrata e una porta UDP di WireGuard; i piani NAT non accettano connessioni in entrata oltre alla tua porta SSH.

Il VPS vede il traffico di Home Assistant?

L'HTTPS termina sul VPS, quindi il server che controlli vede le richieste decifrate prima di mandarle nel tunnel. È lo stesso modello di fiducia di qualsiasi reverse proxy: la differenza è che la macchina è tua. Tieni comunque attivi il login di Home Assistant e l'autenticazione a due fattori.

Aggiunge latenza?

Un salto in più. Da una casa in Europa a un VPS in Germania o Finlandia sono di solito 10–40 ms di andata e ritorno: impercettibili per dashboard, interruttori e istantanee delle telecamere. Solo con i flussi video in diretta potresti accorgertene.

Cosa succede se il VPS si ferma?

L'accesso remoto si interrompe; le automazioni di casa continuano a funzionare, perché Home Assistant non ha mai dipeso dal VPS. In casa tutto funziona come prima sull'indirizzo locale.

Commenti

Ancora nessun commento. Sii il primo.

Lascia un commento

I commenti sono moderati prima di comparire.