Conexiones inversas y UPnP. Curso de redes desde 0 | Cap 8 | 2020

Las conexiones inversas son un método de acceso remoto para aquellos usuarios que no pueden o no saben abrir un puerto en el router.

Conexiones inversas y UPnP

Como ya te he explicado, cuando tenemos una proveedor de internet con CG-NAT (Carrier Grade NAT) no tenemos acceso al router que controla nuestra red y no podemos abrir puertos para dirigir las conexiones externas al equipo al que queremos acceder. También hay mucha gente que no tiene los conocimientos técnicos necesarios para abrir puertos en el router.

Los fabricantes de hardware como es lógico quieren vender sus dispositivos. Cuando necesitamos acceder en remoto a estos dispositivos, el fabricante tiene que buscar la manera de hacerlo accesible para aquellos usuarios que tienen estas limitaciones técnicas.

Qué es una conexión inversa

Para solventar este problema de conexión, el fabricante coloca un un servidor en internet al que accede tanto su equipo como el usuario que está en remoto. Este servidor actúa como un puente o un enlace intermedio que conecta el equipo al que queramos acceder y el usuario que está fuera de la red. Este servidor intermedio es accesible desde cualquier sitio porque tiene un socket conocido  establecido previamente.

El fabricante programa tanto el firmare del dispositivo como la aplicación con la que va a conectarse el usuario. Tanto el usuario con su aplicación como el dispositivo actúan como clientes, y por lo tanto no necesitan abrir ningún puerto en el router ni tocar nada en la red. Normalmente el usuario debe registrarse con un nombre y contraseña en el sistema del fabricante y a partir de ahí despreocuparse de los detalles técnicos.

Un ejemplo de conexión inversa sería el sistema domótico de Philips. Este sistema domótico consta de un concentrador o unidad central que lo controla todo y luego las bombillas y elementos domóticos que se conectan a él vía wifi.

conexión inversa philips hue

Philips pone un servidor intermedio al que se conecta el concentrador que controla las luces inteligentes y el usuario mediante una aplicación que tiene instalada en el smartphone. Tanto el puente de Hue (concentrador de Philips) como el smartphone se conectan al servidor como clientes.

Hoy en día las conexiones inversas son muy utilizadas por termostatos inteligentes, cámaras IP de videovigilancia, sistemas domóticos, NAS,... ya que son muy cómodas para el usuario. Los fabricantes quieren ponérselo fácil a sus clientes. De hecho prácticamente todas las marcas de NAS te dan la opción de acceder mediante un sistema DDNS o por conexión inversa

DDNS vs conexión inversa

Un servicio de conexión inversa no es incompatible con un servicio de direccionamiento dinámico DDNS. Es el usuario el que elige un sistema u otro. Como no son excluyentes podemos configurar ambos y utilizar en cada momento el que más nos interese. Un ejemplo claro de esto son ciertas marcas de NAS.

Por ejemplo tanto en QNAP como en Synology tenemos un servicio DDNS gratuito incluido con la compara del equipo. En QNAP se llama MyQNAPcloud y en Synology tiene el formato xxxx.synology.me

El esquema de funcionamiento sería el siguiente:

conexión exterior con ddns

El esquema de conexión inversa llamadas CloudLink en QNAP o QuickConnect en Synology serían de la siguiente manera:

conexiones inversas en un NAS

Inconvenientes de las conexiones inversas

Todo esto parece muy práctico y bonito pero en esta vida nada es gratis. Con un sistema de conexión inversa siempre dependes de un servidor de terceros que escapa de tu control. En el caso de que este servidor estuviera caído o que el fabricante directamente decidirá eliminar el servicio te quedarías sin acceso. El hardware que hubieras comprado no te valdría para nada porque sería inaccesible.

Esto no es lo más habitual, pero si vas a comprar un sistema domótico o cualquier otro hardware que utiliza conexiones inversas, asegúrate que sea una empresa seria y solvente para evitar sustos en el futuro. No suele suceder, pero no serías el primero que en casa tiene un dispositivo inservible por este motivo.

Vídeo explicativo sobre conexiones inversas y UPnP

En este vídeo tienes explicado paso a paso y de manera sencilla qué es y cómo funciona  tanto una conexión inversa como el UPnP en una red.

UPnP en una red

El UPnP (Plug and Play) es la abreviatura de "conectar y listo". UPnP en una red es un sistema en el que cualquier aplicación le indica al router el puerto que necesita abrir y éste lo abre de manera automática. El usuario se despreocupa porque los puertos se van abriendo conforme lo demandan la aplicaciones.

Aunque esta es la teoría, no siempre funciona. Es muy habitual que aunque tengas activado el Plug and Play en el router y en el equipo que solicita la apertura de los puertos, haya errores de comunicación y el proceso no se realice correctamente. Sobre todo cuando estamos hablando de routers de operadora o de routers de game bajas.

Al igual que sucede con las conexiones inversas no es oro todo lo que reluce. Tener activado el UPnP en el router es muy cómodo pero puede ocasionarnos graves problemas de seguridad. Las aplicaciones pueden abrir los puertos a su antojo sin nuestro consentimiento y podrían abrir puertos que nosotros no queremos abrir.

Si nuestro ordenador estuviera infectado con un malware, la aplicación maliciosa podría solicitar la apertura de puertos mediante UPnP para que el atacante pudiera acceder al ordenador infectado con mayor facilidad. A mi no me gusta tener activado el UPnP en el router porque prefiero abrir los puertos manualmente y así siempre tengo el control de la red. Ten en cuenta que no todo días hace falta abrir puertos en el router y tampoco cuenta tanto.

activación upnp

Ahora que ya sabes lo que es una conexión inversa también tengo que decirte que muchos malwares utilizan conexiones inversas. Una vez que infectan el ordenador tratan de contactar con el atacante accediendo a un servidor inverso predeterminado y esperan órdenes.

Como ya te habrás dado cuenta, si estamos detrás de un CG-NAT el UPnP no vale para nada. Aunque el router que tenemos en casa abra los puertos mediante UPnP es un acto inútil porque donde realmente habría que abrirlos es en el router de la operadora y ese es totalmente inaccesible para nosotros.