Come scollegare HA da Nabu Casa e vivere felici

Indice dei contenuti

Condividi con:

Breve intro

Come web developer ho già a disposizione uno o più domini che gestisco con cPanel, per cui non ho bisogno di attivarne di nuovi o appoggiarmi a Cloudflare o DuckDNS per accedere ad HA dall’esterno. Pertanto questa guida si rivolge a chi ha già un suo dominio ma ha bisogno di spiegazioni rapide e semplici su cosa fare per farlo puntare al proprio HA in locale, mantenendo attive le funzioni vocali di Google Home.

Premessa
Parto con una premessa, uso un FRITZ!Box 7530 e ho settato già il DDNS nella sezione Internet->Abilitazioni->DynDNS. 

Questa premessa è importante perché FRITZ!Box è uno dei pochi modelli sul mercato che permette di utilizzare un proprio servizio personale di DNS dinamico, la stragrande maggioranza dei router di solito propone una lista di servizi commerciali tra cui scegliere il che obbliga l’utente ad utilizzare servizi gratuiti (poco affidabili) o a pagamento (che è ciò che vogliamo evitare).

Per configurare il proprio DynDNS (o DDNS) bisogna anche accertarsi che il vostro cPanel abbia la funzione “Dynamic DNS”. Nel pannello principale di cPanel cercate questa voce, se la trovate potete cominciare, viceversa potete provare a chiedere al vostro hosting se ve la può implementare.

Quindi se abbiamo un router che ci consente di usare un DDNS custom e un cPanel con la funzione DDNS attiva, possiamo cominciare!

Dynamic DNS (o DDNS)

Per prima cosa si va nella sezione “Dynamic DNS” sul cPanel e si crea un record del tipo “local.dominio.it”, la procedura crea un URL di aggiornamento da inserire sul router. Copia l’URL e vai sul router nella sezione DDNS, qui incolla l’URL di aggiornamento, il dominio “local.dominio.it” e le credenziali di login di cPanel. 

ogni volta che cambia l’IP Pubblico, il router richiamerà l’URL di aggiornamento informando cPanel del cambiamento.

L’URL di aggiornamento è collegato ad uno script nativo sul cPanel che va semplicemente ad aggiornare il record DNS (A) “local.dominio.it”, assegnandogli l’IP pubblico. Siccome il record A ha generalmente un TTL (Time To Live) di 300 (secondi), significa che se il tuo IP pubblico cambia, ci vorranno almeno 5 minuti affinché si propaghi la modifica nei NS del provider e torni ad essere raggiungibile da remoto. Ma questo avviene con qualsiasi servizio DDNS.

Se ti ritrovi in una situazione simile, e ci hai capito qualcosa, puoi proseguire con il resto della guida.

cPanel e DNS

Ora dobbiamo creare il dominio che ci permette di raggiungere il nostro HA.

Apri cPanel e crea un nuovo sottodominio, ad esempio: homeassistant.dominio.it

Fatto questo vai nella zona DNS ed elimina tutti i nuovi Record standard assegnati a quel sottodominio, perché tanto non ti serviranno.

Crea un nuovo record CNAME con nome “homeassistant.dominio.it” e associalo al record “local.dominio.it”

Perché fare questo? Beh semplicemente per dividere l’eventuale accesso al router da remoto, dall’accesso ad home assistant.

Sul Router

Abilita il port forwarding per l’IP che esegue HA, attivando le porte interne ed esterne 80 e 443.

Cambia ovviamente la porta per l’accesso esterno al router in modo che non vadano in conflitto.

Su Home Assistant

Apri le Impostazioni e vai su Componenti aggiuntivi. Clicca su “Raccolta di componenti aggiuntivi” e installa “Nginx Proxy Manager”.

Una volta installato, abilita le opzioni:

  • Esegui all’avvio
  • Watchdog
  • Aggiornamento automatico

Clicca su avvia e apri il terminale (se non l’hai ancora installato, cerca “Advanced SSH & Web Terminal” e installalo, sempre da raccolta componenti aggiuntivi).

Nelle opzioni di “Advanced SSH & Web Terminal” disabilita temporaneamente la voce “Modalità di protezione” e clicca su riavvia.

Nel terminale digita: docker ps

Ti restituirà una lista di servizi in esecuzione, cerca una stringa simile a “addon_a0d7b954_nginxproxymanager” e copiala.

Lancia il comando “docker inspect addon_a0d7b954_nginxproxymanager | grep IPAddress” ti restituirà l’IP locale sul quale sta girando NGINX.

A questo punto apri il tuo configuration.yaml e modifica o aggiungi la sezione http come segue:


http:
  use_x_forwarded_for: true
  trusted_proxies:
    - 127.0.0.1
    - ::1
    - 172.30.x.x/24  # Sostituisci x.x con l'IP rilevato in precedenza
    


Ora puoi riabilitare la voce “Modalità di protezione” su “Advanced SSH & Web Terminal”.

A questo punto torna su “Impostazioni->Componenti aggiuntivi” e apri “Nginx Proxy Manager”, clicca su “Apri l’interfaccia web ed esegui il login con le credenziali di default:

  • Username predefinito: admin@example.com
  • Password predefinita: changeme

Dopo il primo accesso, cambia le credenziali inserendo la tua email e una nuova password.

Configura un Proxy Host per Home Assistant

  1. Nella dashboard di NPM, vai su Hosts > Proxy Hosts.

  2. Fai clic su Add Proxy Host.

  3. Compila i campi come segue:

    • Domain Names: Inserisci homeassistant.dominio.it.
    • Scheme: Scegli http.
    • Forward Hostname/IP: Inserisci l’IP locale del dispositivo che esegue Home Assistant (es. 192.168.1.100).
    • Forward Port: Inserisci 8123.
    • Block Common Exploits: Attiva questa opzione.
    • Websockets Support: Assicurati che sia attivato.
  4. Vai alla scheda SSL:

    • Seleziona Request a new SSL Certificate.
    • Spunta Force SSL.
    • Inserisci un’email valida per Let’s Encrypt.
    • Accetta i termini di servizio.
  5. Fai clic su Save.

Se NPM restituisce “Internal Error”, vai sulle impostazioni di HA, Riavvia il sistema.

Dopo il riavvio ripeti il passaggio 4.

Fatto questo dovrebbe darti l’host con status verde “Online”.

Digita sul browser “https://homeassistant.dominio.it” e dovresti vedere la schermata di login del tuo HA!

Se tutto è andato come previsto, sei già ad un buon punto perché l’accesso da remoto è configurato correttamente.

Google Home

Fortunatamente qui le cose sono cambiate di recente e la procedura è stata enormemente automatizzata (prima vi assicuro che era un macello).

Per mantenere attive le funzionalità di Google Home, per prima cosa dovete andare su “Impostazioni->Dispositivi e Servizi->Aggiungi integrazione”. Cerca Google nella barra di ricerca, cliccaci sopra e poi clicca su “Google Assistant SDK” per attivarlo.
Ti chiederà di eseguire il login con il tuo account Google (lo stesso che usi per Google Home).

A questo punto Google dovrebbe creare automaticamente un nuovo progetto sviluppatore abilitando le relative chiavi API necessarie, collegandole direttamente nella configurazione di Home Assistant.

Ora vai su “Impostazioni->Assistenti Vocali->Esponi” ed esponi tutte le entità che vuoi ritrovarti su Google Home.

Apri l’app Google Home. Apri le impostazioni e tocca su “funziona con google”.

Disattiva ed elimina il collegamento con l’integrazione Nabu Casa.
Cerca il nome del progetto creato da Google Assistant SDK ed inizia il collegamento.

Terminato il processo, dì al tuo Google Home “Ok Google, Sincronizza i miei dispositivi”.

A questo punto dovresti essere riuscito a completare il collegamento tra HA e Google Home correttamente e riuscire a comandare i dispositivi senza dover più pagare Nabu Casa.

0 0 voti
Valutazione Articolo
Iscriviti
Notificami
guest
0 Commenti
Vecchi
Più recenti Le più votate
IoT by Hardweb.it