Robo 3T使用ssh连接到mongodb

时间:2017-11-20 08:26:36

标签: mongodb ssh

我已设置mongodb仅在127.0.0.1上收听27017。我需要保持这种方式以保护我的数据库安全。虽然我需要能够使用Robo 3T远程连接到mongodb。有没有办法使用ssh连接连接到使用我的ssh凭证连接到localhost listen mongodb?

P.S。我有点像mongoDB的初学者。提前谢谢......

2 个答案:

答案 0 :(得分:0)

是的,您可以使用SSH隧道。

转到:MongoDB Connections (Ctrl + N)> Create / Edit> SSH标签

答案 1 :(得分:0)

为了在Robo 3T GUI上成功远程连接MongoDB,我在Ubuntu 18 Vagrant盒上做了一些配置。我已经按照以下步骤进行了说明。

  1. 在Ubuntu服务器上,打开mongo shell运行:
    $ mongo
    
  2. 在mongo shell中,键入以下命令以创建新的admin用户。

    > use admin;
    > db.createUser({user:"admin", pwd:"password", roles:[{ role: "root", db: "admin" }]});
    
  3. 默认情况下,将mongodb配置为仅允许来自localhost(IP 127.0.0.1)的连接。我们需要允许来自任何IP地址的远程连接。以下更改仅应在开发服务器中进行。打开 etc / mongod.conf 文件并进行以下更改。

    # network interfaces
        net:
            port: 27017
            bindIp: 0.0.0.0   #default value is 127.0.0.1
    

    还使用相同的 mongod.conf 文件取消注释安全性选项,并添加 authorization 选项,如下所示。

    security:
        authorization: enabled
    
  4. 保存并退出 mongod.conf 文件,然后重新启动mongodb服务器。

    $ sudo servcie mongod restart
    
  5. 下载并安装Robo 3T GUI工具。

  6. 在Robo 3T GUI的连接设置中,您需要进行一些更改,如下所示: 屏幕截图下方。

enter image description here

输入您之前创建的mongodb admin 数据库用户名和密码。

enter image description here

在这里,我已经输入了Ubuntu 18 Vagrant box ssh凭证。

enter image description here

保存更改,然后按 connect 图标,查看连接是否正常。