Wie kann ich den folgenden Befehl mit umschreiben ProxyCommand
?
ssh -l username1 -t jumphost1 \
ssh -l username2 -t jumphost2 \
ssh -l username3 -t jumphost3 \
ssh -l username4 server
Das geht nicht
ssh -o ProxyCommand="\
ssh -l username1 -t jumphost1 \
ssh -l username2 -t jumphost2 \
ssh -l username3 -t jumphost3" \
-l username4 server
username1@jumphost1's password:
Pseudo-terminal will not be allocated because stdin is not a terminal.
Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
ssh_exchange_identification: Connection closed by remote host
Ich bin mir seiner Verwendung mit bewusst nc
, suche aber nach einer Möglichkeit, es mit Hopfen der Klasse 3+ zu verwenden, und verwende diese Option auch mit scp
. Ich habe die ssh_config
Manpage überprüft , aber die Informationen sind zumindest für mich recht knapp.
BEARBEITEN
Ich habe versucht, ProxyCommand
geschachtelt in einer anderen zu verwenden, ProxyCommand
wie unten vorgeschlagen, aber ich erhalte immer etwas in der folgenden Richtung
debug3: ssh_init_stdio_forwarding: 192.17.2.2:2222
debug1: channel_connect_stdio_fwd 192.17.2.2:2222
debug1: channel 0: new [stdio-forward]
debug2: fd 4 setting O_NONBLOCK
debug2: fd 5 setting O_NONBLOCK
debug1: getpeername failed: Bad file descriptor
debug3: send packet: type 90
debug2: fd 3 setting TCP_NODELAY
debug3: ssh_packet_set_tos: set IP_TOS 0x10
debug1: Requesting no-more-sessions@openssh.com
debug3: send packet: type 80
debug1: Entering interactive session.
Zum Glück, da 7.3
-J
oder ProxyJump
dient mein Zweck - obwohl ich immer noch meine Tasteneinstellung umgehen muss.
ssh -q -J user1@jumphost1,user2@jumphost2,user3@jumphost3 user@server