2017年下半年新发布的MongoDB 3.6版本在安全性上做了很大提升,主要归结为两点:

1.将将bind_ip 默认值修改为了localhost;

2. 在db.createUser()和 db.updateUser()中添加了authenticationRestrictions 参数,可以用来控制Client端发来的请求源IP以及请求的Server端指定IP。

以下说明和测试主要是针对第一点。

以前的版本默认Mongo服务启动后,使用Server IP 可以直接登入,但是3.6 已将服务启动bind_ip的默认值限定为localhost。

因此,即使在Local Server使用ServerIP登入也会报错。

<图1>

只能使用localhost登入

<图2>

修改方式,修改conf 配置文件,调整bind_ip参数,将本地IP赋予此参数。赋予后使用Server IP登入可以,但此时使用localhost 失败。为了同时兼容2种登入方式,将参数的赋值调整为:

bind_ip=localhost,172.XXX.XXX.XXX

中间使用登号隔开。

<图3>验证说明采用上述参数配置后2种登入方式都可以。

<图3>

说明:(1) 如果不想做IP限制,可以将bind_ip 赋值为0.0.0.0 或者 在配置文件中启用另外一个参数bind_ip_all,将其设置为true。

以上两种设置都可以满足localhost登入和指定ServerIP登入。 当指定bind_ip_all参数时,配置文件中可以没有bind_ip参数。

(2)登入默认的数据库不同。在3.6 版本,默认的连接数据库变成了test,而3.4/3.2 版本默认是admin库。所以,在设置具有root权限的管理员账号时,请先转至admin下操作(因为账号的查询,系统只有在admin才可以查询,所以root权限的账号,建议在admin库创建,用户数据库的账号,转到用户数据库下创建)。账号的删除一定要在归属库下删除。

MongoDB 3.6版本关于bind_ip设置的更多相关文章

  1. l5如何通过路由走api版本回退查找设置

    l5如何通过路由走api版本回退查找设置 具体需求 当前遇到的问题是使用laravel写接口,但是接口是有版本号的,我们把版本号放在url中,比如: http://yejianfeng.com/api ...

  2. MongoDB在Linux下常用优化设置

    MongoDB在Linux下常用优化设置 以下是一些MongoDB推荐的常用优化设置.在生产环境下选取合适的参数值,例如预读值和默认文件描述符数目等,会对系统性能有很大的影响. 1.关闭数据库文件的 ...

  3. Linux Ubuntu系统版本通过Crontab设置定时任务的执行

    Linux Ubuntu系统版本通过Crontab设置定时任务的执行 本文由本人收集网络信息总结而来 特别鸣谢:https://linux.zone/2258 1 crontab 简单介绍以及语法使用 ...

  4. MongoDB数据库用户名和密码的设置

    首先是对MongoDB用户和权限的设置,如果不设置用户的话,直接使用mongo命令就可以进入客户端shell界面进行操作了,但是如果没有设置用户的话,总感觉少了点什么,于是经过半天的查找和实践,差不多 ...

  5. mongodb 3.0 版本分片部署步骤

    # linux 网络优化 1. 文件中/etc/sysctl.conf, 加入 net.core.somaxconn = 2048 fs.file-max = 2000000 fs.nr_open = ...

  6. spring集成mongodb jar包版本问题

    在开发过程中,spring集成mongodb的jar包. 如果需要使用排序功能. spring-data-mongodb-1.4.1.RELEASE.jar 的版本为1.4.1,如果使用如下代码: Q ...

  7. Linux 安装多个版本JDK并设置默认版本

    1 官网下载JDK版本 jdk-8u181-linux-x64.tar.gz 2 利用ssh工具上传安装包到Linux系统 传至:/usr/local 3 Linux用户安装的程序一般放在 /usr/ ...

  8. c# 设置IE浏览器版本运行程序-设置webBrowser对应的IE内核版本来运行

    //通常情况下,我们直接调用C#的webBrowser控件,默认的浏览器内核是IE7.  那么如何修改控件调用的默认浏览器版本呢?using System; using System.Collecti ...

  9. MongoDB中WiredTiger的数据可用性设置

    此文已由作者温正湖授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. MongoDB中WiredTiger的参数配置主要通过 wiredtiger_open (http://so ...

随机推荐

  1. [Swift]LeetCode399. 除法求值 | Evaluate Division

    Equations are given in the format A / B = k, where A and B are variables represented as strings, and ...

  2. [Swift]LeetCode862. 和至少为 K 的最短子数组 | Shortest Subarray with Sum at Least K

    Return the length of the shortest, non-empty, contiguous subarray of A with sum at least K. If there ...

  3. [Swift]LeetCode947. 移除最多的同行或同列石头 | Most Stones Removed with Same Row or Column

    On a 2D plane, we place stones at some integer coordinate points.  Each coordinate point may have at ...

  4. python之zipfile

    1 简述 zip文件是一个常用的归档和与压缩标准. zipfile模块提供了创建.读取.写入.添加及列出zip文件的工具. zipfile里有2个非常常用的class,分别是Zipfile和ZipIn ...

  5. VIVO 手机重力传感器踩坑记录

    手上的 vivo-x9 手机传感器模式下的旋转效果有误,经查发现是 Gravity sensor 返回的数据有误,和其他机型返回的数据相反的. 参考 Gravity 的说明: A three dime ...

  6. 优化之Normalizer组件

    Normalizer会产生记录,尽可能的将Normalizer组件靠近Target ---------------------------------------------------------- ...

  7. 【Spark篇】---Spark解决数据倾斜问题

    一.前述 数据倾斜问题是大数据中的头号问题,所以解决数据清洗尤为重要,本文只针对几个常见的应用场景做些分析 . 二.具体方法  1.使用Hive ETL预处理数据 方案适用场景: 如果导致数据倾斜的是 ...

  8. java代码之美(4)---guava之Immutable(不可变)集合

    Immutable(不可变)集合 一.概述 guava是google的一个库,弥补了java语言的很多方面的不足,很多在java8中已有实现,暂时不展开.Collections是jdk提供的一个工具类 ...

  9. 【c#】RabbitMQ学习文档(六)RPC(远程调用)

    远程过程调用(Remote Proceddure call[RPC]) (本实例都是使用的Net的客户端,使用C#编写) 在第二个教程中,我们学习了如何使用工作队列在多个工作实例之间分配耗时的任务. ...

  10. 完美数据迁移-MongoDB Stream的应用

    目录 一.背景介绍 二.常见方案 1. 停机迁移 2. 业务双写 3. 增量迁移 三.Change Stream 介绍 监听的目标 变更事件 四.实现增量迁移 五.后续优化 小结 附参考文档 一.背景 ...