Cómo configurar la DDNS en mikrotik para entrar en Home Assistant

F Cadenas del grupo “Mikrotik España (Spain)” de telegram nos cuenta cómo configurar la DDNS en mikrotik para entrar en Home Assistant.

Pasos a seguir para configurar nuestro mikrotik para que gestione los dispositivos en una unica Red wifi, como la del esquema anterior

Descarga del software necesario

Para gestionar nuestra/s mikrotik/s necesitamos tener descargado el programa específico de mikrotik: winbox. Será más sencillo que hacerlo por IP. Para ello, entra en «Material y Software necesario» para más información.

Objetivo

Acceder a tu Home assistant a través de la propia ddns de tú router MikrotiK y con certificado para navegar en modo seguro sin advertencias de seguridad y poder usar así el APP del Play Store. Podrías prescindir así de duckdns o nabucasa, para este fin.

Consideraciones previas

Presuponemos que tienes instalado el programa Winbox para configurar tu router Mikrotik.

Los router Mikrotik ofrecen su propia dirección ddns. La puedes consultar en la pestaña “quick setup” y que es número de serie seguido por mynetname.net.

Tienes una ip pública que te asigna la compañía telefónica y que es tu puerta de acceso a internet. No siempre es fija.(el dos de la foto ). Lo que si es fijo es la ddns de tu ruoter (el tres de la foto).

En tu router tienes un puerto de acceso o salida a internet que llamaremos WAN (suele ser pppoe1, ether1, etc) y otro de acceso a la intranet o LAN (el más usual es el ether2).

Accedes a Home Assistant a través una ip y un puerto en nuestro ejemplo serán 192.168.1.HA-ip” y el puerto 8123

Configuración de nuestra mikrotik

Activamos la ddns de mikrotik

Vas al menú principal de la izquierda del programa Winbox en IP/Cloud.

Y se activa la casilla “Enabled”. Pulsas OK.

Url externa en Home Assistant

Has de entrar en Home Assistant y en menú lateral izquierdo ir a Configuración / Configuración general has de poner en URL externa la ddns de Mikrotik con el puerto de acceso a tu Home assistant, ejemplo:

https://tuddns.mynetname.net:8123

La url externa o interna pueden estar configuradas  a través del configuration.yaml pues ya sabes lo que te queda por hacer cambiarlo allí.

También puedes poner en la Url interna la ddns de Mikrotik (pero mejor que lo dejes para después de comprobar que te funcione con la externa) o nunca  por si se avería tu router, así al menos entras con la ip desde la intranet.

Instalamos un certificado con Let’s Encrypt

Si tecleases https://tuddns.mynetname.net:8123 desde tu móvil sin conexión wifi entrarías en HA pero te advertirá de navegación insegura.

Esto se evita con la instalación de certificados para tranquilizar al navegador. Para ello primero instalamos en Home Assistant un “add-on” y luego generamos el certificado.

Instalamos Let’s Encrypt:

En el menú lateral izquierdo de Home Assistant en SUPERVISOR pestaña ADD-ONS-STORE descargas el addon “Let’s Encrypt

Vuelves a entrar en la pestaña DASHBOARD y haces click sobre el add-on instalado de Let’s Encrypt y lo instalas en la pestaña “INFO”, pero sin pulsar “START”.

En la pestaña “configuración”, arriba en el centro, completas la información introduciendo tu email para recibir el mensaje cuanto esté cerca a caducar el certificado y escribes la ddns de tu Mikrotik sin https.

Guardas en “SAVE”.

Eliges el puerto de acceso del certificado en este ejemplo el 80 que habrá que abrir luego en el router. Vuelves a la pestaña “INFO” y pulsas “START”.

Si pulsas la pestaña “log” del add-on y ves la parrafada siguiente, la cosa marcha bien.

Configurar el firewall, con reglas en el NAT

A. Abrir puertos:

En el router hay que abrir el puerto 80 (o el que hayas configurado en el add-on de Let’s Encrypt) y el 8883, ya tendrás abierto el 8123 (habitual puerto de acceso a Home Assistant.. Los filtros los puedes teclear a través del terminal o por navegador.

Por web:

En el menú izquierdo de winbox pulsas el botón IP y luego FIREWALL. En la nueva ventana, verás la regla de acceso a Ha con el puerto 8123 puedes añadir a nivel del campo Dst Port el puerto 8883 y guardas o copiar esta regla y sólo cambiar el puerto. O desde cero vas la pestaña NAT y pulsas el botón más. En la nueva ventana te vas a la pestaña GENERAL y cubres lo siguiente (sin incluir el puerto 8123 que lo tendrás en otra regla):

En la pestaña ACTION:

En el campo “To Address” es la Ip de tu Home assistant. En el botón “comment” a la izquierda se teclea «Home assistant: abre puertos 8123 y 8883».

La segunda regla es para abrir el puerto 80:

En “in interface list” Wan es tu salida a internet pero si no tienes esta lista creada teclea en el campo“In Interface:” tu salida a internet generalmente ether1 o pppoe-out1.

En las pestaña ACTION pones DST-NAT . En “to address” la Ip de tu Home Assistant y el puerto que elegiste en Let’sEncrypt

Pulsas en Comment y tecleas»Home assistant abre puerto para Let’s encrypt DNAT

Por terminal, estas dos reglas serían así:

-Ip filter nat add action=dst-nat chain=dstnat comment="Home assistant: abre puertos 8123 y 8883" dst-address=!192.168.1.0/24 dst-port=8123,8883 protocol=tcp to-addresses=192.168.1.HA-ip
-Ip filter nat add action=dst-nat chain=dstnat comment="Home assistant abre puerto para Let’sencrypt DNAT " dst-port=80 in-interface=WAN protocol=tcp to-addresses=192.168.1.HA-ip to-ports=80.

Recuerda que en “in interface” Wan es tu salida a internet puede ser esta o ether1 o pppoe-out1.

B. Crear reglas de enmascaramiento para acceder a HA desde la intranet con la ddns o duckdns:

En IP/Firewall en la pestaña NAT se pulsa el más y se rellena.
– en CHAIN: srcnat.
– En “Src. Address” el rango de tú red.
– En “Dst address” la IP de tu Home assistant.
– “Protocol”: tcp
– “Dst port” el puerto de tu Home assistant.
– En “Out interface list” eliges LAN, si no tienes creada la lista de LAN tendrás que cubrir más arriba el “Out interface” con tu salida a intranet o Lan usualmente bridge1 o el puerto ether 2

En la pestaña ACTION elijes “masquerade” en el combo del campo “Action

Y pulsando el botón Comment: “Home assistant: recurso HairPin para acceder desde mi intranet”. Guardas en Ok

Pulsas otras vez el más para nueva regla en el NAT se rellena la ventana con:
-en “Chain” dsnat.
– En “Dst address” se marca la casilla para poner el símbolo de exclamación que indica “salvo”y en campo se pone el rango de tu red.
– “Protocol” tcp
– “Dst port” el puerto de tu Home assistant.
– En la pestaña ACTION eliges “dsnat” en el campo “Action”. Y en “to Addresses”: la IP de tu Home Assistant.
– Pulsando el botón COMMENT, escribes “Home assistant Dnat”. Guardas pulsando OK.

Estas dos reglas tienen que estar en la parte alta del firewall.

Si todo marcha bien podrás entrar en tu Home Assistant tecleando la dirección de “ddns:8123” y te funcionará la APP de HA del Play Store poniendo como enlace la misma ddns.

También podrás entrar desde tu casa conectado a la intranet con el navegador de tu PC o móvil a Home assistant a través de la ddns de Mikrotik pero sin avisos de seguridad

Para cualquier duda o consulta tienes disponible el grupo de telegram «Domoticz a lo Spain» para entrar, ponerte cómodo y participar cuanto quieras.

Clica aquí para entrar en él

Cualquier duda, sugerencia o comentario será bien recibida en la web!