
Hier ist mein Setup. Ich habe ein privates Netzwerk mit einer öffentlichen IPv4-Adresse. In diesem privaten Netzwerk habe ich zwei Server, 192.168.1.10 und 192.168.1.20. .10 ist mein SSH-Bastion-Host. Ich habe eine Portweiterleitung eingerichtet, damit ich vom Internet aus per SSH auf diesen Server zugreifen kann. Ich habe auch meine SSH-Konfiguration auf meiner Workstation eingerichtet, damit ich auch vom Internet aus per SSH auf 192.168.1.20 zugreifen kann, und zwar über 192.168.1.10. Die Workstation befindet sich nicht im privaten Netzwerk, sondern ist eine Maschine im Internet.
Hier ist mein Ziel: Ich möchte von meiner Workstation aus über das Internet eine Verbindung zu einem HTTP-Dienst unter 192.168.1.20 herstellen können (einfach durch Aufrufen von localhost:8080 oder ähnlich), aber getunnelt über SSH. Welche(n) Tunnel muss ich einrichten und auf welchen Maschinen?
Danke!
Antwort1
Richten Sie von Ihrer Arbeitsstation aus den Tunnel ein über:
ssh -L8080:192.168.1.20:80 server10
Wobei „server10“ der öffentliche Name ist, den Sie verwenden, um 192.168.1.10 zu erreichen.
Dadurch wird lokal auf Port 8080 lauscht und alle Daten vom Zielhost an 192.168.1.20:80 weitergeleitet.
Alternativ können Sie die -D
Option SSH verwenden, um einen Socks-Proxy einzurichten. Dadurch können Sie jeden Port auf jedem Host erreichen, müssen Ihre Anwendung jedoch so konfigurieren, dass sie diesen Proxy verwendet.