¿Cómo replicaría estos comandos ssh usando Putty o plink para una computadora con Windows?

¿Cómo replicaría estos comandos ssh usando Putty o plink para una computadora con Windows?

Estoy tratando de comprender el flujo de conexión de la siguiente configuración, para poder replicar los comandos remotos usando Windows PuTTY o Plink.

Tengo 3 computadoras: local - intermedia - remota

En la computadora local estoy ejecutando el siguiente comando

ssh -R 10022:localhost:22 -i /location/to/key i-user@intermediate-ip -p 22

Según tengo entendido, el comando anterior permite que cualquier persona en el servidor intermedio que se conecte a través del puerto 10022 regrese a la computadora local a través del puerto 22.

El siguiente comando lo ejecuta alguien en la computadora remota.

ssh -D 3456 -J i-user@intermediate-ip -i ~/.ssh/id_rsa local-user@localhost -p 10022 -i ~/.ssh/id_rsa

Esta parte me confunde. Básicamente, estamos ingresando al servidor intermedio y luego desde allí ingresando a la computadora local a través del puerto 10022. Pero ¿qué pasa con el reenvío dinámico de puertos? ¿Cómo funciona? ¿Se ejecuta en la computadora local? ¿Cómo fluye a través del túnel?

Creo que¿Cómo configurar PuTTY para una conexión de túnel SSH de 3 saltos?responde cómo llegar del control remoto al intermedio usando plink peroTodavía no entiendo cómo hacer ese último salto del intermedio al local E implementar el reenvío dinámico de puertos.


En caso de que no lo haya explicado lo suficientemente bien, aquí está el resultado detallado de los comandos de la computadora remota.

El registro de depuración muestra

Setting implicit ProxyCommand from ProxyJump: ssh -l i-user -vvv -W '[%h]:%p' intermediate-ip
debug1: Executing proxy command: exec ssh -l username -vvv -W '[localhost]:10022' intermediate-ip
resolving "intermediate-ip" port 22
Connecting to intermediate-ip [intermediate-ip] port 22.
Connection established.
Authenticated to intermediate-ip ([intermediate-ip]:22).
ssh_init_stdio_forwarding: localhost:10022
Authenticating to localhost:10022 as 'd-user'
put_host_port: [localhost]:10022
Authenticated to localhost (via proxy).
Local connections to LOCALHOST:3456 forwarded to remote address socks:0
Local forwarding listening on ::1 port 3456
Local forwarding listening on 127.0.0.1 port 3456

información relacionada