¿Qué es ssh -L 123:farawayhost:456 host remoto?

¿Qué es ssh -L 123:farawayhost:456 host remoto?

Vino de esta pregunta:¿Qué es el reenvío de puertos ssh y cuál es la diferencia entre el reenvío de puertos ssh local y remoto?, estoy confundido acerca de este uso:

ssh -L 123:farawayhost:456 remotehost

ssh -L sourcePort:forwardToHost:onPort connectToHostsignifica: conectarse con ssh a connectToHosty reenviar todos los intentos de conexión allocal sourcePortal puerto onPortde la máquina llamado forwardToHost, al que se puede acceder desde la connectToHost máquina.

¿Qué significa "..., quepuede ser alcanzadode la connectToHostmáquina." ¿Qué quiere decir exactamente?

Si entendí correctamente, ssh -L 123:localhost:456 remotehostes un caso específico para el comando anterior, donde ambos farawayhosty remotehostestán en la misma máquina.

Entonces, ¿cuándo farawayhostestán y remotehostno están en la misma máquina, cómo funciona? ¿Significa que debo iniciar sesión remotehostprimero y luego farawayhost?

Respuesta1

No sé por qué me confundí al principio, tal vez porque la respuesta original no es lo suficientemente clara, pero luego lo descubrí de repente.

Supongamos que tengo 2 máquinas, cuyas IP públicas son 1.2.3.4y 2.3.4.5.

El uso sería: , generará una nueva línea, solicitando una contraseña de .ssh -L 10283:1.2.3.4:8000 [email protected] -Nusername2.3.4.5

ingrese la descripción de la imagen aquí

cuando se autentica exitosamente, sshno iniciará sesión porque -Nse especifica, pero se realizó la conexión. Entonces cualquier dato enviado alocalEl puerto 10283primero se enviará a 2.3.4.5través de ssh(puerto 22), luego 2.3.4.5enviará los datos al 1.2.3.4puerto8000.

Ahora déjame crear un archivo html echo hello > index.htmly ejecutar un servidor http 1.2.3.4con python -m http.server.

Y luego escribo localhost:10283en mi PC local.

PC local:

ingrese la descripción de la imagen aquí

En 1.2.3.4:

ingrese la descripción de la imagen aquí

información relacionada