• Startseite
  • Über mich
  • Portfolio
    • Eventmanagement
    • Technologie
      • Multitouch-Surface
      • Multitouch-Table
    • Smartphone-Apps
    • Unternehmen
    • Presse
  • Programmierung
  • Auto
  • Wirtschaftsinformatik

Patrick Hütter

Mein Blog rund um Softwareentwicklung, Online-Marketing, StartUps, Gründung, Unternehmertum, Trends and more

Port Weiterleitungen über SSH (Ports tunneln)

2
  • by Patrick Hütter
  • in Linux · Mac · Server
  • — 14 Jul, 2011

Mal schnell was in der mySQL-Datenbank auf dem Server ändern? Keine Lust phpMyAdmin zu installieren? Oder du willst einfach diverse Protokolle oder Services tunneln?

Anhand von Beispielen aus meinem Use-Case eben, hier ein kleines HowTo wie man einen entfernten mySQL-Server der auf Port 3306 (Default) lauscht via SSH auf Port 4321 auf dem eigenen Rechner tunnelt. Die Ports kann man natürlich je nach eigenen Anforderungen anpassen und das ganze funktioniert unter Linux und Mac in der Shell/Konsole. Unter Windows mit ssh-Terminal ggf. auch (nicht getestet).

Folgender Befehl tunnelt alle Anfragen auf localhost:4321 zum entfernten Host/Server auf Port 3306 (wo in meinem Falle mein mySQL Server lauscht). Für „hostname“ kann man natürlich auch ganz normal eine Domain oder IP-Adresse eintragen.

ssh root@hostname -p22 -g -L 4321:localhost:3306

Dann einfach ein mySQL-Tool seiner Wahl auf dem Desktop starten (z.B. MySQL-Workbench) und ganz einfach zum mySQL-Server auf localhost:4321 verbinden. FERTIG! 🙂

Man könnte natürlich so auch Webseiten tunneln, um z.B. Firewalls zu umgehen. Viel Spaß beim ausprobieren! 😉

Hier noch ne kleine Doku der ssh-Parameter die ich verwendet habe:


-g      Allows remote hosts to connect to local forwarded ports.

-L [bind_address:]port:host:hostport
 Specifies that the given port on the local (client) host is to be forwarded to the given host and port on the remote side.  This works by allocating a socket to listen to port
 on the local side, optionally bound to the specified bind_address.  Whenever a connection is made to this port, the connection is forwarded over the secure channel, and a con-
 nection is made to host port hostport from the remote machine.  Port forwardings can also be specified in the configuration file.  IPv6 addresses can be specified with an
 alternative syntax: [bind_address/]port/host/hostport or by enclosing the address in square brackets.  Only the superuser can forward privileged ports.  By default, the local
 port is bound in accordance with the GatewayPorts setting.  However, an explicit bind_address may be used to bind the connection to a specific address.  The bind_address of
 ``localhost'' indicates that the listening port be bound for local use only, while an empty address or `*' indicates that the port should be available from all interfaces.

-p legt den SSH Port fest, an dem der entfernte SSH-Server lauscht.

Tool: cmatrix

Share

Tags: FirewallHowToLinuxMacmySQLPort-ForwardingPort-WeiterleitungServerSSHTunnelingTutorial

— Patrick Hütter

Patrick ist Gründer und Geschäftsführer der encircle360 GmbH. Er liebt Technologie und kennt sich sehr gut im Bereich Softwareentwicklung, u.a. auf JVM basierten Technologien wie Spring Boot, VertX, Akka, Groovy, Scala & Elasticsearch aus.

2 Comments

  1. Sven sagt:
    15. Juli 2011 um 8:20 Uhr

    Hi,
    sollte man sich in deinem Beispiel mit seinem MySQL-Tool wirklich auf Port 1234 und nicht 4321 verbinden? Hab ich was übersehen?

    Was mich noch interessiert: ist die Verwendung von der Option „-g“ beim ssh-Befehl für dieses Szenario wirklich notwending?

    Antworten
    • Patrick sagt:
      15. Juli 2011 um 22:23 Uhr

      Hi,
      nein, das war ein Tippfehler von mir! Danke für deine Aufmerksamkeit, ich habs natürlich sofort korrigiert! 😉

      Für dieses Szenario ist „-g“ anscheinend doch nicht notwendig (gerade getestet).

      Antworten

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

  • Previous story Google+ vs. Facebook, Xing, Twitter, Skype and the rest
  • Next story Here we go: seo-day 2011 in Köln
  • Du suchst richtig gute Beratung im Bereich Software & IT?

    encircle360
  • Neueste Beiträge

    • Running headscale with headscale-admin (UI), letsencrypt & docker-compose in dual stack with IPv4 and IPv6
    • Groovy & Grails suchen einen neuen Hauptsponsor
    • Unitymedia DNS Probleme und Lösungsmöglichkeiten für Mac OS X, Windows und den eigenen Router
    • Running Grails applications on the Raspberry Pi
    • [HowTo] Build groovy project and package as jar (with all dependencies) for easy distribution with gradle
  • Neueste Kommentare

    • nototok bei Running headscale with headscale-admin (UI), letsencrypt & docker-compose in dual stack with IPv4 and IPv6
    • Muiz bei Running headscale with headscale-admin (UI), letsencrypt & docker-compose in dual stack with IPv4 and IPv6
    • John Tucker bei Running headscale with headscale-admin (UI), letsencrypt & docker-compose in dual stack with IPv4 and IPv6
    • Bastlerwastl bei HowTo: Squid Proxy Server unter Debian schnell eingerichtet
    • PatrickHuetter bei So geht’s: Macbook mit zwei externen Monitoren verbinden
  • Kategorien

    • Allgemein
    • Android
    • Code-Snippets
    • Datenbanken
    • Elektrotechnik
    • Licht
    • Linux
    • Mac
    • Messe
    • Online-Marketing
    • Programmierung
    • Projektmanagement
    • SEM
    • SEO
    • Server
    • Shell
    • Social Media
    • Web
  • Weiterführende Links

    • Price API
    • encircle360
    • sellytics
  • Impressum
  • Datenschutz

© Patrick Hütter