Estoy tratando de configurar el salto SSH automático a través de un servidor que no tiene nc.
Esto funciona desde la línea de comando:
ssh -A gateway ssh steve@target
(He agregado mi clave pública al agente SSH).
Sin embargo, agregarlo a ~ / .ssh / config no:
Host target
User steveb
ProxyCommand ssh -A gateway ssh steve@targetip
$ ssh target
Pseudo-terminal will not be allocated because stdin is not a terminal.
^CKilled by signal 2.
Intentar forzar el problema con -t
es divertido pero inútil.
ProxyCommand ssh -A -t gateway ssh steve@targetip
$ ssh target
Pseudo-terminal will not be allocated because stdin is not a terminal.
Pseudo-terminal will not be allocated because stdin is not a terminal.
^CKilled by signal 2.
¿Más -t
? No es bueno.
ProxyCommand ssh -A -t -t gateway ssh steve@targetip
$ ssh target
tcgetattr: Inappropriate ioctl for device
^CKilled by signal 2.
es posible? La mayoría de los tutoriales (por ejemplo, http://www.arrfab.net/blog/?p=246 ) sugieren usar nc
.
ssh
rhel
configuration
tty
Steve Bennett
fuente
fuente
Respuestas:
SSH ProxyCommand sin netcat
El ProxyCommand es muy útil cuando los hosts son accesibles indirectamente. Con netcat es relativamente estrecho hacia adelante:
Aquí {gw} y {host} son marcadores de posición para la puerta de enlace y el host.
Pero también es posible cuando netcat no está instalado en la puerta de enlace:
/ Dev / tcp es una característica incorporada de bash estándar. Los archivos no existen. Para comprobar si bash tiene esta función de uso incorporada, ejecute:
... en la puerta de entrada.
Para asegurarse de que se usa bash, use:
E incluso funciona junto con ControlMaster.
(Actualizado el 22 de octubre para incluir kill para limpiar el gato de fondo) (Actualizado el 3 de marzo de 2011 para aclarar los marcadores de posición y explicar / dev / tcp)
100% de crédito para roland schulz. Aquí está la fuente:
http://www.rschulz.eu/2008/09/ssh-proxycommand-without-netcat.html
ver más información útil en los comentarios allí.
También hay más aquí:
http://www.linuxjournal.com/content/tech-tip-tcpip-access-using-bash
http://securityreliks.securegossip.com/2010/08/enabling-devtcp-on-backtrack -4r1ubuntu /
ACTUALIZACIÓN : aquí hay algo nuevo de Marco
En referencia a un ProxyCommand en ~ / .ssh / config donde uno tiene una línea como esta:
Marco dice:
El resultado se vería así:
fuente
Gran T, no pequeña t.
Mi script solía devolver ese mensaje, y ya no lo hace.
Utilizo el
authorized_key
en el otro_sistema para hacer que esto ejecute un comando:fuente
Prueba esto:
fuente
-t
dos conexiones y la vi en la incorrecta. He editado mi respuesta.Puede probar la siguiente técnica de ssh'ing en el servidor1 seguido de ssh'ing en el servidor2.
Hacerlo así me funciona.
fuente