Ssh Jumphost: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 32: Zeile 32:
  
 
=Verwendungszweck=
 
=Verwendungszweck=
Üssh behindalpha
+
*ssh behindalpha
 
Wenn sich die Benutzernamen auf den Computern unterscheiden, geben Sie sie durch Ändern der entsprechenden ProxyJump-Zeile an:
 
Wenn sich die Benutzernamen auf den Computern unterscheiden, geben Sie sie durch Ändern der entsprechenden ProxyJump-Zeile an:
 
+
=Ändern Sie den Korrespondenten ProxyCommand=
DATEI ~/.ssh/config
+
<pre>
Ändern Sie den Korrespondenten ProxyCommand
+
~/.ssh/config
 
ProxyJump otheruser@behindalpha
 
ProxyJump otheruser@behindalpha
Es funktioniert auch mit dem Befehl scp:
+
<pre>
 
+
=Es funktioniert auch mit dem Befehl scp=
Benutzer $scp Dateiname hinteralphabeta:~/
+
*scp Dateiname hinteralphabeta:~/
Notiz
+
;Der Doppelpunkt und der Pfad am Ende werden benötigt, damit scp es als entfernt erkennt.
Der Doppelpunkt und der Pfad am Ende werden benötigt, damit scp es als entfernt erkennt.
+
=Mehrere Sprünge=
Mehrere Sprünge
+
;Die gleiche Syntax kann verwendet werden, um Sprünge über mehrere Maschinen zu machen:
Die gleiche Syntax kann verwendet werden, um Sprünge über mehrere Maschinen zu machen:
+
=Diesen Text hinzufügen=
 
+
<pre>
DATEI ~/.ssh/configDiesen Text hinzufügen
+
~/.ssh/config
 
### Erster Jumphost. Direkt erreichbar
 
### Erster Jumphost. Direkt erreichbar
Host-Alphasprung
+
Host alphajump
 
   Hostname jumphost1.example.org
 
   Hostname jumphost1.example.org
 
   
 
   
 
### Zweiter Jumphost. Nur erreichbar über jumphost1.example.org
 
### Zweiter Jumphost. Nur erreichbar über jumphost1.example.org
Host-Betajump
+
Host betajump
 
   Hostname jumphost2.example.org
 
   Hostname jumphost2.example.org
 
   ProxyJump alphajump
 
   ProxyJump alphajump
 
   
 
   
 
### Host nur über Alphajump und Betajump erreichbar
 
### Host nur über Alphajump und Betajump erreichbar
Host hinteralphabeta
+
Host behindalphabeta
   Hostname hinteralphabeta.example.org
+
   Hostname behindalphabeta.example.org
 
   ProxyJump betajump
 
   ProxyJump betajump
 +
</pre>
 +
=Quellen=
 +
*https://wiki.gentoo.org/wiki/SSH_jump_host

Version vom 7. November 2021, 17:26 Uhr

SSH-Jump-Host

  • Eine Alternative zum SSH-Tunneling für den Zugriff auf interne Maschinen über ein Gateway ist die Verwendung von Jump-Hosts.
  • Die Idee ist, ProxyCommand zu verwenden, um den ssh-Befehl auf dem Remote-Host automatisch auszuführen*
  • Damit wurd zum nächsten Host zu gesprungen und den gesamten Datenverkehr weiterzuleiten.

Voraussetzungen

  • SSH-Zugriff auf den Gateway-Rechner und den internen.
  • Auf dem Gateway-Computer ist Netcat installiert.

Dynamische Jumphost-Liste

  • Sie können die Option -J verwenden, um durch einen Host zu springen:
  • ssh -J host1 host2

Wenn sich Benutzernamen oder Ports auf Maschinen unterscheiden, geben Sie sie an

  • ssh -J user1@host1:port1 user2@host2 -p port2

Mehrere Sprünge

Die gleiche Syntax kann verwendet werden, um Sprünge über mehrere Maschinen zu machen:

  • ssh -J user1@host1:port1,user2@host2:port2 user3@host3

Statische Jumphost-Liste

  • Statische Jumphost-Liste bedeutet, dass Sie den oder die Jumphosts kennen, die Sie benötigen, um einen Host zu erreichen.
  • Daher können Sie in der Datei ~/.ssh/config ein statisches Jumphost-Routing erstellen.
  • Der Vorteil im Vergleich zur dynamischen Jumphost-Option besteht darin, dass Sie die .ssh-Konfiguration auf Jumphosts zwischen Ihrem Computer und allen anderen Jumphosts zwischen Ihnen und dem endgültigen Host, zu dem Sie springen möchten, nicht bereitstellen müssen.

ProxyJump-Beispiel

DATEI ~/.ssh/config
### Erster Jumphost. Direkt erreichbar
Host betajump
  Hostname jumphost1.example.org
 
### Host, zu dem über jumphost1.example.org gesprungen werden soll
Host behindbeta
  Hostname behindbeta.example.org
  ProxyJump betajump

Verwendungszweck

  • ssh behindalpha

Wenn sich die Benutzernamen auf den Computern unterscheiden, geben Sie sie durch Ändern der entsprechenden ProxyJump-Zeile an:

Ändern Sie den Korrespondenten ProxyCommand

~/.ssh/config
ProxyJump otheruser@behindalpha
<pre>
=Es funktioniert auch mit dem Befehl scp=
*scp Dateiname hinteralphabeta:~/
;Der Doppelpunkt und der Pfad am Ende werden benötigt, damit scp es als entfernt erkennt.
=Mehrere Sprünge=
;Die gleiche Syntax kann verwendet werden, um Sprünge über mehrere Maschinen zu machen:
=Diesen Text hinzufügen=
<pre>
~/.ssh/config
### Erster Jumphost. Direkt erreichbar
Host alphajump
  Hostname jumphost1.example.org
 
### Zweiter Jumphost. Nur erreichbar über jumphost1.example.org
Host betajump
  Hostname jumphost2.example.org
  ProxyJump alphajump
 
### Host nur über Alphajump und Betajump erreichbar
Host behindalphabeta
  Hostname behindalphabeta.example.org
  ProxyJump betajump

Quellen