SSH Tunnel (für Homeoffice)

Moin,

um derzeit im Homeoffice zu arbeiten, erstelle ich mit putty (PowerShell, Bash for Windows oder sonst etwas) eine SSH Verbindung zu einem Server, von da aus mache ich dann eine weitere SSH Verbindung zu dem eigentlichen Server zu dem ich connecten möchte.

Wenn ich das gleiche für File Transfer mit WinSCP erstelle, kann ich da in den Optionen “Über SSH Tunnel verbinden” wählen, die Adresse und den Port des ersten Servers eintragen und ich kann mit einem Klick die Verbindung zu dem zweiten Server aufbauen.

Sowas hätte ich nun auch gern für putty oder irgendeinen anderen SSH client. Hat jemand eine simple Lösung dafür?

Wenn ich es richtig verstanden habe, brauchst du folgendes (hier für CLI):

ssh -J zwischenserver zielserver

Der Flag -J macht folgendes:

-J destination
Connect to the target host by first making a ssh connection to
the jump host described by destination and then establishing a
TCP forwarding to the ultimate destination from there. Multiple
jump hops may be specified separated by comma characters. This
is a shortcut to specify a ProxyJump configuration directive.
Note that configuration directives supplied on the command-line
generally apply to the destination host and not any specified
jump hosts. Use ~/.ssh/config to specify configuration for jump
hosts.

2 „Gefällt mir“

Gibt’s sowas auch für scp? Das würde mir tatsächlich viel Herumkopieren ersparen.

Jap, müsste da genauso funktionieren :slight_smile:

scp -J zwischenserver source dest

-J destination
Connect to the target host by first making an scp connection to
the jump host described by destination and then establishing a
TCP forwarding to the ultimate destination from there. Multiple
jump hops may be specified separated by comma characters. This
is a shortcut to specify a ProxyJump configuration directive.
This option is directly passed to ssh(1).

1 „Gefällt mir“

Perfekt! Dankeschön. Nach so einem Begriff hab ich gesucht, um dann ordentlich googlen zu können. Mit putty geht es dann folgendermaßen:

2 „Gefällt mir“

Ganz so einfach war es dann doch nicht, das hier hat aber funktioniert:
scp -oProxyCommand="ssh -W %h:%p user@jump" user@server:path path
Vielleicht ist meine scp Version zu alt?

Bei ssh geht es wohl erst ab version 7.3 und bei scp erst ab version 8.0.

Deine OpenSSH Version kannst Du mit ssh -V herausfinden.

Edit: Versionen korrigiert.

2 „Gefällt mir“