Mongodb Centos 7.2上的防火墙配置

Mongodb Centos 7.2上的防火墙配置,mongodb,centos7,robo3t,firewalld,Mongodb,Centos7,Robo3t,Firewalld,我已在我的CentOS 7.2VPS上安装了MongoDB,并试图从我的客户机通过Robomongo访问DB。但是,当我尝试从27017端口连接服务器时,会出现“网络无法访问”错误 我已在服务器上启用了防火墙d,并为27017端口添加了一个异常 firewall-cmd --list-all 结果: 在永久添加了异常并通过--reload重新加载firewalld之后,我得到了这个结果 当我通过以下方式查询端口时: firewall-cmd --query-port=27017/tcp 我

我已在我的CentOS 7.2VPS上安装了MongoDB,并试图从我的客户机通过Robomongo访问DB。但是,当我尝试从27017端口连接服务器时,会出现“网络无法访问”错误

我已在服务器上启用了防火墙d,并为27017端口添加了一个异常

firewall-cmd --list-all
结果:

在永久添加了异常并通过--reload重新加载firewalld之后,我得到了这个结果

当我通过以下方式查询端口时:

firewall-cmd --query-port=27017/tcp
我从系统中得到一个“是”。但是,当我尝试通过Robomongo连接或通过端口检查器服务查询端口时,我得到了一个否定的结果

你对我的案子有什么建议吗


谢谢。

在VPS支持团队的帮助下,我通过执行以下步骤解决了此问题:

执行,

ss -plnt
要查看套接字统计信息。我的输出如下:

从结果可以看出,mongod进程只在127.0.0.1上监听27017端口。为了配置绑定,编辑/etc/目录中的mongod.conf,并注释掉该行

bindIp: 127.0.0.1

重新启动mongodb服务,一切正常。

我也遇到同样的问题,但在Centos 7虚拟机中运行mongod

首先,我必须使用firewall cmd打开mongodb端口:

 sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent

 sudo firewall-cmd --reload
然后我不得不更改/etc/mongodb.conf中的网络配置条目 另见:

我删除了bindIp:Entry并添加了bindIpAll:true

net:
  port: 27017
  bindIpAll: true
使用bindIp:根据需要输入的文档:

mongos和mongod应在其上侦听客户端连接的IP地址和/或完整Unix域套接字路径。您可以将mongos和mongod连接到任何接口。要绑定到多个地址,请输入逗号分隔值列表

默认值为:

net:
  port: 27017
  bindIp: 127.0.0.1

这意味着mongodb只监听本地主机

mongd进程使用的IP是什么?本地地址:127.0.0.1:27017外部地址:0.0.0.0:*对此有何建议?