阿里云ECS服务器环境搭建(4) —— ubuntu 16.04下 mongodb无法从公网进行远程连接

阿里云ECS服务器环境搭建(4) —— ubuntu 16.04下 mongodb无法从公网进行远程连接

1. 背景

  • 在阿里云ECS服务器上安装完 mongodb之后,如果想从外网(公网上的任何电脑),进行远程连接,都是连接不上的。
  • 因为我们不可能完全在阿里云服务器上进行操作,而不进行数据通信。所以,如果无法解决远程连接的问题,蛋会很疼。
    阿里云ECS服务器环境搭建(4) —— ubuntu 16.04下 mongodb无法从公网进行远程连接_第1张图片

2. 环境

  • 阿里云 ECS服务器 (4核 8G 4M)
  • Ubuntu16.04-64-bit 图形界面
  • MongoDB v3.6.5

3. 尝试方法

3.1. 修改mongodb的配置文件 /etc/mongod.conf,绑定到任何ip上

  • 启动mongodb,使用如下命令查看,端口绑定情况
# 启动mongodb
service mongod start
# 查看网络端口情况,发现mongodb服务绑定中本地ip上: 127.0.0.1:27017
netstat -tunlp

阿里云ECS服务器环境搭建(4) —— ubuntu 16.04下 mongodb无法从公网进行远程连接_第2张图片

# 打开mongodb配置文件
gedit /etc/mongod.conf

# 修改配置文件:绑定到任何IP上
bind_ip = 0.0.0.0
# 关闭认证
auth = false

阿里云ECS服务器环境搭建(4) —— ubuntu 16.04下 mongodb无法从公网进行远程连接_第3张图片

# 重启mongodb
service mongod stop
service mongod start
# 查看网络端口情况,发现mongodb服务已经绑定在任意ip上了: 0.0.0.0:27017
netstat -tunlp

阿里云ECS服务器环境搭建(4) —— ubuntu 16.04下 mongodb无法从公网进行远程连接_第4张图片

  • 结果:修改完之后,还是无法远程连接上。 但是这确实是很有必要的一步!

3.2. ECS Linux云服务器中安装rinetd进行转发实现

  • 这一步是参考阿里云的官方文档进行操作的,阿里云给出的解释是:目前云数据库MongoDB是需要通过ECS的内网进行连接访问,如果您本地需要通过公网访问云数据库MongoDB,可以在ECS Linux云服务器中安装rinetd进行转发实现。。但是依然无法远程连接上。
  • 链接地址:https://help.aliyun.com/document_detail/54553.html
  • 结论:这一步完全不需要做,应用场景不同。

3.3. 修改ECS 云服务器安全组规则,对外开放 27017 端口

  • 按下图所示
    阿里云ECS服务器环境搭建(4) —— ubuntu 16.04下 mongodb无法从公网进行远程连接_第5张图片
    阿里云ECS服务器环境搭建(4) —— ubuntu 16.04下 mongodb无法从公网进行远程连接_第6张图片

  • 完成这一步之后,就可以通过终端或者NoSQLBooster这样的可视化工具进行连接和操作了。

4. 结果

  • 完成上一步之后,就可以在本地windows端,通过下面两种方式进行连接了。
    阿里云ECS服务器环境搭建(4) —— ubuntu 16.04下 mongodb无法从公网进行远程连接_第7张图片
  • 需要注意的是下面这种通过工具 NoSQLBooster 的连接方式,需要和mongodb数据库的版本一致。后来是安装了最新版本,才连接上的。
    阿里云ECS服务器环境搭建(4) —— ubuntu 16.04下 mongodb无法从公网进行远程连接_第8张图片

你可能感兴趣的:(阿里云服务器环境搭建)