Wurde für den Zugriff auf entfernte Systeme in früheren Zeiten noch Telnet oder die Remote Shell (RSH/rlogin) eingesetzt, kommt heute kein Admin mehr ohne die Secure Shell (SSH) aus. SSH erlaubt die Authentifizierung mit Passwort, Public-Keys, Kerberos oder auch mit einem X.509-Zertifikat und sichert alle Daten, die über eine solche Verbindung übertragen werden. Clients können die Authentizität des Hosts überprüfen, indem diese den öffentlichen Host-Key, der bei jedem Verbindungsaufbau an den Client gesendet wird, mit dem Schlüssel aus der eigenen Datenbank abgleichen.
Im September haben wir im Open-Source-Tipp bereits gezeigt, wie sich mit Hilfe von stunnel ein Tunnel zwischen zwei Endpunkten aufbauen lässt. Mit SSH funktioniert dies ebenfalls, die Software stellt sogar noch flexiblere Konfigurationsmöglichkeiten zur Verfügung. Wie auch bei stunnel wird beim Aufbau eines Tunnels der Netzwerkverkehr, der über einen bestimmten Port läuft, durch den Tunnel geleitet und ist somit vor den Augen Dritter geschützt. Da auch SSH die Weiterleitung der Datenpakete erlaubt, lassen sich somit ebenfalls restriktive Firewalls umgehen.
Erlauben diese beispielsweise nur Datenpakete zum Zielport 443, hilft dies wenig, wenn sich Ihr Rechner gerne mit einem SMTP-Server auf Port 25 unterhalten möchte. Mit SSH können Sie in diesem Fall eine Verbindung zu einem SSH-Server aufbauen, der auf Port 443 lauscht und die empfangenden Pakete einfach an den gewünschten SMTP-Server weiterleitet. Dies hilft natürlich nicht in Fällen, in denen eine Application-Layer-Firewall sicherstellt, dass auf dem erlaubten Port nur ein bestimmtes Protokoll, in diesem Fall HTTPS, gesprochen wird. Der Aufbau eines Tunnels erfolgt dabei immer nach diesem Muster:
ssh <Benutzer>@<Remote-Host> -fNL <lokaler Port>:<Ziel-Host>:<remote Port>
Der
...Der komplette Artikel ist nur für Abonnenten des ADMIN Archiv-Abos verfügbar.