Howto: Sicherer SSH Zugriff auf Dienste hinter einer Firewall

Manchmal muss man über ein öffentliches Netzwerk auf sensible Dienste oder Daten im Firmen- oder Heimnetzwerk zugreifen. Kein Problem, man öffnet einfach den entsprechenden Port in der Firewall und schon gehts. Sicherheit ist aber etwas Anderes.

09. Apr 2012 10:54

Manchmal muss man über ein öffentliches Netzwerk auf sensible Dienste oder Daten im Firmen- oder Heimnetzwerk zugreifen. Eigentlich kein Problem, man öffnet den entsprechenden Port in der Firewall oder schaltet die Firewall einfach komplett aus und alles geht? Eine wirklich schlechte Idee.

Die nachfolgende Anleitung beschreibt den Zugriff auf den MySQL-Dienst eines Rootservers über einen temporären SSH Tunnel, ohne dafür den MySQL-Port in der Firewall öffnen zu müssen.



Melden Sie sich mit PuTTY auf Ihrem Rootserver an. Nachdem die Verbindung aufgebaut ist, klicken Sie mit der rechten Maustaste auf das Icon der geöffneten PuTTY-Session, danach auf "Change Settings" und dann im Navigationsbaum zu "Connection" -> "SSH" -> "Tunnels".



Die Angabe unter "Source port" bezieht sich auf den Port, den Sie für den Zugriff auf MySQL von Ihrem lokalen PC aus verwenden wollen; wir nehmen praktischerweise den MySQL-Port 3306 (sofern nicht auf Ihrem lokalen PC bereits ein MySQL-Server läuft).

Unter "Destination" wird "IP:Port" des Zielhosts angegeben, dessen Dienste wir umleiten wollen: hier 127.0.0.1 und 3306 (der Port für MySQL).

Klicken Sie dachach auf den Button "Add", um die "Umleitung" zu übernehmen. Klicken Sie danach auf den Button "Apply", um die Einstellungen wirksam werden zu lassen. (Werden die Einstellungen für den Tunnel nicht angezeigt, dann verwenden Sie eine ältere Version von PuTTY, bei der das vor dem Connect angegeben werden muss).

Sie können nun mit der Datenbank Ihres Rootserver so arbeiten, als wäre diese auf Ihrem lokalen PC installiert. Sie geben also für die Verbindung mit einem Datenbank-Client Ihrer Wahl (z.B. NaviCat) zur MySQL Datenbank Ihres Rootservers unter "Host Name/IP Address" "localhost" oder "127.0.0.1" an und unter Port "3306" (den Port, den Sie zuvor unter "Source port" eingetragen hatten).

 
π