Mi situación :
Me (localhost) -> Servidor A (ip: 100.100.100.100) => (servidor B (ip: 192.168.25.100), servidor ...)
Puedo SSH en el servidor, ya que tiene una IP verdadera si luego quiero conectarme al servidor b, ssh servidor b con su ip (192.168.25.100)
ejemplo:
desde mi pc:
ssh [email protected]
entonces en 100.100.100.100,
ssh [email protected]
esto me llevaría al servidor B con ssh
¿Qué pasa si quiero conectarme al servidor b directamente? ¿Cómo puedo hacer eso?
ejemplo:
de mi oc:
[email protected]
He probado lo siguiente:
ssh -L 22:localhost:22 [email protected]
sin éxito
fuente
me% ssh [email protected]
; ¿Ya no cubrimos eso? o quieres decir "¿y si quiero una VPN completa para A?", en cuyo caso mi respuesta es válida.No tiene que usar el reenvío de puertos ssh para ssh en una computadora interna a través de un proxy. Puede usar la función ssh de ejecutar un comando en el primer servidor al que se conecta para ssh en una tercera computadora.
La
-t
opción obliga a ssh a asignar un pseudo-tty para que pueda ejecutar un comando interactivo.Esto también puede funcionar con claves ssh. Si tiene su clave pública y privada en la máquina A y su clave pública en los archivos de claves autorizados en las máquinas B y C, puede usar la
-A
opción para reenviar la conexión del agente de autenticación.fuente
Usé una solución diferente. Usé una
ProxyCommand
opción (aquí en~/.ssh/config
):Esto no configura ningún túnel de puerto a puerto, en su lugar túneles ssh utilizando stdin / out estándar. Este método tiene el inconveniente de que en realidad hay tres conexiones ssh para autenticar. Pero para conectarse al host interno simplemente escriba:
... por lo que no necesita preocuparse por elegir ninguna IP para ese túnel.
fuente
corkscrew
onc
(netcat
) pero ninguno funciona tan bien como este.de acuerdo con la página de manual de ssh, ProxyCommand es el método correcto
la sintaxis es:
fuente
-W
opción existiera cuando se respondió esta pregunta. Pero con las versiones más recientes del cliente ssh, estoy de acuerdo en que la combinación deProxyCommand
y-W
es el método preferido. Tal vez agregue algo de contexto que muestre cómo se puede usar en la línea de comando, así como un ejemplo de una sección para.ssh/config
.-W
comando y cuáles no? Un poco de búsqueda en Google no me dio respuestas rápidamente ...-W
se introdujo con OpenSSH 5.4, lanzado en 2010. Entonces la respuesta es sí @kasperdA partir de OpenSSH 7.3 (finales de 2016), la forma más fácil es la configuración de ProxyJump . En su
~/.ssh/config
:O en la línea de comando,,
-J B
.fuente