美文网首页
阿里云ECS服务器配置MongoDB外网访问

阿里云ECS服务器配置MongoDB外网访问

作者: lvxiaoluo | 来源:发表于2020-05-31 22:43 被阅读0次

阿里云ECS服务器配置MongoDB外网访问

此处配置ECS服务器允许外网,即此处本地Mac,去远程连接(位于阿里云ECS服务器中的)MongoDB

1.登录ECS服务器 配置阿里云安全组

mongdb 安全组规则

2.放开MongoDB端口

iptables -A INPUT -p tcp --dport 27017 -j ACCEPT

3. 配置MongoDB 允许远程链接

mongodb.conf 配置

net:
  bindIp: 0.0.0.0

注:在设置外网所有IP都能访问之前,要设置用户名和密码,保证安全!!!

笔者配置完后,由于ECS服务器配置了nginx做代理,导致依旧无法访问MongoDB,于是需要对nginx做改变!

由于笔者Nginx主要是提供了http相关的代理配置,mongodb需要tcp,故需要在nginx.conf中添加tcp的配置

stream {
    server {
        listen  <your incoming Mongo TCP port>;
        proxy_connect_timeout 1s;
        proxy_timeout 3s;
        proxy_pass    mongodb;
    }

    upstream mongodb {
      server <localhost:your local Mongo TCP port>;
  }
}

如出现stream无法配置,无法启动nginx ,例如出现如下错误:unknown directive “stream” in /usr/local/nginx
可能是nginx默认安装的时候无法加载流stream模块,需要在启动参数里加上–with-stream。
解决方法: 重新对源文件进行编译、安装,通过添加–with-stream参数指定安装stream模块。

> ./configure --with-stream 
> make & make install1

再次检查nginx.conf配置文件,确认配置无语法错误后,再次尝试启动服务。即可成功!

相关文章

网友评论

      本文标题:阿里云ECS服务器配置MongoDB外网访问

      本文链接:https://www.haomeiwen.com/subject/stcrzhtx.html