SSH-Verbindung und Jump Host

Benutzer von Linux kennen die Möglichkeit mit einem Jump Host eine SSh-Verbindungen zu Servern in anderen Netzwerksegment herzustellen. Mit einer kleinen Anpassungen kann man auch mit einem Windows-Client so bequem Server in anderen Netzwerkbereiche erreichen und administrieren.

Nutzt man eine Linux-Distribution dann können im Ordner .ssh/config die SSH-Verbindungen eingetragen und verwaltet werden. Wie das funktioniert habe ich in diesem Beitrag beschrieben:

SSH-Verbindungen verwalten mit Aliases

Ein Jump Host wird ebenfalls in der Datei hinterlegt.

An diesem Beispiel wird das deutlich:

  • Der Client, von dem die SSH-Verbindung aufgebaut werden soll, befindet sich in einem anderen Netzwerksegment und hat die IP-Adresse 192.168.25.100
  • server-1-jump-host ist unser Jump Host. Der Client kann zu diesem Server eine SSH-Verbindung herstellen
  • server-irgendwo ist in einem Netzwerksegment auf das nur der server-1-jump-host Zugriff hat. Unser Client bekommt keine Verbindung zu diesem Server

Damit aber eine SSH-Verbindung zu server-1-jump-host aufgebaut werden kann, wir der server-1-jump-host quasi als Brücke genutzt.

Die Konfiguration wird in der Datei ~/.ssh/config hinterlegt.

Host server-1-jump-host
    HostName 192.168.40.1
    User root
    Port 22
    PreferredAuthentications publickey

Host server-irgendwo
    HostName 192.168.40.236
    ProxyJump server-1-jump-host

Die Verbindung zu dem Server server-irgendwo wird mit dem Befehl von unserem Client aufgebaut

ssh server-irgendwo

Der SSH-Client findet dann die korrekte Adressauflösung für den server-1-jump-host und für server-irgendwo der Benutzer bekommt davon gar nicht mit. Er landet einfach auf dem server-irgendwo.


Gib mir gerne einen Kaffee ☕ aus!

Wenn dir meine Beiträge gefallen und geholfen haben, dann kannst du mir gerne einen Kaffee ☕ ausgeben.

PayPal Logo


liberapay.com/strobelstefan.org


Kaffee via Bitcoin

bc1qfuz93hw2fhdvfuxf6mlxlk8zdadvnktppkzqzj


Das Ganze funktioniert so standardmäßig bei jeder gängigen Linux Distribution.

Aber auch mit einem Windows-Client kann man Jump Hosts nutzen.
Dazu installiert man sich die aktuellste Version von MSYS2 terminal das im Git-Paket enthalten ist.
https://git-scm.com/download/win

Nach der Installation des Tools taucht im Ordner des Windows-Benutzers ein neuer Ordner mit dem Namen .ssh auf. Und genau in diesem Ordner wird die Datei config, wie auch in einem Linux-System angelegt oder von einem Linux-System dorthin kopiert.

Damit kann man sofort wie bei Linux SSH-Verbindungen aufbauen.

Möchte man beim Aufbau von SSH-Verbindungen nicht ständig Passwörter eingeben und den Zugang noch ein wenig mehr absichern, dann solltest du über den Einsatz eines Hardwaretokens, wie dem YubiKey, nachdenken.

Im Themenbereich "YubiKey" finden sich dazu einige hilfreiche Anleitungen.
https://strobelstefan.org/yubikey/

Wie ein Windows-System konfiguriert wird, damit man SSH-Verbindungen mit einem YubiKey herstellt, wir in diesem Artikel beschrieben.
YubiKey 11 – Windows anpassen zur SSH-Anmeldung an einem Linux-System

Photo by Walker Fenton on Unsplash

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.