• No se han encontrado resultados

DISCONNECT

5. Desarrollo de la aplicación

5.1 Arquitectura de red

Capítulo 5

En una vivienda, la red para un usuario comienza normalmente por el router. Éste es el encargado de distribuir Internet a todos los demás dispositivos y mantener conectados los elementos que componen la red local, ya sea mediante WiFi como red WLAN o cableado con Ethernet como red LAN. Asimismo, el proveedor ISP es el encargado de comunicar este router con el resto de contenido a nivel global a través de Internet.

En este proyecto se quiere dar especial relevancia a que un usuario desde cualquier lugar geográfico que tiene acceso a Internet sea capaz de enviar una petición al router que tiene en la red del hogar. Para que ello sea posible se debe conocer la IP pública. Desafortunadamente y en la mayoría de los casos, el ISP proporciona una IP pública dinámica. Para conseguir que la IP púbica sea estática se debe acceder a la aplicación interna del router o acudiendo a una página web que contenga un script preparado. Así pues, cuando el router recibe una solicitud de conexión desde fuera de su red local, si está bien configurado y tiene una buena seguridad, la solicitud es paralizada. De esto último se encarga el firewall del router que es esencial para proteger lo que hay en la red propia del resto de elementos externos.

Fig. 5.1. Arquitectura de red de la aplicación domótica.

El sistema domótico implementado separa mediante la capa 3 y 4 del modelo OSI (capa de red y de transporte) la red doméstica de la red domótica.

La RPi3 preparada como sistema central de domótica se conecta a un puerto del router mediante ethernet. También hay posibilidad de conectar la RPi3 por vía inalámbrica con apoyo de una antena externa WiFi. La idea es que el sistema domótico tenga acceso a Internet, más en concreto, la aplicación domótica central. Además, se ha configurado la RPi3 para que su firewall sólo permita llamadas de dispositivos con direcciones MAC conocidas, que son las que se guardan en la base de datos de la aplicación. Una vez este registrada esta dirección el dispositivo se puede conectar desde fuera de la red local domótica. La conexión que realiza el dispositivo de forma externa a la red domótica sólo puede efectuarse de forma segura mediante una conexión VPN.

Como se ha comentado la red domótica y la domestica son redes completamente diferentes. Con ello se quiere decir que un dispositivo conectado a la red doméstica no puede acceder a la red domótica si no es de forma segura mediante VPN. Conviene subrayar que esto tiene sentido ya que la seguridad del router domestico es más fácil de eludir y normalmente tienen acceso a esta red personas que no pertenecen al ámbito familiar, como compañeros, vecinos y amistades. Aun así, la red domótica necesita del router al que está conectado para acceder a Internet.

La red domótica de la que se hace referencia es el AP WiFi que emite la RPi3 en conjunto con los elementos que la componen y la aplicación domótica central. Por otro lado, la aplicación domótica central es la encargada de unificar, controlar y distribuir todo el sistema de sensores, dispositivos y electrodomésticos inteligentes que están conectados a la red domótica.

Para que un dispositivo exterior se conecte al sistema domótico mediante VPN debe de tener instalado un cliente de OpenVPN con los certificados correspondientes. Así pues, una vez conectado mediante el túnel se puede usar la aplicación diseñada en Android de domótica. Por ahora es necesario conectarse mediante otra aplicación para realizar el túnel. La aplicación Android e información adicional sobre ésta se puede obtener en la web [34]. A modo resumen, la RPi3 se ha compuesto de varias funciones como:

Servidor de VPN, para gestionar, administrar y monitorizar la red domótica a distancia, pero también para poder usar la aplicación diseñada en Android y así controlar la vivienda, haciendo uso de la domótica. Desde cualquier lugar del mundo con acceso a Internet se puede comprobar los valores de diferentes sensores que están en la vivienda, así como encender o apagar un electrodoméstico.

Servidor SSH, usado para establecer una comunicación segura entre un administrador y la RPi3, controlando así de forma no gráfica y sólo mediante comandos todos los sistemas integrados incluyendo la aplicación domótica.

Servidor de XRDP, para controlar de forma gráfica todos los elementos necesarios para que funcione correctamente el sistema domótico y poder monitorizarlo además de actualizar y realizar mejoras. Asimismo, si se está dentro de la red domótica se puede conectar directamente mediante el servidor XRDP a la RPi3. Por el contrario, en caso de estar fuera de la red se usa la conexión VPN para poder acceder mediante XRDP.

Servidor MQTT, para realizar la comunicación entre los diferentes nodos, dispositivos, electrodomésticos y la aplicación domótica. Al mismo tiempo, tener una seguridad extra en la comunicación y poder usarlo como protocolo estandarizado.

Monitorización de los dispositivos conectados de forma automática. Aunque éste no sea un servicio como tal, funciona de la misma forma, ya que es un proceso que se ejecuta en segundo plano y va comprobando que todos los dispositivos conectados a la red domótica tienen una utilidad en la red. Asimismo, este servicio comprueba si el dispositivo ha enviado varias pruebas de autenticación o de información que no tiene significado de forma reiterada (más de 3 veces). En el caso que detecte un funcionamiento anormal de algún dispositivo, este servicio expulsa de la red a dicho dispositivo y le incluye en la lista negra(Blacklist) del firewall. Además, este servicio envía una notificación al administrador de la aplicación domótica mediante un email sobre lo ocurrido. Sin embargo, esta última especificación está aún en desarrollo.

• Además de otros servicios que están incluidos en la RPi3 para que funcione la red:

o El servidor DNSmasq: Es un complemento para el servidor DHCP ya que permite proporcionar direcciones IP internas y rutas a los dispositivos de la red LAN, pero a su vez guarda en caché las consultas del servidor DNS y con ello mejorar las velocidades de conexión.

o El servidor de DHCP: Asigna direcciones IP a los dispositivos y nodos que se conectan a la red domótica.

o Y el servidor de hostapd: Permite el funcionamiento del AP activándolo y dando cobertura según las necesidades que se hayan establecido.

• Por último, cabe destacar la aplicación domótica central.