web-dev-qa-db-ja.com

リモートサーバー上のmongoに接続できません

ローカルネットワークのmachine1(Ubuntu 14.04.3 LTS server)にmongoをインストールしました。また、次のコマンドを使用して this ガイドで説明したように、ポート27017を開きました。

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

現在のルールは(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

しかし、(同じネットワーク内の)machine2からこのポートに接続することはできません。

$ 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

ポートが開いているかどうかも確認してみました:

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

何が欠けているのかわかりません。私は初めてmongoをセットアップするので、いくつかのばかげた間違いに違いありません。 Plsヘルプ。

詳細情報

  1. Mongoデーモンが実行されています。同じマシンからmongoに接続できますが、他のマシンからは接続できません。デーモンが実行されています:

    $ service mongod status
    mongod start/running, process 31205
    

    ポートは27017です

    $ Sudo netstat -tulpn | grep 27017
    tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN 31205/mongod
    
  2. bind_ip0.0.0.0に変更し(どこかで提案したとおり)、mongoを再起動しました。それでも同じエラーが発生します。

  3. ディストリビューション情報:

    $ 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

問題はbindIpでした。私の側からmongoを再起動する際に問題がありました。

習慣は、bindIpが実際に変更されたかどうかを確認することです。 (Sudo netstat -tulpn | grep 27017を使用)

指摘してくれたsteeldriverに感謝します。

2
Abhishek Gupta