Business Mac: SSH Tunnel Manager

Apples Mac Computer haben mittlerweile viele Freunde im professionellen Consultingumfeld. Auf den Schreibtischen vieler freiberuflicher Kollegen sehe ich zunehmend Rechner der verschiedenen MacBook-Baureihen. Häufig sind sie als persönlicher Rechner des Consultants im Einsatz. Seltener einmal arbeitet man mit dem eigenen Rechner im Netzwerk des Kunden. Ich arbeit seit einer Weile in genau dieser Konstellation, und immer wieder stelle ich erfreut fest, wie gut der Mac für die Arbeit in diesem Umfeld geeignet ist. (Über so unschöne Dinge wie Webapplikationen, die zwingend mit dem Internet Explorer bedient werden wollen, decken wir hier mal den Mantel des Schweigens. Dafür gibt es virtuelle Maschinen.)

Hier möchte ich in loser Folge Tools und Techniken vorstellen, die mir die Projektarbeit auf dem Mac erheblich erleichtern. Der Fokus liegt dabei auf Themen der klassischen Unternehmens-IT, also etwa Netzwerk, Datenbanken, Shellskripte und dergleichen.

In diesem Artikel geht es um den „SSH Tunnel Manager“.

Je größer das Unternehmen, desto komplexer die Netzwerklandschaft. In Großunternehmen gibt es typischerweise eine Vielzahl von Netzwerken, die verschiedenen Bereichen zugeordnet sind, seien es geografische Standorte, geschäftliche Unternehmenseinheiten oder fachliche Bereiche verschiedenster Art. Voneinander sind diese Netzwerke oft durch Firewalls oder andere technische Maßnahmen abgeschottet. Auch verschieden Zonen wie Intranet, Extranet, Internet, DMZ o.ä. werden unterschieden und gegeneinander abgesichert. Der Zugriff auf ein anderes Netz erfolgt über genau definierte Übergabepunkte.

Beispielsweise sind alle Rechner im Netz A gegen Zugriffe aus Netz B gesichert. Nur ein speziell gesicherter Rechner kann aus Netz B erreicht werden, und von dort aus kann man sich im Netz A bewegen. Diese Übergabepunkte sind in der Regel recht eingeschränkt, was aus sicherheitstechnischen Überlegungen auch nachvollziehbar ist.

Ein klassischer Fall ist, dass ich von meinem Rechner aus (nennen wir ihn „clientB“) aus dem Netz B auf den Server „entryA“ nur über Port 22 zugreifen kann. Ich kann mich also per SSH dorthin verbinden (mal angenommen, ich habe einen Useraccount dort). Ich möchte aber nun auf den Webserver auf dem Server „webA“ zugreifen der sich ebenfalls im Netz A befindet und auf Port 80 Anfragen entgegennimmt. Was tun?

Die Lösung lautet: Ich sage entryA, er möge meinen (clientB) Port 10080 auf den Port 80 von webA weiterreichen (oder auch tunneln). Ich greife dann zu auf http://localhost:10080 und entryA leitet diesen Zugriff weiter auf http://webA:80. Damit mein Aufruf überhaupt bei entryA landet, muss ich vorher einen Tunnel dorthin öffnen. Das geschieht mit dem Kommando:

ssh -L 10080:webA:80

Mit einem ssh-Aufruf kann man dabei gleich mehrere Tunnel öffnen, man gibt die -L Option einfach mehrfach mit den jeweiligen Parametern an. Außerdem sind die Zielmaschinen nicht notwendigerweise über einfache Namen wie „webA“ erreichbar, sondern nur über IP-Adressen oder kryptische Namen. Das ssh-Kommando wird da schnell sehr lang und komplex. Und für unterschiedliche Netze und Aufgaben braucht man natürlich unterschiedliche Kommandos.

Wäre es nicht viel einfacher, wenn man die benötigten Kommandos einmal zusammenstellen und abspeichern und dann nach Bedarf auf Knopfdruck aktivieren könnte? An dieser Stelle kommt der SSH Tunnel Manager ins Spiel. Er bietet eine aufgeräumte Oberfläche, die im Prinzip nur die Liste der konfigurierten Verbindungen (d.h. die ssh-Kommandos) und ihren Verbindungsstatus enthält. Daneben gibt es eine Konfigurationsmaske zur Verwaltung dieser Verbindungen. Hier können neben lokalen Portweiterleitungen (wie im obigen Beispiel) auch remote Portweiterleitungen konfiguriert werden. Dabei sage ich dem angesprochenen Rechner (entryA im obigen Beispiel) nicht, er möge meinen Port 10080 umleiten, sondern seinen eigenen Port 80. Das ist z.B. dann interessant, wenn ich jemand anderem Zugriff auf webA geben will.

Nachdem alle Verbindungen im SSH Tunnel Manager eingerichtet sind, startet und stoppt man die Verbingungen einfach über die Buttons im Hauptfenster. Ich habe in meinem Arbeitsumfeld ein knappes Dutzend dieser Verbindungen eingerichtet (jede mit einer Handvoll separater Tunnel) und möchte diese Arbeitserleichterung definitv nicht mehr missen.

Der SSH Tunnel Manager kann unter http://projects.tynsoe.org/en/stm/ kostenlos heruntergeladen werden.

 

 

Quellen: Foto by Fotolia. Urheber: Natalia Merzlyakova

Das könnte Sie auch interessieren

Bleiben Sie informiert:

its-people hilft Ihnen...

Weitere Blogthemen: