Cómo realizar la gestión de dispositivos IoT de manera segura

network iot nat pat plataforma

Mucho han evolucionado las redes de comunicación y los servicios que en ellas corren, desde que se popularizó el uso de Internet.

La gestión de dispositivos IoT es un factor crucial en cualquier proyecto. Tanto desde el monitoreo, como el control, la actualización del software y la resolución de problemas.

No tener gestión remota de los dispositivos IoT puede generar períodos de no disponibilidad y altos costos de mantenimiento ( ya que habrá que ir hasta el lugar para ver qué sucede ).

NAT y PAT

Hace ya unos cuantos años, cuando alguien quería tener algún tipo de control sobre un dispositivo, tenía que “abrir puertos” en el router de borde para exponer el acceso del dispositivo a Internet.

La técnica utilizada se denomina NAT (Network Address Translation) y consiste en traducir direcciones IP de una red a direcciones IP de otra red que no es accesible de manera directa.

nat network address translation
pat port address translation
Fuente: cisco.com

En el caso en que las direcciones IP de la red interna sean más numerosas que las IP públicas, se utiliza un mapeo de puertos. Este caso se conoce como PAT (Port Address Translation) y debe apuntarse a un puerto externo específico para poder acceder a un host interno determinado.

Esta técnica obviamente se sigue utilizando en muchos entornos y aplicaciones, pero en general no resulta ser la más adecuada para acceder desde Internet a un dispositivo de una red privada.

Problemas con el acceso vía NAT/PAT

El problema está principalmente relacionado con cuestiones de seguridad, ya que al exponer el dispositivo a Internet, también se exponen sus vulnerabilidades. Esto puede abrir el camino para ataques de todo tipo, desde instalación de bots hasta la inutilización del dispositivo o el robo de información.

Son innumerables los ejemplos de este tipo de ataques y las consecuencias nefastas que han tenido sobre las empresas, instituciones y personas que los han padecido.

Solo para dar un ejemplo, consideremos el acceso a sistemas de videovigilancia. Esto es algo muy frecuente. Es común que mucha gente instale sistemas muy baratos y de mala calidad, que son fácilmente accesibles con solo hacer una búsqueda en Internet. El acceso puede permitir al atacante espiar a su víctima, robar imágenes, publicarlas o usar ese acceso para inutilizar el sistema y planear un robo.

Todo esto no quiere decir que no se pueda seguir usando NAT para acceder a dispositivos remotos. Sin embargo, aun tomando varias precauciones de seguridad, no es muy recomendable.

Plataformas IoT

Por suerte con el tiempo y el auge de las soluciones IoT, han aparecido otras maneras de realizar la gestión dispositivos IoT. 

En vez de acceder directamente al dispositivo, este último se conecta a una plataforma IoT, donde puede publicar y obtener información. 

Los dos protocolos más utilizados para hacer esto son HTTP y MQTT.

MQTT vs HTTP – Qué elegir para tu proyecto IoT

En este tipo de soluciones, la plataforma IoT hace de intermediario entre nosotros y el dispositivo a gestionar. De esta manera, nunca hay un acceso directo al dispositivo y se evitan todos los riesgos asociados a una conexión vía NAT.

Supongamos que tenemos una Raspberry Pi que está publicando información de sensores y también de sus procesos internos como uso de CPU, memoria, disco, logs, etc. De esta manera podemos chequear que todo esté funcionando correctamente y detectar anomalías en los procesos o aplicaciones.

Por otro lado, también a través de la plataforma IoT podemos darle órdenes a la Raspberry Pi, para que actualice sus paquetes de software, se reinicie, etc. Incluso podemos conectarnos a una consola virtual y ejecutar comandos como si accediéramos directamente a la computadora.

Todas estas acciones se pueden realizar con cualquier dispositivo, no solo con una Raspberry Pi.

Mediante una plataforma IoT, por ejemplo, se pueden programar actualizaciones automáticas de manera centralizada, evitando tener que hacerlo en cada uno de los dispositivos en forma separada.

smart home sonoff

Conclusión

Sin lugar a dudas las plataformas IoT no solo vinieron a ofrece una manera de gestionar la información generada por los dispositivos. También nos ofrecen una manera segura y confiable de gestionar estos dispositivos.

Ahora cuéntame. ¿Cuál es tu experiencia con plataformas IoT? ¿Has utilizado NAT/PAT en tus proyectos? ¿Tienes alguna duda sobre el uso de plataformas IoT?

Te invito a escribir tu experiencia o tus dudas en los comentarios.

2 comentarios en «Cómo realizar la gestión de dispositivos IoT de manera segura»

  1. Hola Rodrigo, yo tengo una raspi con una camarita, sensor de movimiento, sensor de temperatura y humedad, un ldr para luminosidad y control de relays. La puedo ver y trabajar en forma remota con VNC CONNECT. No la conecté a internet mediante el redirecionamiento de puertos en el router justamente por motivos de seguridad. Hasta ahora no utilizé ninguna plataforma IOT de un tercero, pero las preguntas que me surgen son yo como sé que esa plataforma no va a hacer uso de mis datos vendiendolos por ejemplo, ya que por lo visto es un buen negocio, y por otro lado, la plataforma IOT, se conecta a internet mediane un servidor, ¿cómo se conecta?¿utiliza otro método que el redirecionamiento de puertos?¿puedo hacer yo mi propia plataforma IOT?

    1. Hola Luis:
      Gracias por comentar, son varias tus consultas. Empiezo por el principio.
      VNC connect es un sistema en la nube que te permite conectarte a tu computadora a través de su sistema en la nube. Esto es algo propio de todos los sistemas en la nube y es muy similar a lo que hacen las plataformas IoT. A través de un cliente te conectas a los servicios en la nube, que hacen de intermediarios entre el cliente y tu dispositivo.
      En cuanto a plataformas IoT, hay una cantidad enorme y con muchas de ellas podrías gestionar tu Raspberry Pi.
      Una de ellas es Balena , que además de darle conectividad a tu rasp, te va a permitir gestionar aplicaciones de distinto tipo por medio de contenedores.
      Respecto del manejo de los datos, en general a las plataformas IoT no les interesan los datos que generes. Sin embargo, siempre se pueden leer los términos y condiciones que aceptas cuando utilizas su sistema. Esto ocurre también con aplicaciones como VNC connect.
      Espero que te sirva la respuesta y cualquier cosas vuelves a preguntar.
      ¡Saludos!
      Rodrigo.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.