Es posible que desee conectarse a MySQL en Amazon EC2 desde una computadora portátil con Windows. Pero es posible que no desee abrir ningún puerto en la instancia EC2 por razones de seguridad. En su lugar, puede reenviar su puerto local a través de Secure Shell (SSH). Ahora, cuando se conecta a su puerto local, se reenvía para conectarse al servidor MySQL en Amazon EC2 a través de SSH. No es necesario abrir el puerto de su servidor MySQL en la instancia EC2. Dado que se trata de SSH, nadie puede rastrearlo tampoco. Así es como puede conectarse a MySQL en Amazon EC2 desde Windows usando el túnel SSH.
Si no está familiarizado con la conexión a la instancia Amazon EC2 desde Windows mediante SSH, puede obtener más información aquí
Paso 1:Crear el túnel
Cree una sesión en PuTTY y luego seleccione la pestaña Túneles en la sección SSH. En el cuadro de texto Puerto de origen, ingrese 3100. Este es el puerto en el que PuTTY escuchará en su máquina local. Puede ser cualquier puerto estándar permitido por Windows. En el campo Destino, inmediatamente debajo del Puerto de origen, ingrese 127.0.0.1:3306. Esto significa que, desde el servidor, reenvíe la conexión a la IP 127.0.0.1, puerto 3306. Aquí, el servidor MySQL se ejecuta en la instancia EC2. Por lo tanto, 127.0.0.1 se trata como la IP local de la instancia EC2 y no como su máquina local. MySQL por defecto escucha en el puerto 3306 y nos estamos conectando directamente al servidor mismo, es decir, 127.0.0.1.
Paso 2:Agrega el túnel
Haga clic en el botón Agregar.
Paso 3:Inicie una sesión de PuTTY
- Inicie PuTTY (en el menú Inicio, haga clic en Todos los programas> PuTTY> PuTTY).
- En el panel Categoría, seleccione Sesión y complete los siguientes campos:
- En el cuadro Nombre de host , introduzca nombre_de_usuario @nombre_dns_público . Asegúrese de especificar el nombre de usuario adecuado para su AMI. Por ejemplo:
- Para una AMI de Amazon Linux, el nombre de usuario es ec2-user .
- Para una AMI RHEL5, el nombre de usuario suele ser root pero podría ser usuario ec2 .
- Para una AMI de Ubuntu, el nombre de usuario es ubuntu .
- De lo contrario, consulte con su proveedor de AMI.
- En Tipo de conexión, seleccione SSH.
- Asegúrese de que el puerto sea 22.
- En el cuadro Nombre de host , introduzca nombre_de_usuario @nombre_dns_público . Asegúrese de especificar el nombre de usuario adecuado para su AMI. Por ejemplo:
- En el panel Categoría, expanda Conexión, expanda SSH y luego seleccione Autenticación. Complete lo siguiente:
- Haga clic en Examinar.
- Seleccione .ppk que generó para su par de claves y luego haga clic en Abrir.
- Seleccione Sesión en el árbol de categorías, introduzca un nombre para la sesión en Sesiones guardadas y luego haga clic en Guardar.
- Haga clic en Abrir para iniciar la sesión de PuTTY.
- Si es la primera vez que se conecta a esta instancia, PuTTY muestra un cuadro de diálogo de alerta de seguridad que le pregunta si confía en el host al que se está conectando.
- Haga clic en Sí. Se abre una ventana y está conectado a su instancia. Mantenga esta ventana abierta siempre que desee conectarse a su base de datos MySQL.
Paso 4:Conéctese a MySQL en Amazon EC2 desde Windows
Aquí, como referencia, hay un ejemplo de conexión que usa MySQL Adminstrator yendo a localhost:tenga en cuenta la dirección de host del servidor de 127.0.0.1 que se reenviará de forma transparente.
También puede abrir el símbolo del sistema, navegar a la carpeta de instalación de MySQL (por ejemplo, C:\Program Files\MySQL\MySQL Server 5.5\bin) y escribir (por ejemplo, la contraseña es 'contraseña')
mysql -h 127.0.0.1 --port 3100 -uroot -ppasswd
Significa conectarse al puerto 3100 en su host local. Esto reenvía la conexión al servidor MySQL de la instancia EC2 que escucha en el puerto 3306.