web-dev-qa-db-fra.com

Impossible de se connecter à Mongo sur un serveur distant

J'ai installé mongo sur la machine1 (Ubuntu 14.04.3 LTS server) de mon réseau local. J'ai également ouvert le port 27017 comme indiqué dans le guide this à l'aide des commandes suivantes:

Sudo iptables -A INPUT -p tcp --destination-port 27017 -m state --state NEW,ESTABLISHED -j ACCEPT
Sudo iptables -A OUTPUT  -p tcp --source-port 27017 -m state --state ESTABLISHED -j ACCEPT

Les règles actuelles sont (iptables -L):

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:27017 state NEW,ESTABLISHED

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     tcp  --  anywhere             anywhere             tcp spt:27017 state ESTABLISHED

Mais je ne parviens pas à me connecter à ce port à partir de machine2 (sur le même réseau):

$ mongo --Host 192.168.0.108
MongoDB Shell version: 3.0.4
connecting to: 192.168.0.108:27017/test
2016-01-23T18:02:14.848+0530 W NETWORK  Failed to connect to 192.168.0.108:27017, reason: errno:61 Connection refused
2016-01-23T18:02:14.850+0530 E QUERY    Error: couldn't connect to server 192.168.0.108:27017 (192.168.0.108), connection attempt failed
    at connect (src/mongo/Shell/mongo.js:181:14)
    at (connect):1:6 at src/mongo/Shell/mongo.js:181
exception: connect failed

J'ai aussi essayé de vérifier si le port est ouvert ou non:

$ nc -v 192.168.0.108 27017
nc: connectx to 192.168.0.108 port 27017 (tcp) failed: Connection refused

Je ne sais pas ce qui me manque. Ce doit être une erreur stupide car je mets en place Mongo pour la première fois. Pls aide.

Quelques informations supplémentaires

  1. Le démon Mongo est en cours d'exécution. Je suis capable de me connecter à mongo de la même machine mais pas de l'autre machine. Le démon est en cours d'exécution:

    $ service mongod status
    mongod start/running, process 31205
    

    et le port est 27017

    $ Sudo netstat -tulpn | grep 27017
    tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN 31205/mongod
    
  2. J'ai changé le bind_ip en 0.0.0.0 (comme suggéré quelque part) et ai redémarré Mongo. Toujours la même erreur est à venir.

  3. Infos distro:

    $ cat /etc/*release
    DISTRIB_ID=Ubuntu
    DISTRIB_RELEASE=14.04
    DISTRIB_CODENAME=trusty
    DISTRIB_DESCRIPTION="Ubuntu 14.04.3 LTS"
    NAME="Ubuntu"
    VERSION="14.04.3 LTS, Trusty Tahr"
    ID=ubuntu
    ID_LIKE=debian
    PRETTY_NAME="Ubuntu 14.04.3 LTS"
    VERSION_ID="14.04"
    
1
Abhishek Gupta

Le problème était bindIp n'a pas changé. Il y avait un problème dans le redémarrage de Mongo de mon côté.

L'habitude devrait être de vérifier si le bindIp a réellement changé ou non. (en utilisant Sudo netstat -tulpn | grep 27017)

Merci steeldriver pour l'avoir signalé.

2
Abhishek Gupta