¿Cómo configurar mi router Teltonika para acceso remoto a máquinas sin gateway configurado o con el gateway apuntando a otro router?

Modificado el Lun, 22 May, 2023 a 6:01 P. M.

No importa si queremos acceder remotamente a nuestras máquinas a través de la IP pública de nuestra tarjeta SIM o bien a través de una conexión VPN. En cualquier caso para poder acceder a estos dispositivos a través de un rango IP diferente al suyo, es necesario configurar en estos equipos la dirección IP del gateway que debe apuntar a la dirección IP LAN del router Teltonika para poder encaminar correctamente los paquetes de respuesta hacia Internet o el otro extremo del túnel VPN.

Sin embargo, tenemos dos casos donde esto no es posible:

  • Los equipos no tienen configurado el gateway. Esto puede ser porque nunca se configuraron para accederse remotamente y por tanto tienen el campo vacío y no podemos desplazarnos a configurar este parámetro manualmente o bien porque son equipos antiguos con funcionalidades de red básicas y alguno ni siquiera permiten configurar un gateway de salida
  • Los equipos ya tienen un gateway configurado porque ya se accede remotamente a ellos a través de otro router. En este caso, una interfaz de red no puede tener configurados dos gateways para una misma dirección IP y por tanto no podemos usar este parámetro para rutar los paquetes de vuelta recibidos desde nuestro router Teltonika

En ambos casos la solución es la misma: sustituir la dirección IP origen del paquete entrante desde la WAN (que es la dirección pública de Internet o bien la del extremo remoto de la VPN) con la dirección IP LAN local del router en el paquete de salida desde la LAN del router hacia los equipos locales. De esta forma el paquete pasa a ser tratado como un paquete en la LAN local y los equipos no tienen que enviar las respuestas al gateway sino a la dirección IP origen del paquete, por tanto, a la dirección IP LAN del router Teltonika. Este mecanismo se denomina SNAT (Source Network Address Translation).

Existen dos tipos de NAT: DNAT o Destination NAT y SNAT o Source NAT. A continuación describimos un ejemplo de cómo configurarlos para tener acceso remoto a un dispositivo que dispone de un interfaz web en el puerto 80 al que queremos acceder. Este dispositivo está en la dirección 192.168.0.10 y no tiene el gateway configurado. Nuestro router Teltonika tiene la IP LAN 192.18.0.1.

DNAT (Port forwarding)

Este mecanismo que a veces llamamos ‘abrir puertos’ o ‘redireccionar puertos’ como su nombre indica consiste en la sustitución de la dirección IP destino (por ellos es Destination NAT) de los paquetes salientes del router por la interfaz LAN con una dirección concreta de una máquina o equipo al que debemos mandar dicho paquete. Dicha dirección se asocia a un puerto TCP/UDP del paquete destino lo que nos permite redireccionar paquetes entrantes al rotuer que llegan a la misma dirección destino (la IP WAN del router) a diferentes IP destino en la LAN. Ejemplo: el tráfico Modbus TCP que va por el puerto 502 lo redireccionamos a la dirección LAN 192.168.1.10 mientras que el tráfico web en el puerto 8080 lo redireccionamos a una pantalla HMI en la dirección LAN 192.168.1.20. En el proceso de DNAT podemos también sustituir el puerto TCP/UDP del paquete saliente. Por ejemplo: si tenemos varias pantallas HMI con el servidor web escuchando en el puerto 80 podemos dirigirnos a una u otra en función del puerto que usemos para el paquete entrante 8080, 8081,…

El mecanismo DNAT es necesario para encaminar los paquetes entrantes por la WAN al router a la IP LAN del equipo concreto al que queremos acceder. Pero este mecanismo no es suficiente ya que al no modificar la dirección IP origen del paquete, mantenemos la IP WAN fuera del rango LAN lo que obliga a los equips a usar su gateway a la hora de enviar los paquetes de respuesta.

En nuestro ejemplo debemos crear una nueva entrada entrada dentro del menú FIREWALL – PORT FORWARDS. Puesto que el puerto 80 lo tenemos reservado para el acceso remoto al servidor web del propio router, usaremos el puerto 8080. La siguiente regla nos dice que cualquier paquete que reciba el router en su interfaz WAN hacia el puerto 8080 lo rediriga a la dirección IP 192.168.0.10 al puerto 80. Con esto nos aseguramos que lleguen los paquetes al servidor web de este dispositivo.

Entrada DNAT en Port forwards

Podemos editar la regla si queremos modificar algún parámetro. Normalmente no hará falta salvo que estemos usando una conexión VPN para el acceso remoto en cuyo caso tendremos que cambiar la Source zone y configurar openvpn en vez de wan.

Edición de la regla DNAT

SNAT

Como dijimos antes con este mecanismo lo que hacemos es sustituir la dirección IP origen de los paquetes que llegan al router a través de su interfaz WAN con la IP LAN del router. De esta forma, cuando llegue a nuestro equipo la respuesta irá directamente de nuevo a la LAN del router y no al gateway que tenga o no definido.

Para ello iremos al menú FIREWALL – NAT RULES y allí crearemos una nueva regla SNAT con los siguientes paraámetros:

  • NAME: pondremos un nombre indicativo (no tiene relevancia)
  • SOURCE ZONE: es la zona de origen de los paquetes. Típicamente wan si tenemos una IP pública y accesible o openvpn si accedemos al router a través de una VPN RMS
  • DESTINATION ZONE: es la zona destino de los paquetes. Pondremos lan.
  • TO SOURCE IP: es la dirección IP origen que insertaremos en los paquetes. Por tanto, es la IP LAN del router.
  • TO SOURCE PORT: si queremos cambiar el puerto origen en los paquetes podemos hacerlo a través de este campo. Lo habitual es dejarlo en blanco de forma que la regla sólo modificará la dirección IP origen del paquete pero no el puerto origen del mismo
Regla SNAT para remplazar la IP origen con la LAN del router 192.168.0.1

En versiones de FW anteriores a la 7.3 es necesario hacer unos cambios manuales mediante comandos SSH en la configuración de la regla del firewall ya que el interfaz web nos obliga a configurar por defecto una IP origen y una IP destino de los paquetes y nos las fija a la IP LAN del router.

Para ello tendremos que lanzar una sesión SSH al router (a la interfaz LAN o la WAN si hemos habilitado el acceso remoto SSH). El usuario es root y el password el mismo de acceso al servidor web del router.

A continuación iremos al menú /etc/config. Si mostramos por pantalla la configuración del firewall con el comando cat firewall veremos que la última entrada que hemos creado en SNAT es algo así.

config redirect
option src ‘wan’
option name ‘SNAT1’
option target ‘SNAT’
option src_dip ‘192.168.0.1’
option proto ‘all’
option utc_time ‘0’
option dest ‘lan’
option src_ip ‘192.168.0.1’
option dest_ip ‘192.168.0.1’

Debemos eliminar las dos últimas líneas ( option src_ip ‘192.168.0.1’ y option dest_ip ‘192.168.0.1’.) Para ello podemos usar el comando vi firewall y movernos con el cursor hasta estas dos últimas líneas. Pulsando ‘x’ repetidas veces iremos eliminando los caracteres uno a uno. Una vez eliminadas ambas líneas pulsaremos ESC para pasar al modo comandos y a continuación ‘:w’ para guardar los cambios. Finalmente ‘:q’ para salir del editor vi.

Volveremos al directorio raíz escribiendo ‘cd ..’ en varias ocasiones y finalmente entraremos el comando /etc/init.d/firewall reload para cargar de nuevo la configuración del firewall tras nuestras modificaciones.

En la siguiente figura podemos apreciar cómo estamos accediendo al servidor web de nuestro equipo en la 192.168.0.10 (equipo Moxa NPort5110) a través del puerto 8080 en la IP WAN 192.168.1.3 (interfaz RJ45 del router) cuando no tenemos configurado ningún gateway (está en blanco).

La misma configuración tendríamos que hacer para el caso en que ya existiera un router en la dirección 192.168.0.2, por ejemplo, y el equipo tuviera el gateway apuntando a dicha dirección. Mediante SNAT podríamos crear un segundo acceso remoto al equipo a través de nuestro router Teltonika.

¿Le ha sido útil este artículo?

¡Qué bien!

Gracias por sus comentarios

¡Sentimos mucho no haber sido de ayuda!

Gracias por sus comentarios

¡Háganos saber cómo podemos mejorar este artículo!

Seleccione al menos una de las razones

Sus comentarios se han enviado

Agradecemos su esfuerzo e intentaremos corregir el artículo