无法从本地系统连接到运行在VM(虚拟机)中的mongodb



我创建了一个AWS EC2 (ubuntu-20.04)实例,并按照https://www.mongodb.com/docs/v4.4/tutorial/install-mongodb-on-ubuntu/设置了一个mongo服务器

(mongo服务器运行在默认端口27017,没有任何用户名/密码保护)

我能够从VM内连接到它(通过SSH连接到VM后),通过运行终端命令:

mongo

我已经配置了EC2实例的安全组的入站规则,以便从本地系统的IP访问端口27017。

但是,当我试图从本地系统的终端通过命令连接到它时:

mongo --host "<public_ip_of_vm>:27017"

抛出错误:

连接:mongodb://& lt; public_ip_of_vm> 27017/?压缩机= disabled& gssapiServiceName = mongodb错误:无法连接到服务器:27017,连接尝试SocketException: Error connecting to:27017:: cause连接被拒绝:connect@src/mongo/shell/mongo.js:374:17@(连接):2:6异常:连接失败退出代码1

不确定是什么原因导致这个问题,我也检查了ufw规则。端口27017已打开。

你修改了吗?

/etc/mongod.conf

看看这个教程,尤其是第2步。也许这有帮助https://ianlondon.github.io/blog/mongodb-auth/

连接被拒绝意味着您可能没有防火墙问题。连接超时说明防火墙有问题。

由于您可以通过本地主机进行本地连接,因此该错误指示mongo进程仅在本地主机上侦听。

编辑文件/etc/mogod.conf。有趣的一行是bindIp.

对于IPv4应该是这样的:

bindIp: 0.0.0.0

如果您启用了IPv6

bindIp: ::,0.0.0.0

:先启用鉴权。你可能被黑的速度比你想象的要快。

最新更新