sql >> Base de Datos >  >> NoSQL >> MongoDB

Problema con el acceso a Mongodb en Amazon EC2

Piense cuidadosamente antes de hacer esto. Si abre los puertos, asegúrese de restringir los números de IP que pueden acceder, de lo contrario, cualquiera podrá acceder a su base de datos. Puede habilitar la autenticación en MongoDB, pero no es particularmente seguro, solo un nombre de usuario y contraseña. No deberías tener tu base de datos abierta a internet, no es una buena idea.

Una mejor manera que abrir puertos en el firewall EC2 es abrir un túnel SSH y reenviar el puerto, esto asegura que solo usted pueda acceder a la base de datos y solo mientras el túnel SSH esté activo.

Abre una nueva terminal y ejecuta este comando (reemplazando usuario y host con el usuario que usas cuando usas SSH en tu servidor y el nombre del servidor):

ssh [email protected] -N -L 27017:127.0.0.1:27017

El comando reenviará el puerto 27017 en su computadora al mismo puerto en el servidor. Para conectarse a la instancia de MongoDB, simplemente ejecute mongo en una terminal (si eso no funciona, intente con mongo --host 127.0.0.1 o incluso mongo --host 127.0.0.1 --port 27017 ).

Si ejecuta MongoDB en su máquina local, deberá cambiar el primer puerto, ya que el servidor local ya lo está usando. En ese caso, ejecute este comando en su lugar:

ssh [email protected] -N -L 27018:127.0.0.1:27017

y luego conectarse con

mongo --port 27018

(posiblemente agregando --host 127.0.0.1 si no funciona).

Cuando haya terminado de trabajar con la base de datos, salga de mongo y presione ctrl-C en la terminal con el comando SSH.