Tengo un escenario específico que quiero resolver. Actualmente me conecto a un host a través de la redirección de puertos:ssh reenvío de puertos (tunelización) en linux
laptop -> gateway -> remote_server_1
y otro host:
laptop -> remote_server_2
con inicio de sesión sin contraseña trabajar en ambos. Ninguno de los servidores remotos es visible para el mundo exterior. Ahora estoy ejecutando un servicio en remote_server_2, que me gustaría poder acceder en remote_server_1. Supongo que tengo que configurar el reenvío de puertos retros de remote_server_1 a mi computadora portátil, y luego a remote_server_2, pero no estoy seguro de cómo hacer esto. ¿Alguien se encuentra con esta situación antes?
Editar: La solución completa en caso de que nadie más lo necesita:
mylaptop$ ssh -L 3001:localhost:3000 server_2
server_2$ netcat -l 3000
Entonces configuración del túnel a través de gateway
a server_1
:
ssh -t -t -L 3003:server_1:22 gateway
luego acceder a ella desde server_1
:
ssh -R 3002:localhost:3001 -p3003 localhost
echo "bar" | nc localhost 3002`
y hey presto server_2
muestra bar
:-)
Esto casi funciona, excepto que también tengo que pasar al servidor_1. Así que si yo: MiEquipo $ ssh -L 3003: puerta de entrada: 3002 servidor_1 y MiEquipo $ ssh -R 3003: localhost: 3000 -p3003 localhost estoy en la dirección correcta? El servidor_1 no tiene netcat (no tengo derechos de administrador en él) – tdc
Lo siento, me di cuenta de que netcat está aquí. De todos modos, todavía no funciona del todo. – tdc
Te daré la respuesta aceptada, ya que me dio suficientes pistas para seguir: respuesta completa en mi edición. – tdc