在Ubuntu上开启MongoDB的IP Security
本文翻译之MongoDB官网博客,原地址:https://www.mongodb.com/blog/post/enabling-ip-security-for-mongodb-36-on-ubuntu
MongoDB3.6的默认配置会拒绝未授权的链接对公共网络的访问,从而保护数据收到外部威胁。MongoDB只会监听本地链接,除非添加规则允许监听其他地址。
本教程会简明的展示如何允许外部IP地址连接MongoDB节点,并保证联网服务器可以连接到你的数据库。通过本教程,你会发现配置MongoDB监听具体的网络端口是很容易的一件事情。
看本教程前,你需要:
l 安装MongoDB3.6
l 服务器上有多个网络接口(本例会使用AWS EC2实例)
l 了解IP网络的基本知识,会配置私有IP
我启动了安装有 Ubuntu 16.04 LTS的一台AWS EC2的实例,并且安装了MongoDB3.6
我想允许我的部分VPC IP地址连接到我们的MongoDB数据库。通过这种方式,可以保证只有我们的指定IP以及本机才能连接到数据库,而其他陌生地址禁止访问数据库。
首先启动VPC公共子网中的Ubuntu实例。
根据MongoDB官网文档安装mongodb3.6,通过以下命令可以查看进程占用了那个网络端口:
ubuntu@ip-172-16-0-211:~$ sudo netstat -plant | egrep mongod
tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN 2549/mongod
命令结果输出显示用户只允许通过本机的27017端口进行访问,如果想其他系统访问数据库,就需要进行IP绑定。运行ifconfig命令
ubuntu@ip-172-16-0-211:~$ ifconfig
eth0 Link encap:Ethernet HWaddr 0e:5e:76:83:49:3e
inet addr:172.16.0.211 Bcast:172.16.0.255 Mask:255.255.255.0
inet6 addr: fe80::c5e:76ff:fe83:493e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:9001 Metric:1
RX packets:65521 errors:0 dropped:0 overruns:0 frame:0
TX packets:7358 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:94354063 (94.3 MB) TX bytes:611646 (611.6 KB)
现在我们知道了我们想要监听的网络地址,打开/etc/mongodb.conf文件,进行编辑,文件修改后如下:
# network interfaces
net:
port: 27017
bindIp: 127.0.0.1,172.16.0.211
现在文件中就添加了一个IP地址172.16.0.211, 重启mongod服务。
ubuntu@ip-172-16-0-211:~$ sudo service mongod stop
ubuntu@ip-172-16-0-211:~$ sudo service mongod start
ubuntu@ip-172-16-0-211:~$ sudo netstat -plnt | egrep mongod
tcp 0 0 172.16.0.211:27017 0.0.0.0:* LISTEN 2892/mongod
tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN 2892/mongod
可以看到现在除了本机,数据库还可以接受指定的IP的请求。
通过本机连接:
ubuntu@ip-172-16-0-211:~$ mongo localhost
MongoDB shell version v3.6.0-rc2
connecting to: mongodb://127.0.0.1:27017/localhost
通过指定IP连接
ubuntu@ip-172-16-0-211:~$ mongo 172.16.0.211
MongoDB shell version v3.6.0-rc2
connecting to: mongodb://172.16.0.211:27017/test
默认的本机配置是有很多好处的,但是现在就需要明确指定那些网络可以连接数据库,防止不信任的网络连接到系统。保证MongoDB系统不受远程攻击是非常重要的,确保只有在安全清单上的IP才能连接到系统。
你就知道了如何为系统配置其他IP地址以访问数据库,现在就可以为你的复制集进行配置了。不要忘记做备份、监控。如果你不想在这些工作上消耗太多精力,可以了解一下我们的数据库即服务:MongoDB Atlas。
在Ubuntu上开启MongoDB的IP Security的更多相关文章
- Ubuntu上安装MongoDB(译)
add by zhj:直接从第四步开始就可以了,而且安装好MongoDB后会自动启动的,不必自己去执行启动命令 原文:https://docs.mongodb.com/manual/tutorial/ ...
- 在 Ubuntu 上安装 MongoDB
在 Ubuntu 上安装 MongoDB 运行下列命令,导入 MongoDB 公开 GPG 键: sudo apt-key adv --keyserver hkp://keyserver.ubuntu ...
- Ubuntu上开启Apache Rewrite功能的方法
Ubuntu上开启Apache Rewrite功能的方法 本文介绍ubuntn系统中开启apache的urlrewrite功能的方法. 在Windows上开启Apache的urlRewrite非常简单 ...
- 如何在 Ubuntu 上安装 MongoDB
MongoDB 是一个越来越流行的自由开源的 NoSQL 数据库,它将数据存储在类似 JSON 的灵活文档集中,这与 SQL 数据库中常见的表格形式形成对比. 你很可能发现在现代 Web 应用中使用 ...
- Ubuntu 上安装 MongoDB
官方安装文档:https://docs.mongodb.com/manual/installation/ 安装环境: mongodb-linux-x86_64-ubuntu1404-3.2.6.tgz ...
- 如何在Ubuntu上开启SSH服务
更新源列表 打开"终端窗口",输入"sudo apt-get update"-->回车-->"输入当前登录用户的管理员密码"-- ...
- Ubuntu 上配置静态的ip
先关掉或卸掉 network-manager.然后,改动/etc/network/interfaces 如下:(由于是静态ip,你当然知道把例子中那些东西改成你自己的)auto lo eth0ifac ...
- ubuntu上mongodb的安装
Ubuntu上安装MongoDB的完全步骤以及注意事项 本文我们详细介绍了Ubuntu上安装MongoDB的全部过程,希望本次的介绍能够对您有所帮助. AD: 2013大数据全球技术峰会课程PPT下载 ...
- Ubuntu 12.04上安装 MongoDB并运行
Ubuntu 12.04上安装 MongoDB并运行 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 在Terminal输入 sudo apt-key ...
随机推荐
- 数组list操作,切片
a=range(10) a[11:0:-1] #倒序输出 a[0:9:2] #输出2,4,6,8 a[-3:] #输出7,8,9 a.append(11) #追加一个元素 a.count(11) #统 ...
- 海量数据处理面试题(1) 找出两文件种包含的相同的url
问题:给定a.b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a.b文件共同的url? 分析:50亿个url,每个url64字节,就是320G,显然是无法一次读入内存 ...
- Asp.Net MVC Identity 2.2.1 使用技巧(八)
一.添加管理链接 在View/Shared/_layout.cshtml,在页面导航上(28行)添加如下代码: @*通过身份验证并确认用户属于Admin角色显示管理菜单*@ @if (Request. ...
- 最新php环境搭建,2017年最新PHP环境搭建
使用PHPWAMP8.8.8.8IN纯绿色集成环境搭建php网站很方便,哪怕你系统没安装vc.系统dll丢失或者损坏的时候,phpwamp也可以正常启动,是个很强大的php套件. php环境搭建,支持 ...
- ZT 线程的分离状态 2012-08-16 17:00:59
线程的分离状态 2012-08-16 17:00:59 分类: LINUX 其实在写上一篇日志的时候,由于我把创建线程的返回值的判断条件写错了,程序每次运行的时候都是显示创建线程失败,我就百度了一下, ...
- 死磕salt系列-salt 故障汇总
这里将salt使用过程中遇到的所有的故障进行一个汇总. grains 匹配后多了一个列表 salt-master中配置jinja模板来匹配自定义的grins. vim /etc/salt/minion ...
- 【[NOI2005]瑰丽华尔兹】
非常无脑和码农的单调队列优化\(dp\) 我们发现一个时间段内移动的情况是一样的,而时间段的数目又非常少,所以可以直接按照时间段来进行\(dp\) 由于每一次\(dp\)的移动距离都是小于等于某一个固 ...
- HDU 4652 Dice
嘟嘟嘟 题目大意就是对于一个m面的骰子,回答这么两个问题: 1.求连续扔n次都是同一数字的期望次数. 2.求连续扔n次每一次数字都不相同的期望次数. 对于期望dp特别菜的我来说,这道题已经算是很难了. ...
- HDU 2544最短路 (迪杰斯特拉算法)
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=2544 最短路 Time Limit: 5000/1000 MS (Java/Others) Me ...
- DataFrame查找
一 通过索引取数据 (ix/loc/iloc) loc (根据索引名称取数据 , 适合多列) iloc (根据索引序号取数据, 适合多列) at (和loc类似,只用于取单列, 性能更好) ia ...