Reverse proxy + HA + DIGI

vlade__
nuevo
#1
Hola! Llevo varios meses peleándome con el reverse Proxy para poder acceder a mi instalación de HA.
He seguido todos los tutoriales y no he sido capaz de hacerlo funcional.
Tengo por medio de docker instalado:


Home assistant
Cloudfare
dominio propio
Nginx proxy manager


Cuando monto el ssl para convertir el dominio a HttpS mi explorador me pone que no es confiable y además en el LOG de Ha no me aparece la petición de reverse proxy




Me da en la nariz que mi router Digi se está metiendo por el medio.


Necesito cueste ayuda!
nadadorsano
ForoCoches: Miembro
#2
Cg-nat?
siwi
ForoCoches: Miembro
#3
Como gestionas los certificados HTTPS? Let's Encrypt?
OrZ
ForoCoches: Miembro
#4
Cita de nadadorsano
Cg-nat?
this!

Paga un 1e más para que te saquen del cgnat.
knock
ForoCoches: Miembro
#5
Cita de nadadorsano
Cg-nat?
mas uno
nadadorsano
ForoCoches: Miembro
#6
Cita de nadadorsano
Cg-nat?


Viendo que 2 shurs también coinciden con revisar esto, desarrollo mi respuesta citando.


He visto algún video sobre como funciona el NGINX Reverse Proxy para gestionar HA desde fuera de casa (que imagino es tu idea) pero no lo he tocado nunca.


Antes de mirar si a HA te llega una petición desde el NGINX, mira los logs del NGINX si los tiene para ver si te llega petición.

Con un DDNS (da igual el que sea) bien configurado deberías llegar a tu red (yo lo hice en casa para probar con un servidor de Jellyfin y tuve que pedir que me sacaran en Pepephone).
emrocas
ForoCoches: Miembro
#7
Cita de nadadorsano
Viendo que 2 shurs también coinciden con revisar esto, desarrollo mi respuesta citando.


He visto algún video sobre como funciona el NGINX Reverse Proxy para gestionar HA desde fuera de casa (que imagino es tu idea) pero no lo he tocado nunca.


Antes de mirar si a HA te llega una petición desde el NGINX, mira los logs del NGINX si los tiene para ver si te llega petición.

Con un DDNS (da igual el que sea) bien configurado deberías llegar a tu red (yo lo hice en casa para probar con un servidor de Jellyfin y tuve que pedir que me sacaran en Pepephone).

El problema con CGNAT es que no vas a poder abrir puertos, y lo necesitas para hacer lo que quieres, no?
Mikro
ForoCoches: Miembro
#8
Seguramente sea el CG-NAT. Busca videos dd Cloudflare Tunnel (hay un canal en youtube IBRACORP muy bueno), que yo me salto el cgnat así. Utilizo el SO Unraid en mi server.
nadadorsano
ForoCoches: Miembro
#9
Cita de emrocas
El problema con CGNAT es que no vas a poder abrir puertos, y lo necesitas para hacer lo que quieres, no?
Y que tu DDNS no te va a dar la IP real tuya, sino la de la salida de la CG-NAT.




Haría este camino (ejemplos):


Servidor del shur
192.168.1.100
|
|
192.168.1.1
Router del shur
100.160.0.88 (IP WAN del router cara a la CGNAT)
|
|
10.160.0.0
"Router CGNAT"
86.86.121.45 (la IP que ve el shur en cualesmiip o en su DDNS)
Sr.Kitos
Oh Yeah
#10
Pillo sitio que me da que me ocurre algo similar.
Botella
ForoCoches: Miembro
#11
mas facil, vps montas openvpn el vps de server y lo demas clientes, el vps hace de router y listo.
lolost
ForoCoches: Miembro
#12
Mucha gente está echándole la culpa al CG-NAT, pero si como dices tienes un túnel a Cloudflare, saliendo del cg-nat no solucionarías nada. En un túnel de cloudflare se inicia la conexión en tu casa, y se mantiene abierta.

Otra historia sería sin cloudflare.
vlade__
nuevo
#13
Muchas gracias por las respuestas.
Os intento contestar a todos:
- no estoy en CG-nat pago 1 euro
- utilizo Nginx Proxy manager y no he mirado los logs, mirare y os digo.
- El vpn es útil, pero para poder usar Alexa sin pagar el nabu casa necesitas un acceso https al que asignarle un token de larga duración . Para con eso poder por medio de aws de amazon generarte tu propia skill de alexa.

- al final he pagado nabu casa porque estaba cansado.
Y curiosamente nabu casa te genera una url de acceso. que es https y que no da errores ni problemas con Digi.

Por lo que lo normal es que sea algo del reverse proxy. (docker nginx proxy manager)

No tengo ni idea de redes, pero hasta aquí llegan mis conocimientos adquiridos navegando por internet
superka
ForoCoches: Miembro
#14
Cita de vlade__
Hola! Llevo varios meses peleándome con el reverse Proxy para poder acceder a mi instalación de HA.
He seguido todos los tutoriales y no he sido capaz de hacerlo funcional.
Tengo por medio de docker instalado:


Home assistant
Cloudfare
dominio propio
Nginx proxy manager


Cuando monto el ssl para convertir el dominio a HttpS mi explorador me pone que no es confiable y además en el LOG de Ha no me aparece la petición de reverse proxy




Me da en la nariz que mi router Digi se está metiendo por el medio.


Necesito cueste ayuda!
Prueba Caddy en vez de nginx, me lo agradecerás.
https://community.home-assistant.io/...h-caddy/196943
vlade__
nuevo
#15
Tailscale es una vpn que lo que hace es que te lleva a su red (100.xxx.xxx) yo antes lo tenía así, pero estás en sus “redes” no entras a tu red local, sino que metes tus dispositivos en la suya.

Yo tengo mi dirección IP con un puerto redireccionado, y el cambio de IP lo recibo con un bot de node-red + telegram
zizu5
BIEBER FAN
#16
Salir de la CGNAT, abrir el puerto 443 y el 80 para que apunte al NPM.

No tienes que hacer mucho más.

Saludos.
vlade__
nuevo
#17
pero sin abrir esos puertos, con la url de nabucasa que me genero si que funciona.
la que generé yo con cloudfare y nginx no.
mistervik
ForoCoches: Miembro
#18
Cita de zizu5
Salir de la CGNAT, abrir el puerto 443 y el 80 para que apunte al NPM.

No tienes que hacer mucho más.

Saludos.
Leer para que...
Emerge
ForoCoches: Miembro
#19
Tengo exactamente lo mismo que tú, DIGI incluido. Me costó un poco y me pasaba algo parecido. Me volví loco tocando confguraciones del NPM y del contenedor. Al final, la clave fue editar el fichero configuration.yaml de HA y añadir esto:

Código:
http:
  use_x_forwarded_for: true
  trusted_proxies:
    - 172.31.0.0/24
(la subred tendrás que poner la que encaje con tu red)

Si no te funciona, me lo dices y te intento ayudar.
No_ni_ná
ForoCoches: Miembro
#20
Yo tengo digi con cgnat tienes que usar cloudfare y pagarte un dominio de esos de un euro al año.
vlade__
nuevo
#21
Cita de Emerge
Tengo exactamente lo mismo que tú, DIGI incluido. Me costó un poco y me pasaba algo parecido. Me volví loco tocando confguraciones del NPM y del contenedor. Al final, la clave fue editar el fichero configuration.yaml de HA y añadir esto:

Código:
http:
  use_x_forwarded_for: true
  trusted_proxies:
    - 172.31.0.0/24
(la subred tendrás que poner la que encaje con tu red)

Si no te funciona, me lo dices y te intento ayudar.



¿Como conseguiste esa direccion proxy?
Emerge
ForoCoches: Miembro
#22
Es la IP del contenedor donde tienes el NPM. Yo tengo toda la subred, pero si lo tienes con IP fija, pones la IP y listo.
nestochi
ForoCoches: Miembro
#23
Cita de vlade__
Tailscale es una vpn que lo que hace es que te lleva a su red (100.xxx.xxx) yo antes lo tenía así, pero estás en sus “redes” no entras a tu red local, sino que metes tus dispositivos en la suya.

Yo tengo mi dirección IP con un puerto redireccionado, y el cambio de IP lo recibo con un bot de node-red + telegram
tailscale lo puedes configurar para acceder a tu red local .


también tienes zerotier , que es parecido y también te deja acceder a local
Violgore
ForoCoches: Miembro
#24
Yo tengo anulado lo de trusted proxies me daba problemas.

Con Digi ,dentro de cgnat,uso túnel de cloudflare y todo va al pelo.

Cómo proxi tengo nginx ,nada de npm.

Si todavía no lo tienes solucionado,mañana te pongo mi configuración para que compares.

En cloudflare hay que deshabilitar que actúe como proxy para poder generar los certificados correctamente con cada subdominio.
c4maverick
Waitin' for a sunny day
#25
Cita de sawn
Usa tailscale y te ahorras quebraderos de cabeza.
This
vlade__
nuevo
#26
Cita de Violgore
Yo tengo anulado lo de trusted proxies me daba problemas.

Con Digi ,dentro de cgnat,uso túnel de cloudflare y todo va al pelo.

Cómo proxi tengo nginx ,nada de npm.

Si todavía no lo tienes solucionado,mañana te pongo mi configuración para que compares.

En cloudflare hay que deshabilitar que actúe como proxy para poder generar los certificados correctamente con cada subdominio.
me ayudaría mucho!


¿tú tienes todo con docker?
es algo de la configuración, porque el de nabu casa si que me funciona bien
Violgore
ForoCoches: Miembro
#27
Esto en el configuration.yml de homeassistant


homeassistant:

internal_url: "http://192.168.0.160:8123"


external_url: "http://xxxxxx.xxxxxx.com" <--- aqui tienes que poner el dominio y subdominio


http:
use_x_forwarded_for: true
trusted_proxies: <--- aquí debes poner la red en desde la que se accede a Homeassistant, es decir la red del contenedor de cloudflare en mi caso, a lo largo del tiempo he ido añadiendo varias, porque como no le pongo ip fija al contenedor pues ...
- 192.168.0.0/24
- 172.21.0.0/24
- 127.0.0.1
- 192.168.48.0/24
- 172.26.0.0/24
- 172.17.0.0/24
- 172.31.0.0/24



ip_ban_enabled: true
login_attempts_threshold: 5



*** EStaba equivocado no lo tenía deshabilitado lo de trusted_proxies, me sonaba que sí pero sería por alguna prueba****




Respecto al contenedor de homeassistant lo tengo normal, nada configurado de proxies en contenedores. Antiguamente lo tenía hecho con CADDY, pero al utilizar ahora cloudflare había algún problema ya que estaría detrás de 2 proxies, no conseguía hacerlo funcionar y lo deshabilité.


Por supuesto no tengo ningún puerto abierto al exterior (en mi router), con el tunnel de cloudflare no es necesario.


Vamos con la configuración tal y como la tengo en los tunnels de cloudflare



Si te das cuenta yo accedo a homeassistant por http, pero es cuando ya está la conexión dentro de lo que es mi LAN, realmente desde fuera accedo por https(se encarga cloudflare), los certificados los genera automáticamente Cloudflare.


Porqué lo hago así? Porque si pongo que se acceda a homeassistant por https en la configuración , tienes que configurar los certificados en el proxy y abrir puertos al exterior ,ya que no sería a través de cloudflare.


A ver si con esto te puedo ayudar un poco, si no te funciona, habrá que seguir indagando y otra opción es ponerlo con CADDY, tengo el fichero y te lo puedo enviar por aquí pero caddy es muy muy facil .




Te lo pongo, va




version: "3.3"
services:
caddy-proxy:
container_name: caddy_proxy
image: caddy:alpine
ports:
- "80:80"
- "443:443"
volumes:
- /home/violgore/docker/caddy/Caddyfile:/etc/caddy/Caddyfile
- /home/violgore/docker/caddy/config:/config



el fichero Caddyfile tienes que crearlo en la carpeta y lleva esta config


ha.xxxxxxxxxxx.duckdns.org {
reverse_proxy 192.168.0.160:8123 {
header_up Host {host}
}
}



#traccar.xxxxxxxxxxxx.duckdns.org {
# reverse_proxy 192.168.0.160:5100
#}






#ffox.xxxxxxxxx.duckdns.org {
# reverse_proxy 192.168.0.160:5800 {
# header_up Host {host}
# }
#}



****** éstos últimos son de ejemplo para que veas que es muy facil de configurar *****


Así de fácil es configurar el CADDY, por supuesto hay configuraciones muchísimo mas completas pero ésta me funcionó genial con eso y teniendo segundo factor de autenticación en HomeAssistant yo estaría tranquilo.
Si utilizas CADDY no te olvides de abrir y redireccionar puertos en tu router.


Por supuesto estoy abierto a opiniones de los compañeros si ven que tengo alguna brecha de seguridad o algún fallo.


Saludos





Edito:


Para tener dominio gratis usar nic.eu.org , ver algún video por internet. Si solicitas alguno que sea xxx.es.eu.org si no no te lo van a conceder.



Nginx como proxy lo tengo pero en otro servidor (de oracle), pero ahí no tengo HomeAssistant
Violgore
ForoCoches: Miembro
#28
Cita de No_ni_ná
Yo tengo digi con cgnat tienes que usar cloudfare y pagarte un dominio de esos de un euro al año.
Hola, dime como consseguir un dominio de esos de un euro al año, sin que la renovación luego cueste 10€ o más.


Gracias
No_ni_ná
ForoCoches: Miembro
#29
Cita de Violgore
Hola, dime como consseguir un dominio de esos de un euro al año, sin que la renovación luego cueste 10€ o más.


Gracias
Yo no voy renovando el mismo, voy comprando nuevos. Es una vez al año, merece la pena hacer el proceso y ahorrarte dinero.
Violgore
ForoCoches: Miembro
#30
Cita de No_ni_ná
Yo no voy renovando el mismo, voy comprando nuevos. Es una vez al año, merece la pena hacer el proceso y ahorrarte dinero.
Ok, te mejoro la opción en nominalia te sale gratis completamente.Al año cancelas y haces otro, y ni un euro


Así llevo dos años.
Saludos
← A Electrónica / Informática
Amazon
Nuevas ofertas cada día