Cómo Acceder a un Servidor Remoto Usando un Host de salto

Un host de salto (también conocido como servidor de salto) es un host intermediario o una puerta de enlace SSH a una red remota, a través de la cual se puede hacer una conexión a otro host en una zona de seguridad diferente, por ejemplo, una zona desmilitarizada (DMZ). Conecta dos zonas de seguridad diferentes y ofrece acceso controlado entre ellas.

Un host de salto debe ser altamente seguro y monitoreado, especialmente cuando abarca una red privada y una zona desmilitarizada con servidores que brindan servicios a los usuarios en Internet.

Un escenario clásico es conectarse desde su computadora de escritorio o portátil desde dentro de la red interna de su empresa, que está altamente protegida con firewalls a una zona desmilitarizada. Para administrar fácilmente un servidor en una zona desmilitarizada, puede acceder a él a través de un host de salto.

En este artículo, demostraremos cómo acceder a un servidor Linux remoto a través de un host de salto y también configuraremos los ajustes necesarios en sus configuraciones de cliente SSH por usuario.

Considere el siguiente escenario.

 Host de salto SSH
Host de salto SSH

En el escenario anterior, desea conectarse al HOST 2, pero debe pasar por el HOST 1, debido a los privilegios de cortafuegos, enrutamiento y acceso. Hay una serie de razones válidas por las que se necesitan puentes..

Lista dinámica de Jumphost

La forma más sencilla de conectarse a un servidor de destino a través de un host de salto es utilizando el indicador -J de la línea de comandos. Esto le dice a ssh que haga una conexión con el host de salto y luego establezca un reenvío TCP al servidor de destino, desde allí (asegúrese de tener un inicio de sesión SSH sin contraseña entre máquinas).

$ ssh -J host1 host2

Si los nombres de usuario o los puertos de las máquinas difieren, especifíquelos en el terminal como se muestra.

$ ssh -J username@host1:port username@host2:port 

Lista de múltiples Jumphosts

La misma sintaxis se puede usar para realizar saltos sobre varios servidores.

$ ssh -J username@host1:port,username@host2:port username@host3:port

Lista estática de Jumphost

La lista estática de jumphost significa que conoce el jumphost o jumphosts que necesita para conectar una máquina. Por lo tanto, debe agregar el siguiente ‘enrutamiento’ de jumpfost estático en el archivo ~/.ssh/config y especificar los alias de host como se muestra.

### First jumphost. Directly reachableHost vps1 HostName vps1.example.org### Host to jump to via jumphost1.example.orgHost contabo HostName contabo.example.org ProxyJump contabo

Ahora intente conectarse a un servidor de destino a través de un host de salto, como se muestra.

$ ssh -J vps1 contabo
Inicie sesión en el host de destino a través de Jumphost
Inicie sesión en el Host de destino a través de Jumphost

El segundo método es usar la opción ProxyCommand para agregar la configuración de jumphost en su archivo ~.ssh/config o $HOME/.ssh/config como se muestra.

En este ejemplo, el host de destino es contabo y el jumphost es vps1.

Host vps1HostName vps1.example.orgIdentityFile ~/.ssh/vps1.pemUser ec2-userHost contaboHostName contabo.example.orgIdentityFile ~/.ssh/contabovpsPort 22User adminProxy Command ssh -q -W %h:%p vps1

Donde el comando Proxy Command ssh -q -W %h:%p vps1, significa ejecutar ssh en modo silencioso (usando -q) y en modo de reenvío stdio (usando -W), redirige la conexión a través de un host intermedio (vps1).

Luego intente acceder a su host de destino como se muestra.

$ ssh contabo

El comando anterior abrirá primero una conexión ssh a vps1 en segundo plano efectuada por el comando proxy y, después, iniciará la sesión ssh en el contabo del servidor de destino.

Para obtener más información, consulte la página de manual de ssh o consulte: OpenSSH/Cookbxook/Proxies y Hosts de salto.

Eso es todo por ahora! En este artículo, hemos demostrado cómo acceder a un servidor remoto a través de un host de salto. Utilice el formulario de comentarios a continuación para hacer cualquier pregunta o compartir sus pensamientos con nosotros.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.