Estoy tratando de hacer un túnel a un servidor a través de un servidor puente. Hasta ahora, he podido hacer que funcione desde el shell de comandos correctamente usando el siguiente comando:
ssh -A -t bridge_userid@bridgemachine.com ssh -A remote_userid@remoteserver.com
Pero he estado tratando de incluir esto en mi ~/.ssh/configarchivo y tengo problemas. He intentado:
Host axp
User remote_userid
HostName remoteserver.com
IdentityFile ~/.ssh/id_rsa.eric
ProxyCommand ssh -A -t bridge_userid@bridge_userid.com ssh -A remote_userid@%h
Pero cuando lo hago, recibo el siguiente mensaje de error remoteserver.comy no estoy seguro de qué lo está causando:
ksh: SSH-2.0-OpenSSH_6.8 ^ M: no encontrado
Sé que cuando inicio sesión remoteserver.com, mi shell es /usr/bin/ksh.
Intenté agregar argumentos de ruta a los comandos ssh en el archivo de configuración, pero no hizo ninguna diferencia.
Alguna idea de lo que puede ser?
ssh
ssh-tunneling
ssh-config
Eric B.
fuente
fuente

ProxyCommandes así como se debe usar. Por lo general, se usa con netcat donde ssh está canalizando su salida a través de él y netcat actúa como el túnel hacia el puerto SSH del servidor remoto . Necesita un ProxyCommand similar assh -W %h:%p [email protected]si desea usar esa función.ssh -A [email protected]como un comando para ejecutar en la máquina del puente, config no le proporciona una forma de proporcionar comandos predeterminados. Lo que intenta hacerworksen sí mismo, pero luego ssh intenta usar suProxyCommandcomo un túnel y comienza a disparar el protocolo SSH hacia abajo donde hay un shell esperando en el otro extremo en lugar de un sshd que escucha el protocolo SSH.Respuestas:
La respuesta de Jakuje es correcta, pero desde OpenSSH
7.3, ahora puede usar-JProxyJumpcuál es más fácil. Ver mis notas:OpenSSH
7.3o superiorUso
ProxyJump. Como se explica en el manual:~/.ssh/configEjemplo de ProxyJump~/.ssh/configConectar con
Agregar
-vpara salida detalladaEjemplo de
-Jlínea de comando de ProxyJump~/.ssh/configConectar con
O usar
-oOpenSSH
5.4o superiorUsar
ProxyCommandcon-W~/.ssh/configConectar con
O usar
-oAbajo OpenSSH
5.4~/.ssh/configConectar con:
O usar
-oFuentes
-Jagregado en OpenSSH 7.3-Wagregado en OpenSSH 5.4fuente
No necesitas
netcaten tu puente. Como DanSut propuso en los comentarios, puede usar lassh -Wopción de línea de comando, esta configuración debería funcionar para usted:fuente