Pregunta

Tengo un servidor de Ubuntu, que me he encerrado a solamente HTTP, HTTPS y SSH (30000 puerto). En este cuadro Tengo un servidor MySQL, que el 99,9% de las veces sólo se utiliza localmente. De vez en cuando quiero conectar a la instancia de MySQL con las herramientas de la GUI, pero sin tocar el servidor de seguridad.

Por lo tanto, es posible preparar las cosas para que pueda conectarse a la caja de MySQL con la conexión SSH? ¿Hay alguna clase de magia reenvío de puertos que pueda hacer?

¿Fue útil?

Solución

ssh -L localport:127.0.0.1:remoteport user@remotehost

donde localport es un puerto sin consolidar en el sistema local remoteport, es el puerto en el que escucha MySQL 127.0.0.1, es la dirección de bucle de retorno en el sistema remoto user, es su nombre de usuario y remotehost es la dirección del sistema remoto.

A continuación, dirija su cliente de MySQL para 127.0.0.1:localport. La conexión será enviada sobre el túnel SSH al puerto remoto.

Otros consejos

Si está utilizando Windows o Unix en su máquina local, PuTTY es una excelente herramienta para esto. Aquí hay un tutorial sobre el reenvío de puertos:

http://www.cs.uu.nl /technical/services/ssh/putty/puttyfw.html

Configurar un túnel usando el cliente SSH para mapear un puerto local, a través del túnel, a un puerto en la máquina remota, a continuación, conecte al puerto local utilizando el cliente.

man ssh tendrá los detalles morbosos, pero es probablemente mejor de buscar en la web para algo un poquito más fácil de leer.

Me gustaría sugerir el uso de HeidiSQL si está en Windows. Maneja el túnel SSH por sí mismo (sólo tiene que descargar la utilidad plink.exe).

En mi humilde opinión, es la mejor herramienta de MySQL por ahí (y es libre y de código abierto).

SSH / HTTP túnel en SQLyog es buena. No es la autenticación de clave pública / privada que añade una capa adicional de seguridad.

introducir descripción de la imagen aquí

Hay dos maneras de utilizar las herramientas visuales de MySQL MySQL en una máquina remota.

Asumo la máquina remota está ejecutando Linux.

Opción 1.

reenvío de puertos SSH.

ssh -L 3306: Proxy: 3306 Nombre de usuario @ remotehost

Básicamente puerto delantero 3306 en el equipo local para 3306 en la máquina remota, a continuación, le dice a su herramienta de gráficas de MySQL para conectarse a localhost: 3306 y se supone que la máquina remota está escuchando en el puerto estándar de 3306

http://magazine.redhat.com/2007/ 11/06 / ssh-reenvío de puertos /

También ssh -D 3306 usuario @ remotehost debe ser similar

Opción 2.

Si está ejecutando servidor X en su máquina remota y de haber instalado las herramientas de interfaz gráfica de usuario en el equipo remoto que pueden crear un túnel a su interfaz gráfica de usuario por la conexión SSH.

ssh -X usuario @ remotehost y luego iniciar las herramientas de interfaz gráfica de usuario sobre el equipo remoto desde la línea de comandos.

Yo sugiero mirar a phpMyAdmin una herramienta basada en web para administrar MySQL , y es muy bueno (requiere PHP ). Puede ser instalado a través de los métodos normales de Ubuntu (por ejemplo Synaptic)

O hacer X túnel con SSH como se mencionó anteriormente.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top