Tuve un problema similar al intentar acceder al shell de mongo de forma remota, y varias de estas respuestas me ayudaron con partes de la solución. Para resumir:
-
IP pública/DNS :seleccione su instancia en EC2 Management Console y asegúrese de que tenga una IP pública o un DNS público. AWS está moviendo más de los valores predeterminados para que vivan dentro de una nube privada virtual (VPC), y es posible iniciar una con solo una dirección IP privada (interna a la VPC). Si no tiene un DNS público o una IP, debe asignar una IP elástica.
-
Puertos del grupo de seguridad :Mirando de nuevo los detalles de la instancia en la consola EC2, busque los grupos de seguridad y seleccione "Ver reglas". Suponiendo que está utilizando los puertos predeterminados de Mongo, debería tener
27017
y28017
abierto para TCP desde0.0.0.0/0
o (más seguro) desde su dirección IP. De lo contrario, seleccione un grupo de seguridad para su instancia y desde la consola vaya aInbound
>Edit
>Add Rule
>Custom TCP Rule
,Port Range: 27017
y una IPSource
apropiada . Para la interfaz http, agregue otra regla paraPort Range: 28017
. -
/etc/mongod.conf :
- Descomenta
port=27017
para asegurarse de tener el puerto predeterminado (no creo que esto sea realmente necesario, pero me hizo sentir mejor y es bueno saber dónde cambiar el puerto predeterminado...) - Comenta
bind_ip=127.0.0.1
para escuchar interfaces externas (por ejemplo, conexiones remotas) - Descomenta
httpinterface=true
si desea utilizar la interfaz http
- Descomenta
-
Crear usuario :Debe crear un administrador y/o usuario para acceder a la base de datos de forma remota.