Devo poter accedere a home assistant e Nextcloud dall’esterno della mia rete domestica. Ho seguito una guida su YouTube per configurare il tunnel Cloudflare verso il mio home assistant, funzionato.
Devo fare la stessa cosa per la mia istanza di Nextcloud, ma non sono sicuro di come. Forse un sottodominio? Apprezzerei qualche suggerimento!
Reverse Proxy. Puoi avere infiniti sottodomini come nextcloud.miosito.com e HomeAssistant.miosito.com e così via. Uso HAproxy installato sul router PFsense. A mio avviso è il modo migliore. Un altro è nginx ma non so nulla a riguardo.
Inoltre, con il reverse proxy, devi esporre solo una porta su internet. Porta 443 o porta 80 a seconda se usi https o http.
Direi di smettere qui e non cadere nella prima tentazione di esporre le cose su Internet. È necessario pensarci attentamente perché c’è rischio, e se fai questa domanda forse non hai ancora l’esperienza per mettere in sicurezza le cose come serve. Non voglio essere offensivo, ma ci sono modi più semplici.
Una soluzione è… VPN.
Consiglio Tailnet. Non necessita di esporre nulla direttamente, e puoi accedere a tutto sulla tua rete se aggiungi un nodo di uscita su un PC o server della tua rete.
Un’altra opzione è considerare se potresti aggiungere anche un tunnel cloudflared per Nextcloud. Non ne sono sicuro, non l’ho mai usato, ma ci potrebbero essere istruzioni già disponibili.
Il tailgate, eh? Ho bisogno di un client su ogni dispositivo affinché funzioni? Saremo membri della famiglia in zone diverse del mondo che utilizzeranno Nextcloud e non vogliamo dover essere sempre connessi al VPN su tutti i nostri servizi…
Posso aggiungere solo sottodomini usando le impostazioni DNS di Namecheap, sembra. Uso DNS personalizzato come da guida e utilizzo i nameserver di Cloudflare. Mancano passaggi?
Presumo che l’idea sia di puntare il mio dominio principale XYZ.com a Home Assistant e di creare un sottodominio cloud.xyz.com che punti a Nextcloud. Sto pensando bene?
Ho bisogno di un client su ogni dispositivo per farlo funzionare?
Sì.
Non voglio essere sempre connesso al VPN
Esposizione diretta dei servizi su internet è una pessima idea.
Se non usi VPN, l’altro metodo sicuro è aggiungere un login secondario davanti a tutti i tuoi servizi usando un IdM (Identity Management) come Authelia o Authentik. Questo richiederebbe di configurare un reverse proxy e imparare a configurare un IdM.
Un altro metodo è usare un login federato davanti ai tuoi servizi, tramite un servizio cloud condiviso come Google, Facebook, ecc. Come fare dipende dal reverse proxy; ad esempio, per Nginx puoi usare vouch-proxy.
Il lato negativo di questi metodi è che usano cookie HTTP, quindi non funzionano con servizi non-HTTP come giochi, sincronizzazione Syncthing, ecc.
Lui sì, ma sarebbe più sicuro che lasciarlo aperto. Non consuma molta batteria averlo sempre acceso, ma puoi impostare scorciatoie per attivarlo/disattivarlo come necessario.
Se decidi di aprirlo, assicurati di avere una pagina di login su tutto. Implementa 2FA su ogni account. Usa certificati SSL per HTTPS, direttamente su Nextcloud o tramite un reverse proxy, e forwarda solo la porta 443 sul router, mantenendo il software aggiornato con le patch di sicurezza.
Per farlo, ti serve un servizio DNS dinamico come DuckDNS per evitare che il provider cambi il tuo IP e inducano perdita di connessione. Consiglio di usare il metodo del reverse proxy con un contenitore come SWAG, che può aggiornare automaticamente SSL e ha installato fail2ban per proteggerti dagli attacchi DDoS.
In impostazioni DNS di Namecheap, ho inserito i 2 nameserver forniti da Cloudflare. Per farlo, ho selezionato “custom DNS” nelle impostazioni di Namecheap.
Quando provo ad aggiungere un sottodominio, dice che le impostazioni di Namecheap non possono essere “custom DNS”.
Certamente, ma il sito web medio è su un server dedicato, quindi se viene compromesso, non hanno accesso alla LAN con i tuoi dispositivi personali. Inoltre, di solito hanno persone pagate per vigilare e aggiornare vulnerabilità e changelog.
Puoi sicuramente ospitare pubblicamente se vuoi, non è così spaventoso come pensa la comunità dell’auto-ospedalità, ma richiede impegno. Se non hai competenze e tempo, usare una VPN è molto più sicuro.