Centos 7.2 上的防火墙配置
Firewalld Configuration on Centos 7.2
我已经在我的 CentOS 7.2 VPS 上安装了 MongoDB 并尝试通过以下方式访问数据库来自我客户的 Robomongo。但是,当我尝试从 27017 端口连接服务器时,出现“网络无法访问”错误。
我在服务器上启用了 firewalld 并为 27017 端口添加了一个例外。
firewall-cmd --list-all
结果:
我在永久添加异常并通过 --reload 重新加载 firewalld 后得到了这个结果。
当我查询端口时使用:
firewall-cmd --query-port=27017/tcp
我从系统得到一个“是”。但是,当我尝试通过 Robomongo 连接或通过 http://ping.eu/port-chk/ 之类的端口检查器服务查询端口时,我得到了否定结果。
您对我的案例有什么建议吗?
谢谢。
在 VPS 支持团队的帮助下,我通过执行以下步骤解决了问题:
执行,
ss -plnt
查看套接字统计信息。我的输出如下:
从结果可以看出mongod进程正在监听27017端口only on 127.0.0.1。为了配置绑定,编辑 /etc/ 目录中的 mongod.conf 并注释掉行
bindIp: 127.0.0.1
重启mongodb服务,一切正常。
我遇到了同样的问题,但是 运行 mongod 在 Centos 7 Vm 中。
首先我必须用 firewall-cmd 打开 mongodb 端口:
sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent
sudo firewall-cmd --reload
然后我不得不更改 /etc/mongodb.conf 中的网络配置条目
另见:https://docs.mongodb.com/manual/reference/configuration-options/#net-options
我删除了 bindIp: 条目并添加了 bindIpAll: true
net:
port: 27017
bindIpAll: true
使用bindIp:根据文档需要输入:
IP 地址and/or 完整的 Unix 域套接字路径,mongos 和 mongod 应在其上侦听客户端连接。您可以将 mongos 和 mongod 附加到任何接口。要绑定到多个地址,请输入 comma-separated 个值
的列表
默认为:
net:
port: 27017
bindIp: 127.0.0.1
这意味着 mongodb 只监听 localhost
我已经在我的 CentOS 7.2 VPS 上安装了 MongoDB 并尝试通过以下方式访问数据库来自我客户的 Robomongo。但是,当我尝试从 27017 端口连接服务器时,出现“网络无法访问”错误。
我在服务器上启用了 firewalld 并为 27017 端口添加了一个例外。
firewall-cmd --list-all
结果:
我在永久添加异常并通过 --reload 重新加载 firewalld 后得到了这个结果。
当我查询端口时使用:
firewall-cmd --query-port=27017/tcp
我从系统得到一个“是”。但是,当我尝试通过 Robomongo 连接或通过 http://ping.eu/port-chk/ 之类的端口检查器服务查询端口时,我得到了否定结果。
您对我的案例有什么建议吗?
谢谢。
在 VPS 支持团队的帮助下,我通过执行以下步骤解决了问题:
执行,
ss -plnt
查看套接字统计信息。我的输出如下:
从结果可以看出mongod进程正在监听27017端口only on 127.0.0.1。为了配置绑定,编辑 /etc/ 目录中的 mongod.conf 并注释掉行
bindIp: 127.0.0.1
重启mongodb服务,一切正常。
我遇到了同样的问题,但是 运行 mongod 在 Centos 7 Vm 中。
首先我必须用 firewall-cmd 打开 mongodb 端口:
sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent
sudo firewall-cmd --reload
然后我不得不更改 /etc/mongodb.conf 中的网络配置条目 另见:https://docs.mongodb.com/manual/reference/configuration-options/#net-options
我删除了 bindIp: 条目并添加了 bindIpAll: true
net:
port: 27017
bindIpAll: true
使用bindIp:根据文档需要输入:
IP 地址and/or 完整的 Unix 域套接字路径,mongos 和 mongod 应在其上侦听客户端连接。您可以将 mongos 和 mongod 附加到任何接口。要绑定到多个地址,请输入 comma-separated 个值
的列表默认为:
net:
port: 27017
bindIp: 127.0.0.1
这意味着 mongodb 只监听 localhost