我想configurationmongodb来允许来自66.31.123.123
类的外部IP地址的远程连接。
将0.0.0.0
设置为bind_ip
工作,但我想更限制,只允许某些IP地址连接。 我将66.31.123.123
附加到bind_ip
列表,但mongodb在下面引发一个错误:
mongodb.conf
bind_ip = 127.0.0.1,66.31.123.123 port = 27017 auth = true
mongodb日志
Mon Dec 9 03:25:59 [initandlisten] ERROR: listen(): bind() failed errno:99 Cannot assign requested address for socket: 66.31.123.123:27017
问题:为什么添加一个外部IP不工作? 如果使用auth=true
,那么它是否足以安全地使用0.0.0.0
作为bind_ip
? mongodb将从Meteor.js应用程序本地访问。
正如guido所说,bind_ip是mongo服务器自己的IP地址。
身份验证是一个好主意,但只依靠身份验证打开你的暴力攻击。
您可以bind_ip = 0.0.0.0
并使用防火墙阻止所有传入连接到端口27017,除非来自66.31.123.123。
另一个问题是你的流星服务器与你的mongo服务器的距离是多少?是在私人网络上还是在公共网络上。 如果在公共场合,你应该重新编译mongodb来支持SSL ,或者你应该通过SSH隧道你的mongodb连接 。
如果你决定隧道,bind_ip到127.0.0.1,并离开传入27017。