Estoy intentando configurar un túnel SSH en un servidor web remoto a otro servidor MySQL para que la base de datos se pueda explorar fácilmente con MySQL Query Browser. Estoy siguiendo esta página pero no puedo conectarme al servidor MySQL.http://www.howtogeek.com/howto/ubuntu/access-your-mysql-server-remotely-over-ssh/
Qué he hecho:
- Inicié sesión en el servidor web con Putty a través de SSH.
- escritos
ssh -L 33060:[database]:3306 [myusername]@[webserver_address]
donde [...] los datos se ven alterados por la información real. Me pidieron una contraseña, la escribí y recibí el siguiente mensaje. Entonces parece que el inicio de sesión fue exitoso.
socket: protocolo no compatible
Último inicio de sesión: .... 2012 de .... Copyright (c) 1980, 1983, 1986, 1988, 1990, 1991, 1993, 1994 The Regents of the University of California. Reservados todos los derechos.
FreeBSD 7.1-LIBERACIÓN....
¡Bienvenido a FreeBSD!
Abrí MySQL Query Browser en Windows e ingresé
Server Host:
servidor local
Port:
33060
UserName:
mi nombre de usuario
PassWord:
mi contraseña
Y dice,
Could not connect to the specified instance.
MySQL Error Number 2003
Can't connect to MySQL Server on 'localhost' (10061)
Lo siento si esto es demasiado básico. Gracias por tu información.
Respuesta1
Dado que desea acceder a un sistema remoto desde su host de Windows desde el cual está utilizando Putty, debe crear el túnel dentro de Putty, no en el sistema remoto.
Configurar un túnel en Putty es bastante sencillo.
- masilla abierta
- Cargue su sesión guardada si tiene una, o ingrese cualquier información de conexión.
- Desplácese hacia abajo hasta Conexión -> SSH -> Túneles
- Establezca el puerto de origen en
33060
- Configure el destino para que sea la IP del servidor de la base de datos seguida
:3306
del puerto mysql. Entonces algo así como192.168.1.1:3306
. - Haga clic en 'Agregar'
- Vuelva a hacer clic en la pestaña de sesión y elija guardar, o simplemente haga clic en abrir para iniciar la conexión.
Una vez conectado, inicie su aplicación de base de datos y desde la aplicación intente conectarse a un servidor que escuche 127.0.0.1:33060
.
Respuesta2
EDITAR: Acabo de ver que estás usando una cadena de conexión incorrecta:
ssh -L 33060:[database]:3306 [myusername]@[webserver_address
Prueba con:
ssh -4 -L 33060:localhost:3306 [myusername]@[webserver_address
La opción -4 fuerza el uso de IPv4 y el localhost es el destino del puerto de enlace (en su caso DEBE ser locahost)
Conéctese usando localhost:33060 y credenciales remotas.
¡Eso debería funcionar!
De lo contrario, verifique la configuración del demonio ssh de su servidor para ver esto:
AllowTcpForwarding yes
De lo contrario, conéctese a su servidor con la ssh -vv user@host
opción, esto le brindará más información; si ve que el puerto de enlace falló, al menos debería ver el motivo.