¿Hay alguna manera, en un solo comando, de establecer una conexión ssh desde mi computadora A, a través de la computadora B, a la computadora C, de modo que tenga acceso al shell en la computadora C?
Una arruga (que parece descartar simplemente reenviar la conexión ssh usando la opción -L) es que tengo la contraseña de la cuenta en la computadora B, y la cuenta en la computadora B está autorizada para conectarse a la cuenta en la computadora C, pero No tengo la contraseña de la cuenta en la computadora C.

Respuestas:
Comprendí que solo desea iniciar sesión en la computadora C, no realmente hacer un túnel de A a C. Entonces, esto debería ser el truco:
Es posible que deba ingresar contraseñas dos veces, primero para la computadora B y luego para la computadora C, pero esto se puede evitar utilizando la autenticación de par de claves de ssh.
fuente
ssh -t computer-b "ssh -t computer-c 'ssh computer-d'": DProbablemente desee utilizar ProxyCommand de SSH: http://benno.id.au/blog/2006/06/08/ssh_proxy_command
fuente
Si está utilizando claves ssh, podría generar una nueva clave para la máquina B y usarla para la conexión de A a B. En la máquina B, puede agregar
en el
~/.ssh/authorized_keysarchivo Eso significa que siempre que se conecte a B con esa clave ssh, ejecutará elssh Ccomando.No sé si esto funciona con scp.
fuente
Utilizar
ProxyCommandVer
man ssh_config. Recomiendo hacer uso deProxyCommand. Tomemos su escenario original:Edite
~/.ssh/configcon los siguientes contenidos.Ahora podrá llegar de manera transparente a la computadora C. ej.
Ventajas de este método
Más seguro
Solo necesita su clave privada para estar en la computadora A (su computadora). El
nccomando actuará como un proxy en el que SSH cifrará el tráfico. Esto incluye autenticación. Es una muy mala idea distribuir su clave privada a varios servidores (ya que cualquier servidor comprometido con su clave privada en última instancia compromete su clave privada).Partidos Múltiples destinos
Se pueden combinar varias computadoras de destino usando
Host. Una sola computadora o cualquier computadora dentro de una red específica (por ejemplo,192.168.35.0/24en el ejemplo anterior) a proxy a través de la computadora B. También sirve como un alias.En el ejemplo anterior, enviará un proxy a través de la computadora B para llegar a la dirección IP.
Proxies en cadena de margaritas
Con este método, puede conectar en cadena tantos servidores proxy automáticos como sea necesario. por ejemplo, puede agregar una computadora D a la que solo se puede acceder desde la computadora C y funcionará de manera transparente.
ssh computerdautomáticamente proxy a través de la computadora C y la computadora B en losssh_configejemplos anteriores .fuente