Ssh Jumphost: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| Zeile 32: | Zeile 32: | ||
=Verwendungszweck= | =Verwendungszweck= | ||
| − | + | *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= | |
| − | + | <pre> | |
| − | + | ~/.ssh/config | |
ProxyJump otheruser@behindalpha | ProxyJump otheruser@behindalpha | ||
| − | Es funktioniert auch mit dem Befehl scp | + | <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. | |
| − | 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> | |
| − | + | ~/.ssh/config | |
### Erster Jumphost. Direkt erreichbar | ### Erster Jumphost. Direkt erreichbar | ||
| − | Host | + | 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 | + | 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 | + | Host behindalphabeta |
| − | Hostname | + | 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