ssh

Reenvío de puertos SSH en Linux

Reenvío de puertos SSH en Linux
El reenvío de puertos SSH se utiliza para reenviar puertos entre una máquina Linux local y una remota mediante el protocolo SSH. Se utiliza principalmente para cifrar conexiones a diferentes aplicaciones. Incluso si esa aplicación no es compatible con el cifrado SSL, el reenvío de puertos SSH puede crear una conexión segura. Incluso puede utilizar el reenvío de puertos para exponer una máquina a Internet sin una dirección IP enrutable a Internet, de modo que pueda acceder a ella de forma remota y segura. Hay muchos más usos del reenvío de puertos SSH.

Existen principalmente dos tipos de reenvío de puertos SSH. Reenvío de puerto local y reenvío de puerto remoto.

En este artículo, le mostraré cómo realizar el reenvío de puertos en Linux. Para seguir este artículo, deberá tener las utilidades SSH instaladas en su máquina Linux. Te mostraré como hacerlo, no te preocupes. Empecemos.

Instalación de utilidades SSH en Red Hat Enterprise Linux (RHEL) 7 y CentOS 7

En RHEL 7 y CentOS 7, puede instalar utilidades SSH con el siguiente comando:

$ sudo yum instalar openssh-clients openssh-server

prensa y y luego presione continuar.

Deben instalarse las utilidades SSH.

Instalación de utilidades SSH en Ubuntu, Debian y otras distribuciones basadas en Ubuntu / Debian

En Ubuntu, Debian, Linux Mint y otras distribuciones basadas en el sistema operativo Ubuntu / Debian, ejecute el siguiente comando para instalar las utilidades SSH:

$ sudo apt-get install openssh-client openssh-server

Ahora presiona y y luego presione continuar.

Deben instalarse las utilidades SSH.

Instalación de utilidades SSH en Arch Linux

Si está en Arch Linux, ejecute el siguiente comando para instalar las utilidades SSH:

$ sudo pacman -Sy openssh

Ahora presiona y y luego presione .

Deben instalarse las utilidades SSH.

En Arch Linux, el servidor SSH no se inicia de forma predeterminada. Tendrá que iniciarlo manualmente con el siguiente comando:

$ sudo systemctl start sshd

Ahora agregue el servidor SSH al inicio del sistema, para que se inicie automáticamente cuando se inicie el sistema:

$ sudo systemctl enable sshd

Reenvío de puertos locales

El reenvío de puerto local se utiliza para reenviar un puerto de un servidor remoto en otro puerto de una computadora local. Un ejemplo te ayudará a entender a qué me refiero.

Digamos que tienes un servidor, servidor 1 que tiene una dirección IP de 192.168.199.153. servidor 1 tiene un servidor web en ejecución. Por supuesto, si está conectado a la misma red que el servidor servidor 1, luego puede escribir la dirección IP en el navegador y conectarse a servidor 1 desde tu computadora. Pero, ¿qué pasa si desea acceder a él como si el servicio se estuviera ejecutando en su computadora en algún puerto?? Bueno, eso es lo que hace el reenvío de puertos locales.

Como puede ver en la captura de pantalla a continuación, puedo acceder al servidor web en servidor 1 utilizando su dirección IP:

Ahora ejecute el siguiente comando desde su computadora local para reenviar el puerto 80 (http) al puerto 6900 (digamos) a su computadora local:

$ ssh -L 6900: 192.168.199.153: 80 localhost

Escribir y luego presione continuar.

Ahora escriba la contraseña de su computadora local y presione .

Estas conectado.

Ahora puede acceder al servidor web que tenía antes como http: // localhost: 6900 como puede ver en la captura de pantalla a continuación.

Reenvío de puerto remoto

El reenvío de puerto remoto es reenviar un puerto de un servidor / computadora local a un servidor remoto. Entonces, incluso si su servidor / computadora local no tiene una dirección IP enrutable a Internet, aún puede conectarse a él utilizando la IP del servidor remoto y el puerto reenviado.

Supongamos que desea conectarse al servidor web de su computadora local desde Internet. Pero no tiene una dirección IP enrutable a Internet. Puede utilizar un servidor remoto (como VPS) al que se puede acceder desde Internet y realizar el reenvío de puertos remoto con él. No tengo un VPS. Asumamos servidor 1 es el servidor remoto.

Primero configure servidor 1 servidor para permitir el acceso a los puertos reenviados a través de Internet.

Para hacer eso, edite / etc / sshd_config con el siguiente comando:

$ sudo nano / etc / sshd_config

Debería ver la siguiente ventana.

Desplácese hacia abajo y busque Puertos de enlace como se marca en la captura de pantalla a continuación.

Ahora descomente y configúrelo en como se marca en la captura de pantalla a continuación.

Ahora presiona + X y luego presione y y luego presione para guardar el archivo.

Ahora reinicie el servidor SSH de servidor 1 con el siguiente comando:

$ sudo systemctl reiniciar sshd

En mi computadora local, se está ejecutando un servidor web como puede ver en la captura de pantalla a continuación.

Ahora puede ejecutar el siguiente comando desde la computadora local para reenviar el puerto 80 (http) de su computadora local al puerto 9999 en el servidor remoto servidor 1 que tiene dirección IP 192.168.199.153:

$ ssh -R 9999: localhost: 80192.168.199.153

Escribir y presione .

Escriba la contraseña de su servidor remoto servidor 1.

Estas conectado.

Como puede ver en la captura de pantalla a continuación, puedo conectarme al puerto 9999 en mi servidor remoto servidor 1 y acceder a mi servidor web local.

También puedo conectarme a mi servidor web usando la dirección IP del servidor remoto servidor 1 y el puerto reenviado 9999 desde otras computadoras en mi red, como puede ver en la captura de pantalla a continuación.

Así es como se hace el reenvío de puertos SSH en Linux. Gracias por leer este artículo.

Los mejores emuladores de consola de juegos para Linux
Este artículo enumerará el software de emulación de consola de juegos más popular disponible para Linux. La emulación es una capa de compatibilidad de...
Las mejores distribuciones de Linux para juegos en 2021
El sistema operativo Linux ha recorrido un largo camino desde su apariencia original, simple y basada en servidor. Este sistema operativo ha mejorado ...
Cómo capturar y transmitir su sesión de juego en Linux
En el pasado, los juegos solo se consideraban un pasatiempo, pero con el tiempo la industria del juego experimentó un gran crecimiento en términos de ...