Usando túneles SSH – aquí está cómo

Un túnel SSH establece una conexión con un servidor remoto - pero a través de una estación intermedia. Por ejemplo, si el sitio example.com está bloqueado en su red, usted accede a un servidor SSH que se conecta a example.com y lo reenvía a usted. Todo esto funciona a la inversa a través de un túnel SSH inverso. Suena confuso, pero con un poco de explicación y ejemplos es bastante fácil.

  • ¿Qué es un túnel SSH?
  • Utilizando túneles SSH en la terminal
  • Utilizando túneles SSH en Windows
  • Utilizando túneles SSH inversos

¿Qué es un túnel SSH?

Puedes leer sobre qué es exactamente SSH aquí. En pocas palabras: Con SSH (Secure Shell) estableces una conexión encriptada con un ordenador remoto (servidor SSH) y puedes trabajar allí, como si estuvieras sentado frente a este ordenador remoto. El requisito número 1 para un túnel SSH es, por tanto, un servidor SSH. Para las pruebas, también puedes utilizar los dispositivos de tu red doméstica. Sin embargo, todo esto sólo resulta realmente útil si puedes utilizar un servidor en Internet; por ejemplo, muchos proveedores de espacio web también ofrecen una opción de SSH. Requisito número 2: El servidor SSH también debe estar configurado para permitir túneles SSH.

Túnel ahora significa que los datos de un tercer equipo, por ejemplo un sitio web, se solicitan desde el servidor SSH y luego se reenvían a su equipo local a través de la conexión SSH. Supongamos que su administrador de red ha bloqueado el sitio web "ejemplo.com". Sin embargo, puede acceder a su servidor SSH "ssh.meinsshserver.de" - y éste a su vez también puede acceder a "ejemplo.com". Entonces le dices a tu servidor SSH que reenvíe "ejemplo.com" a tu ordenador local - y entonces puedes verlo en el navegador. Lo mejor es que las conexiones SSH están encriptadas, lo que significa que nadie puede ver los datos que estás viendo, en este caso la web de "ejemplo.com".

La situación es similar con un túnel inverso: Supongamos que tienes un servidor funcionando en tu ordenador, por ejemplo un servidor web - o simplemente el centro multimedia Kodi, que también es accesible a través del navegador. Ahora quieres acceder a él desde un tercer ordenador. Sin embargo, tu ordenador Kodi en casa no está equipado con su propia dirección IP, por lo que no puedes acceder a él fácilmente. Sin embargo, puede dirigir la vista del navegador de Kodi al tercer ordenador a través del servidor SSH.

En más detalle: la interfaz web de Kodi se puede encontrar localmente en el navegador bajo "127.0.0.1:8080", o "localhost:8080". El "127.0.0.1" significa simplemente el ordenador local y "8080" el puerto, una especie de número de casa, bajo el cual se encuentra la interfaz web. Este puerto 8080 se reenvía a (casi) cualquier puerto del servidor SSH. Esto significa: lo que se puede ver en "127.0.0.1:8080" también se puede ver en "ssh.meinsshserver.de:9000", por ejemplo. Y como el servidor SSH puede ser alcanzado normalmente a través de Internet, usted puede seguir accediendo a su ordenador de casa desde el tercer ordenador a través de los desvíos SSH.

Se hace más fácil con los ejemplos. Y como no todo el mundo tiene un servidor SSH bien configurado, nuestro ejemplo funciona en la red doméstica. Necesitarías: Un ordenador Windows o Linux y otro dispositivo de red con un servidor SSH configurado por defecto. Esto sería, por ejemplo, una Raspberry Pi, un NAS, otro ordenador - en un apuro simplemente una máquina virtual con, digamos, Ubuntu. En el ejemplo, se utilizan los siguientes dispositivos: "192.168.69" como servidor SSH, "192.168.178.75:8080" como interfaz web del NAS para el túnel y "127.0.0.1:8080" como interfaz Kodi para el túnel inverso. El nombre de usuario en el servidor SSH es "linaro", el puerto asignado es "9000".

Usando túneles SSH en la terminal

Las herramientas están disponibles por defecto en Linux y también en Windows 10. Lea más sobre SSH bajo Windows 10 aquí. Bajo Windows 7 y Windows 8, tendría que actualizar para la línea de comandos. Esto se puede hacer, por ejemplo, con Git para Windows, que instala un terminal similar al de Linux.

Primero, se trata de acceder a la interfaz de Kodi en el tercer ordenador desde el equipo local a través del servidor SSH. Introduzca el siguiente comando en el terminal:

ssh [email protected] -L 9000:192.168.178.75:8080
En primer lugar, se establece una conexión SSH normal con el usuario "linaro" al servidor SSH. La opción "L" inicia entonces el túnel: Primero el puerto local "9000", luego la dirección de la interfaz web del NAS "192.168.178.75:8080". A continuación, se realiza la consulta de la contraseña. A continuación, puede introducir "127.0.0.1:9000" en el navegador del ordenador local y ver lo que también puede verse en "192.168.75:8080". Mientras los dispositivos estén todos en una misma red, se puede utilizar, por supuesto, cualquier dirección IP. A través de Internet, por supuesto, sólo podría utilizar la dirección IP del servidor SSH.

Utilizando túneles SSH bajo Windows

Pero el terminal no es la forma natural para los usuarios de Windows - aquí se hace con PuTTY. Abre PuTTY e introduce la dirección IP del servidor SSH para "Nombre de host" en la ventana de inicio, en este caso "192.168.178.69". Opcionalmente, puede dar un nombre a la sesión y guardarla. Ahora cambia a "Conexión/SSH/Tunnels". Geben Sie hier als "Source Port" den frei gewählten Port "9000" ein und als "Destination" die NAS-Weboberfläche, also "192.168.178.75:8080".