Von außen über einen SSH-Tunnel eine Verbindung zur Intranet-LAN-Only-Website meines Unternehmens herstellen

Von außen über einen SSH-Tunnel eine Verbindung zur Intranet-LAN-Only-Website meines Unternehmens herstellen

Meine Firma hat einen Intranet-Webserver, der nur vom LAN aus zugänglich ist und für die Webentwicklung als Integrationsserver verwendet wird. Benutzer im LAN richten ihre /etc/hosts so ein, dass sie dieselben virtuellen Hosts verwenden, die in der Apache-Konfiguration des Integrationsservers definiert sind, und können sich so über den Standardport 80 damit verbinden.

Ich arbeite manchmal remote und kann über einen benutzerdefinierten Port per SSH auf den Server zugreifen.

Wenn ich meine /etc/hosts auf die öffentliche IP dieses Servers einstelle, gibt es dann eine Möglichkeit, die SSH-Verbindung mit diesem benutzerdefinierten Port zu verwenden, sodass meine Browserverbindung getunnelt wird und Seiten von diesem Webserver abruft?

Antwort1

Ich habe Ihre Konfiguration nicht ganz verstanden, aber wenn Sie per SSH auf den Firmenserver zugreifen, sollten Sie in der Lage sein, einen SSH-Tunnel einzurichten, sodass Sie per Browser auf den Firmen-Webserver zugreifen können.

Du tustnichtmüssen Sie /etc/hosts auf Ihrem lokalen Rechner einrichten. Mit dem Parameter ssh

-L port:host:hostport

Der gesamte Datenverkehr zum Port auf dem lokalen Host wird zum Host/Hostport auf dem Remote-Remote getunnelt. Wenn Sie also

 ssh -L 80:web-server:80 user@ssh-server -p 22

http://localhostwird umgeleitet zu web-server:80. Beachten Sie, dass der Hostport auf dem Remote-Server, also dem SSH-Server, übersetzt wird.

-p 22ist nicht erforderlich, wenn der SSH-Server den Standardport verwendet, aber in der Frage steht, dass der SSH-Server über einen benutzerdefinierten Port läuft. Ändern Sie in diesem Fall 22den Port in den benutzerdefinierten.

Wenn das System beschwert, dassPrivilegierte Ports können nur von Root weitergeleitet werden, führen Sie es als Superuser aus:

sudo ssh -L 80:web-server:80 user@ssh-server -p 12345

oder melden Sie sich als Root an.

Antwort2

SSH-Befehlszeilenversion:

ssh -L 90:devserver:80 remotehost.example.com 

Navigieren Sie nun zuhttp://devserver:90/

Denken Sie daran, dass /etc/hosts auf 127.0.0.1 verweisen muss

Mit PuTTY unter SSH-Tunnel:

  1. Geben Sie bei Quellport 90 ein.
  2. Geben Sie bei Ziel devserver:80 ein.
  3. Klicken Sie auf Hinzufügen
  4. Denken Sie daran, zur Sitzung zurückzukehren und auf „Speichern“ zu klicken.

Besser als das ganze Tunneln wäre, OpenVPN im Büro einzurichten.

Antwort3

Ich mache genau das Gegenteil. Wenn ich bei einem Kunden bin, richte ich über Tunnelier auf meinem Laptop einen sicheren SSH-Tunnel ein, der auf einen externen Server mit installiertem SSH-Server verweist. Dann richte ich Switchy in Google Chrome ein, um die Weiterleitung des Datenverkehrs von meinem Browser an den externen Server über SSH zu ermöglichen.

Also,

  1. Installieren Sie Switchy in Ihrem Chrome-Browser (Sie können einen Proxy in FF/IE einrichten – mit Switchy können Sie problemlos zwischen Proxy-Konfigurationen wechseln). Stellen Sie den SOCKS-Host auf 127.0.0.1 und den Port auf 1080 ein.
  2. Richten Sie den Tunnelier-Client auf Ihrem Remote-Rechner ein, d. h. auf Ihrem Laptop/Heimcomputer, und verbinden Sie ihn mit dem SSH-Server des Unternehmens. Verwenden Sie Port 1080 mit aktivierter „SOCKS/HTTP-Proxy-Weiterleitung“.

Hoffe das hilft.

verwandte Informationen