Archive for agosto, 2012

2 24
08
2012

Conectando MySQL remoto a través de tunel SSH

Viernes, agosto 24th, 2012

Seguramente te habrás encontrado en multitud de ocasiones ante la siguiente situación:

– tienes alojado en un servidor remoto la base de datos MySQL
– el puerto 3306 de MySQL está cerrado para acceder de forma remota
– quieres usar algún cliente, tipo MySQL Query Browser / MySQL Workbench

Lógicamente, al estar el puerto de escucha de MySQL 3306 de forma remota, no podremos acceder bajo un cliente local desde fuera.

Una posible solución para manejar nuestra base de datos, podría ser instalar un aplicativo web como phpmyadmin; o conectarnos por ssh y trabajar bajo línea de comandos sobre MySQL.

Sin embargo, si por comodidad, o por cabezonería, queremos trabajar de forma local conectados a la base de datos externa, utilizando algún tipo de cliente MySQL como los mencionados como MySQL Workbench / MySQL Query Browser, tenemos otra posibilidad, más elegante incluso, que pasa por crear un tunel SSH para acceder a tu servidor de MySQL de manera remota.

Si te encuentras bajo un entorno linux, puedes usar su propio terminal al que ya te encontrarás habituado.

Si por el contrario trabajas bajo sistemas Windows, siempre puedes utilizar algún cliente ssh como PuTTY.

Para ello conectaremos desde el terminal de la siguiente manera:


ssh -N -L 3307:127.0.0.1:3306 userName@remoteHost

para a continuación introducir lógicamente el password para el usuario correspondiente.

Una vez conectado el tunel ssh, es momento de abrir nuestro cliente de MySQL y conectarnos a la base de datos como si en nuestro equipo se encontrara, indicando la ip localhost 127.0.0.1, pero intercambiando el puerto por defecto de MySQL 3306 por el puerto que hayamos indicado en la conexión, en este caso el puerto número 3307.

Conexión MySQL a través de tunel SSH

Conexión MySQL a través de tunel SSH