当前位置:数据库 > mongodb >>

Mongodb应用实战教程:windows下安装与安全策略配置

Mongodb应用实战教程:windows下安装与安全策略配置

一、Mongodb的安装
  首先引用网上很流行的一个mongodb教程——《8天学通MongoDB》。这是我入门看的第一个教程。觉得写得很不错。看完以后对mongo就会有个较为深入的了解。可是想把mongo应用到实战环境,恐怕还是需要一些工作。写这个教程就是记录我把mongo引入生产环境需要解决的一些问题。

  要使用mongodb首先肯定是要安装。在windows环境下安装非常方便。MongoDB官方的下载地址为:http://www.mongodb.org/downloads。
mongodb下载地址
  下载以后解压到需要的目录。我解压的位置是:D:\WebServer\mongodb。在mongo的根目录建立data文件夹,用来存放数据文件。

  在测试环境下,可以直接用命令行启动。但是在生产环境中,为了保证服务的正常,最好把mongodb安装成服务。可以随windows开机启动。把mongodb安装成服务只要在命令行下输入:
[plain] 

mongod --install --logpath=d:\WebServer\mongodb\log --auth --bind_ip 127.0.0.1 --port 27017 --dbpath=d:\WebServer\mongodb\data 

  安装好的服务可以在windows控制面板 - 管理工具 - 服务中看到。

  点击启动开启它,以后mongodb就会作为服务随系统一起自动启动。而且每次启动的参数都是以刚刚输入的命令为准。命令行的参数具体含义是:
[plain] 

--dbpath 表示数据存储位置 
--auth 表示开启用户认证(默认未开启) 
--install 表示把mongo安装成服务 
--logpath 表示mongo日志目录(开启服务必须开启) 
--bind_ip 表示绑定的IP 
--port 表示绑定的端口 

二、Mongodb的安全策略和配置
  很多mysql的用户,刚转到mongodb都会有疑问。在命令行下访问,不需要输入用户名密码,就可以随意的增删改查数据。这样不是很不安全么?默认,mongodb是不开启任何认证机制的。可是在生产环境中,这无疑会成为运维人员心中的一块心病。所以合适的安全策略是必须的。
  首先,绑定IP是第一道防护。如果只是本机访问可以直接绑定127.0.0.1,以避免外界的随意入侵。或者可以绑定一个内网地址,防止外网的入侵。
  其次,换一个端口号。如果使用数据库默认的端口号,肯定会增加被攻击的几率。所以选择一个特别的端口号,也是一个防护的策略。
  第三,开启用户认证机制。
  开启认证有以下几个步骤:
  1、服务程序开启认证功能。这个已经在刚刚的安装中提到了。使用--auth参数开启认证。
  2、用mongo客户端程序添加用户信息。可以直接在admin或local库中使用db.addUser()函数添加,这样添加的用户具有全局权限,也可以在自定义的库中添加,这样添加的用户只有该库的权限。
[plain] 

$ mongo 
#指定某个库 
> use admin 
#添加用户,密码,mongodb会自动为其加密,并且在表中生成system.users的collection,可以查询当前库用户 
> db.addUser('admin','admin') 
{ "user" : "admin", "pwd" : "2f09b653fdf3627a8fc6367f19b67c28" } 
> db.system.users.find() 
{ "_id" : ObjectId("4beb6a09ee63be17c992d8e0"), "user" : "admin", "pwd" : "2f09b653fdf3627a8fc6367f19b67c28" } 
 
#关于库权限,如果用户需要全局的权限,可以在admin和local的两个库里添加,但是需要重启库  

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,