精华内容
下载资源
问答
  • mongodb允许远程访问
    2020-11-16 23:46:37

    mongodb 远程访问配置(ubuntu)

    1. 新建用户

    # $ 是主机命令行, > 是mongo命令行
    $ mongo
    > db.createUser(
      {
        user: "用户名",
        pwd: "密码",
        roles: [ { role: "readWriteAnyDatabase", db: "admin" } ]
      }
    )
    $ mongod –auth
    $ sudo systemctl restart mongodb
    

    2. 首先修改mongodb的配置文件 让其监听所有外网ip, 如果不行, 连接的时候肯定会有异常

    编辑文件:

    vim /etc/mongodb.conf
    

    修改后的内容如下:

    # 绑定所有ip
    bind_ip = 0.0.0.0
    # 绑定端口
    port = 27017
    # 添加帐号,密码认证
    auth=true 
    

    3. 重启mongodb服务器

    sudo systemctl restart mongodb
    

    重启后远程连接即可

    参考文章:

    更多相关内容
  • mongodb允许远程访问

    万次阅读 2017-04-28 18:49:58
    在本教程中,将展示如何启用远程访问MongoDB服务器。这是测试环境: MongoDB Server 私有IP – 192.168.161.100公共IP – 45.56.65.100MongoDB 2.6.3, port 27017IpTables Firewall Application Server ...

    在本教程中,将展示如何启用远程访问到MongoDB服务器。这是测试环境:

    1. MongoDB Server

      • 私有IP – 192.168.161.100
      • 公共IP – 45.56.65.100
      • MongoDB 2.6.3, port 27017
      • IpTables Firewall
    2. Application Server (Same LAN network)

      • 私有IP – 192.168.161.200
      • 公共IP – irrelevant
    3. Developers at home (Different LAN network, WAN)

      • 公共IP – 10.0.0.1

    1. 绑定IP

    $ vim /etc/mongod.conf
     
    # /etc/mongod.conf
     
    # 只监听本地接口。注释掉听在所有接口。
    bind_ip = 127.0.0.1

    默认情况下,MongoDB绑定到本地接口,它将限制远程连接。如果你不关心安全,只是注释掉接受任何远程连接(不推荐)。

    1.1 从应用服务器允许局域网连接

    因为都是在同一个局域网网络,你只需要将MongoDB绑定到它自己的私有IP接口。

    $ vim /etc/mongod.conf
     
    # /etc/mongod.conf
     
    # 监听本地和局域网接口。
    bind_ip = 127.0.0.1,192.168.161.100

    常见的错误
    不要把应用服务器IP在bind_ip选项。这bind_ip选项告诉MongoDB接受连接本地网络接口,而不是“远程IP地址”。

    默认连接失败

    AS (192.168.161.200) <-- LAN --> MongoDB(192.168.161.100) <--> bind_ip (127.0.0.1)

    现在连接成功

    AS (192.168.161.200) <-- LAN --> MongoDB(192.168.161.100) <--> bind_ip (192.168.161.100, 127.0.0.1)
    1.2 允许开发人员远程访问

    开发人员将通过MongoDB公共IP 45.56.65.100远程访问,允许,将公共IP绑定接口。

    $ vim /etc/mongod.conf
     
    # /etc/mongod.conf
     
    # 监听本地,局域网和公共接口。
    bind_ip = 127.0.0.1,192.168.161.100,45.56.65.100

    提示
    为开发人员在国内,建议建立VPN连接,而不是打开MongoDB公共IP连接,它是容易被攻击的。

    重新启动MongoDB生效。

    $ sudo service mongod restart
    [ ok ] Restarting database: mongod.

    2. IpTables防火墙

    如果你有防火墙,允许在端口27017上的连接,MongoDB缺省端口。

    2.1 Any connections can connect to MongoDB on port 27017
    iptables -A INPUT -p tcp --dport 27017 -j ACCEPT
    2.2 Only certain IP can connect to MongoDB on port 27017
    iptables -A INPUT -s <ip-address> -p tcp --destination-port 27017 -m state --state NEW,ESTABLISHED -j ACCEPT
    iptables -A OUTPUT -d <ip-address> -p tcp --source-port 27017 -m state --state ESTABLISHED -j ACCEPT
     
    iptables -A INPUT -s 192.168.161.200 -p tcp --destination-port 27017 -m state --state NEW,ESTABLISHED -j ACCEPT
    iptables -A OUTPUT -d 192.168.161.200 -p tcp --source-port 27017 -m state --state ESTABLISHED -j ACCEPT

    提示
    查阅MongoDB防火墙文档

    2.3 Here is the firewall rules using in one of my MongoDB servers.
    /etc/iptables.firewall.rules
    *filter
     
    -A INPUT -i lo -j ACCEPT
    -A INPUT -d 127.0.0.0/8 -j REJECT
    -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    -A OUTPUT -j ACCEPT
     
    #  Allow HTTP and HTTPS connections from anywhere
    -A INPUT -p tcp --dport 80 -j ACCEPT
    -A INPUT -p tcp --dport 8080 -j ACCEPT
    -A INPUT -p tcp --dport 27017 -j ACCEPT
     
    #-A INPUT -s <ip address> -p tcp --destination-port 27017 -m state --state NEW,ESTABLISHED -j ACCEPT
    #-A OUTPUT -d <ip address> -p tcp --source-port 27017 -m state --state ESTABLISHED -j ACCEPT
     
    #  Allow SSH connections
    -A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT
     
    #  Allow ping
    -A INPUT -p icmp -j ACCEPT
     
    #  Log iptables denied calls
    -A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7
     
    # Drop incoming connections if IP make more than 15 connection attempts to port 80 within 60 seconds
    -A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --set
    -A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --update --seconds 60  --hitcount 15 -j DROP
     
    #  Drop all other inbound - default deny unless explicitly allowed policy
    -A INPUT -j DROP
    -A FORWARD -j DROP
     
    COMMIT

    更新iptables规则

    sudo vim /etc/iptables.firewall.rules
    sudo iptables-restore < /etc/iptables.firewall.rules

    在本教程中,将展示如何启用远程访问到MongoDB服务器。这是测试环境:

    1. MongoDB Server

      • 私有IP – 192.168.161.100
      • 公共IP – 45.56.65.100
      • MongoDB 2.6.3, port 27017
      • IpTables Firewall
    2. Application Server (Same LAN network)

      • 私有IP – 192.168.161.200
      • 公共IP – irrelevant
    3. Developers at home (Different LAN network, WAN)

      • 公共IP – 10.0.0.1
    展开全文
  • MongoDB允许远程访问

    千次阅读 2020-06-04 14:32:04
    在本教程中,我们将向您展示如何启用对MongoDB服务器的远程访问。 这是经过测试的环境: 1. MongoDB服务器 专用IP – 192.168.161.100 公用IP – 45.56.65.100 MongoDB 2.6.3,端口27017 iptables防火墙 ...

    在本教程中,我们将向您展示如何启用对MongoDB服务器的远程访问。 这是经过测试的环境:

    1. MongoDB服务器

    • 专用IP – 192.168.161.100
    • 公用IP – 45.56.65.100
    • MongoDB 2.6.3,端口27017
    • iptables防火墙

    2.应用服务器(同一局域网)

    • 专用IP – 192.168.161.200
    • 公共IP –不相关

    3.在家中的开发人员(不同的LAN网络,WAN)

    • 公用IP – 10.0.0.1

    PS默认情况下,MongoDB不允许远程连接。

    1.绑定IP

    $ vim /etc/mongod.conf
    
    # /etc/mongod.conf
    
    # Listen to local interface only. Comment out to listen on all interfaces.
    bind_ip = 127.0.0.1

    默认情况下,MongoDB仅绑定到本地接口,它将限制远程连接。 如果您不关心安全性,请注释掉以接受任何远程连接(不推荐)。

    1.1允许来自Application Server的LAN连接。
    由于两者都在同一个LAN网络中,因此您只需要将MongoDB绑定到其自己的私有IP接口即可。

    $ vim /etc/mongod.conf
    
    # /etc/mongod.conf
    
    # Listen to local and LAN interfaces.
    bind_ip = 127.0.0.1,192.168.161.100

    常见的错误
    不要将Application Server IP放在bind_ip选项中。 此bind_ip选项告诉MongoDB接受来自哪个本地网络接口的连接,而不是哪个“远程IP地址”的连接。

    默认-连接失败

    AS (192.168.161.200) <-- LAN --> MongoDB(192.168.161.100) <--> bind_ip (127.0.0.1)

    现在–连接成功

    AS (192.168.161.200) <-- LAN --> MongoDB(192.168.161.100) <--> bind_ip (192.168.161.100, 127.0.0.1)

    1.2允许开发人员在家中进行远程访问。
    开发人员将通过MongoDB公用IP 45.56.65.100进行远程访问,以允许这样做,并绑定公用ip接口。

    $ vim /etc/mongod.conf
    
    # /etc/mongod.conf
    
    # Listen to local, LAN and Public interfaces.
    bind_ip = 127.0.0.1,192.168.161.100,45.56.65.100

    注意
    对于在家的开发人员,建议建立一个VPN连接,而不是打开MongoDB公用IP连接,它容易受到人的攻击。

    重新启动MongoDB,使其生效。

    $ sudo service mongod restart
    [ ok ] Restarting database: mongod.

    2. IpTables防火墙

    如果您有防火墙,请允许端口27017 (MongoDB的默认端口)上的连接。

    2.1任何连接都可以在端口27017上连接到MongoDB

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

    2.2仅某些IP可以在端口27017上连接到MongoDB

    iptables -A INPUT -s <ip-address> -p tcp --destination-port 27017 -m state --state NEW,ESTABLISHED -j ACCEPT
    iptables -A OUTPUT -d <ip-address> -p tcp --source-port 27017 -m state --state ESTABLISHED -j ACCEPT
    
    iptables -A INPUT -s 192.168.161.200 -p tcp --destination-port 27017 -m state --state NEW,ESTABLISHED -j ACCEPT
    iptables -A OUTPUT -d 192.168.161.200 -p tcp --source-port 27017 -m state --state ESTABLISHED -j ACCEPT

    注意
    查阅此MongoDB防火墙文档

    2.3这是我的一台MongoDB服务器中使用的防火墙规则。

    /etc/iptables.firewall.rules
    *filter
    
    -A INPUT -i lo -j ACCEPT
    -A INPUT -d 127.0.0.0/8 -j REJECT
    -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    -A OUTPUT -j ACCEPT
    
    #  Allow HTTP and HTTPS connections from anywhere
    -A INPUT -p tcp --dport 80 -j ACCEPT
    -A INPUT -p tcp --dport 8080 -j ACCEPT
    -A INPUT -p tcp --dport 27017 -j ACCEPT
    
    #-A INPUT -s <ip address> -p tcp --destination-port 27017 -m state --state NEW,ESTABLISHED -j ACCEPT
    #-A OUTPUT -d <ip address> -p tcp --source-port 27017 -m state --state ESTABLISHED -j ACCEPT
    
    #  Allow SSH connections
    -A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT
    
    #  Allow ping
    -A INPUT -p icmp -j ACCEPT
    
    #  Log iptables denied calls
    -A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7
    
    # Drop incoming connections if IP make more than 15 connection attempts to port 80 within 60 seconds
    -A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --set
    -A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --update --seconds 60  --hitcount 15 -j DROP
    
    #  Drop all other inbound - default deny unless explicitly allowed policy
    -A INPUT -j DROP
    -A FORWARD -j DROP
    
    COMMIT

    更新iptables规则

    sudo vim /etc/iptables.firewall.rules
    sudo iptables-restore < /etc/iptables.firewall.rules

    参考文献

    1. MongoDB –配置文件选项
    2. 为MongoDB配置Linux iptables防火墙
    3. Ubuntu:IptablesHowTo
    4. Linode –保护服务器安全

    翻译自: https://mkyong.com/mongodb/mongodb-allow-remote-access/

    展开全文
  • ubuntu16.04 mongodb允许远程访问

    千次阅读 2016-12-07 11:29:10
    介绍如何安全的配置 mongodb 局域网内部远程访问。 测试环境: UBUNTU 16.04 MongoDB Server 私有IP – 192.168.10.60MongoDB shell version: 3.2.11, port 27017 Application Server (Same LAN ...

    介绍如何安全的配置 mongodb 局域网内部远程访问。

    测试环境:

    UBUNTU 16.04

    1. MongoDB Server

      • 私有IP – 192.168.10.60
      • MongoDB shell version: 3.2.11, port 27017
    2. Application Server (Same LAN network)

      • 私有IP – 192.168.10.120

    1. 绑定IP

    $ sudo vim /etc/mongod.conf
    打开配置文件,添加需要增加的 ,不建议采用注释掉  bindIP 的方案,非常容易受到攻击
    
    # network interfaces
    net:
      port: 27017
      bindIp: 127.0.0.1,192.168.10.60,192.168.10.120

    重新启动
    sudo service mongod restart

    2. 配置防火墙

    Ubuntu16.04 桌面版默认没有安装好 ipTable,用如下命令安装
    # apt-get update
    # apt-get upgrade
    # apt-get install iptables-persistent
    安装过程中,弹窗选择YES
    安装完成后:
    sudo iptables -A INPUT -p tcp --dport 27017 -j ACCEPT


    展开全文
  • bin中添加mongodb.conf 文件文件内容dbpath = /usr/local/mongodb/data/db #数据文件存放目录logpath = /usr/local/mongodb/logs/mongodb.log #日志文件存放目录port = 27017 #端口fork = true #以守护程序的方式...
  • 1、首先修改mongodb的配置文件 让其监听所有外网ip 编辑文件:/etc/mongodb.conf 修改后的内容如下: bind_ip = 0.0.0.0 ...#远程连接 /usr/local/mongodb/bin/mongo 127.0.0.1/admin -u username -p password 4、
  • 配置mongodb远程访问

    2021-04-07 16:27:41
    1.首先让mongoDB通过防火墙(简单粗暴就是关闭防火墙,关闭有风险!...然后安装mongoDB服务 (没有config局域网就无法访问) mongod --config D:\Mongo\bin\mongod.cfg--logpath D:\Mongo\log\mongod.l...
  • mongoDB部署服务器并远程访问设置(Windows) 最近正在弄服务器的一个项目,文章正在更新中… 目录mongoDB部署服务器并远程访问设置(Windows)一、MongoDB下载与安装二、MongoDB运行1.启动MongoDB服务2.连接...
  • 开启远程访问(可选)开机自启动 linux环境 MongoDB下载目录:/usr/local MongoDB安装目录:/usr/local/mongodb5 CentOS:7.8 MongoDB版本:5.0.5 安装MongeDB wget下载资源 按照当前环境,在官网选择合适的...
  • mongod -f /data/mongod.cfg & ##测试服务启动成功显示(It looks like you are trying to access MongoDB over HTTP on the native driver port.) curl 172.16.0.17:27017 连接mogodb服务 mongo 172.16.0.17:27017...
  • 由于使用宝塔面板来配置MongoDB的BUG太多,实在受不了,今天心血来潮想要使用Docker容器来进行部署。本来以为也就二三十分钟的事情结果踩坑踩了将近两个小时,不过万幸还是成功部署上了如果有没弄清楚的地方欢迎大家...
  • An earlier version of this tutorial was written by Melissa Anderson. 本教程的早期版本由Melissa Anderson编写。...MongoDB, also known as Mongo, is an open-source document database used commonly ...
  • 1. 安装mongodb下找到配置文件mongod.cfg net: port: 27017 bindIp: 127.0.0.1 // 改成 net: port: 27017 bindIp: 0.0.0.0 2. 找到mongod.exe所在的路径,执行命令 mongod.exe --config "f:\mongo\...
  • MongoDB数据库远程配置详解

    千次阅读 多人点赞 2022-04-07 12:21:15
    文章目录一,MongoDB数据库远程配置详解二,问题三,服务器配置四,放行端口五,外网连接六,mongodb操作注意 一,MongoDB数据库远程配置详解 MongoDB是一个相当好有数据库哈。MongoDB则是非关系型数据库,也叫文档...
  • 文章目录开启远程访问创建一个新用户创建用户查看和删除用户远程连接参考资料 开启远程访问 在/etc文件夹下。 修改 mongodb.conf 这一配置文件。将 bind_ip 这一字段修改为0.0.0.0,这样就可以在任意 IP 进行访问。...
  • MongoDB开启远程连接

    2021-02-22 10:55:48
    “123456”),返回1 代表成功,0失败 ,第四步再做一遍 db.createUser({user:"root",pwd:"root",roles:[{role:"root",db:"admin"}]}) db.auth("admin","123456") 三 重启服务 管理员运行 重启MongoDB服务 ...
  • 如何远程访问mongodb数据库

    万次阅读 2015-08-19 18:18:21
    项目数据库由之前的mysql改成了mongodb,由于经常不在公司,就必须能够远程访问mongdb数据库,于是在网上查了一些资料,在这里整理记录下来 1、安装mongodb 2、安装成功后,进入bin目录 3、mongo 远程IP地址/端口号 ...
  • vim /etc/yum.repos.d/mongodb-org-4.2.repo [mongodb-org-4.2] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86_64/ gpgcheck=1 enabled=1 gpgkey=...
  • 【代码】centos7设置mongodb远程连接(亲测)
  • windows2008服务器搭建mongodb并设置远程访问1、下载 安装 配置 mongodb创建数据目录连接MongoDB配置 MongoDB 服务安装 MongoDB服务启动MongoDB服务关闭MongoDB服务移除 MongoDB 服务MongoDB 后台管理 Shell2、配置...
  • centos7安装配置mongodb远程访问

    千次阅读 2019-06-06 22:32:35
    下载安装包 wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.1.tgz 解压 tar -zxvf mongodb-linux-...mv mongodb-linux-x86_64-4.0.1 mongodb 创建文件data用来存放数据库、logs用来存放日志 c...
  • 最近因为项目原因需要在阿里云服务器上部署mongodb,网上查阅了一些资料,特此记录一下步骤 1.运行apt-get install mongodb命令安装mongodb服务(如果提示找不到该package,说明apt-get的资源库版本比较旧,运行apt...
  • 一些工作总结,最近在做关于...MongoDB 安装与 Mongo Compass安装MongoDB 远程访问配置针对服务器开放指定访问端口一、MongoDB 的安装与Mongo Compass安装安装和部署的环境都是在windows环境下进行的。首先从 Mong...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 10,543
精华内容 4,217
关键字:

mongodb允许远程访问