J'ai eu un problème similaire en essayant d'accéder à distance au shell mongo, et plusieurs de ces réponses ont aidé avec certaines parties de la solution. Pour résumer :
-
IP publique/DNS :Sélectionnez votre instance sur la console de gestion EC2 et assurez-vous qu'elle dispose d'une adresse IP publique ou d'un DNS public. AWS déplace davantage les valeurs par défaut pour vivre dans un cloud privé virtuel (VPC), et il est possible de se lancer dans un seul avec une adresse IP privée (interne au VPC). Si vous n'avez pas de DNS public ou d'adresse IP, vous devez allouer une adresse IP élastique.
-
Ports du groupe de sécurité :En regardant à nouveau les détails de l'instance sur la console EC2, recherchez les groupes de sécurité et sélectionnez "Afficher les règles". En supposant que vous utilisez les ports Mongo par défaut, vous devriez avoir
27017
et28017
ouvert pour TCP à partir de0.0.0.0/0
ou (plus sécurisé) depuis votre adresse IP. Si ce n'est pas le cas, sélectionnez un groupe de sécurité pour votre instance et depuis la console, accédez àInbound
>Edit
>Add Rule
>Custom TCP Rule
,Port Range: 27017
, et une adresse IPSource
appropriée . Pour l'interface http, ajoutez une autre règle pourPort Range: 28017
. -
/etc/mongod.conf :
- Décommentez
port=27017
pour s'assurer que vous avez le port par défaut (je ne pense pas que ce soit vraiment nécessaire, mais ça m'a soulagé et c'est bien de savoir où changer le port par défaut...) - Commenter
bind_ip=127.0.0.1
afin d'écouter les interfaces externes (par exemple, les connexions à distance) - Décommentez
httpinterface=true
si vous souhaitez utiliser l'interface http
- Décommentez
-
Créer un utilisateur :Vous devez créer un administrateur et/ou un utilisateur pour accéder à distance à la base de données.