Ubuntu mongodb连接在服务器端是可以的,但无法远程访问

时间:2014-08-28 21:29:22

标签: java mongodb ubuntu firewall iptables

尝试获取mongo消息:

  

看起来您正尝试通过HTTP访问本机上的MongoDB   司机口。

所以我用mongodb设置我的服务器,一切看起来都不错。当我从服务器执行以下 时,它可以正常工作(即,我收到上述消息):

1. http://localhost:27017
2. http://xxx.xxx.xx.110:27017

但是当尝试从任何客户端执行此操作时 - 它不起作用(请注意http://xxx.xxx.xx.110可以正常运行apache)。

我在mongo.conf上的内容:

  

port = 27017

     

bind_ip = 0.0.0.0

     

#auth = true

my firewall.rules:

# Generated by iptables-save v1.4.21 on Thu Aug 28 16:37:08 2014
*filter
:INPUT ACCEPT [4102:2709470]
 :FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [2893:394270]
:ufw-after-forward - [0:0]
:ufw-after-input - [0:0]
:ufw-after-logging-forward - [0:0]
:ufw-after-logging-input - [0:0]
:ufw-after-logging-output - [0:0]
:ufw-after-output - [0:0]
:ufw-before-forward - [0:0]
:ufw-before-input - [0:0]
:ufw-before-logging-forward - [0:0]
:ufw-before-logging-input - [0:0]
:ufw-before-logging-output - [0:0]
:ufw-before-output - [0:0]
:ufw-reject-forward - [0:0]
 :ufw-reject-input - [0:0]
:ufw-reject-output - [0:0]
:ufw-track-forward - [0:0]
:ufw-track-input - [0:0]
:ufw-track-output - [0:0]
-A INPUT -p tcp -m state --state NEW,ESTABLISHED -m tcp --dport 27017 -j ACCEPT
-A INPUT -p tcp -m state --state NEW,ESTABLISHED -m tcp --dport 27017 -j ACCEPT
-A INPUT -j ufw-before-logging-input
-A INPUT -j ufw-before-input
-A INPUT -j ufw-after-input
-A INPUT -j ufw-after-logging-input
-A INPUT -j ufw-reject-input
-A INPUT -j ufw-track-input
-A FORWARD -j ufw-before-logging-forward
-A FORWARD -j ufw-before-forward
-A FORWARD -j ufw-after-forward
-A FORWARD -j ufw-after-logging-forward
-A FORWARD -j ufw-reject-forward
-A FORWARD -j ufw-track-forward
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -j ufw-before-logging-output
-A OUTPUT -j ufw-before-output
-A OUTPUT -j ufw-after-output
-A OUTPUT -j ufw-after-logging-output
-A OUTPUT -j ufw-reject-output
-A OUTPUT -j ufw-track-output
COMMIT
# Completed on Thu Aug 28 16:37:08 2014

我添加了一个小的java程序来测试服务器 - 它的工作原理(CRUD)。当我从另一台计算机上尝试时,我得到:

Aug 29, 2014 9:58:23 AM com.mongodb.DBTCPConnector initDirectConnection
WARNING: Exception executing isMaster command on /xxx.xxx.xx.xxx:27017
java.io.IOException: couldn't connect to [/xxx.xxx.xx.xxx:27017]          bc:java.net.SocketTimeoutException: connect timed out
at com.mongodb.DBPort._open(DBPort.java:214)
at com.mongodb.DBPort.go(DBPort.java:107)

1 个答案:

答案 0 :(得分:0)

我通过使用--httpinterface
来启动mongod来实现它 enter image description here