2017.01数万个mongodb数据库被攻击,一定要给mongodb数据库加权限!

##前言 最近好多mongodb数据库用户数据被删除,并且被勒索。包括我自己。
由于之前不太懂,并没有对数据库设置权限就可以直接用。
于是产生如下悲剧:
输入图片说明

随后查看服务端日志:
输入图片说明

详细经过
##一、win7下尝试自己攻击自己的数据库

  • cmd进入自己的mongdb安装目录bin目录,然后做如下操作,轻轻松松可以插入成功,真尴尬!!!
    输入图片说明

##二、解决问题 网上搜了一下,先给mongodb加权限。

mongod --dbpath "C:\Program Files\MongoDB\Server\3.2\bin\data\db" --logpath "C:\Program Files\MongoDB
\Server\3.2\bin\data\log\MongoDB.log" --auth 

输入图片说明

  • 2.2、新建管理员用户和数据库用户,注意这儿不能用addUser,而是createUser。因为addUser貌似是老版本的。参考博客
    这里用到的命令:db.system.users.find();查找所用数据库用户。db.createUser({})创建用户。

输入图片说明

  • 2.3、(1)、再次连接的时候提示需要auth权限、(2)、先user admin,然后db.auth(用户名,密码);返回1表示授权成功。
    输入图片说明

  • 2.4、mongoose连接授权过的mongodb。这样应该就可以安全的操作数据库了。

/**
 * 假如我们这里使用数据库test,所设置的用户名和密码都是test。
 */
module.exports={
    mongodb:"mongodb://test:test@localhost/test"
}

参考博客

##二、待解决问题。 robomongo此时可以通过admin的用户名密码可以登录成功。
输入图片说明
但是admin的用户名密码并不能操作某一个数据库。如我们当我点击test会报错。这样的话,我操作数据库只能再cmd下了,着实不太方便。
输入图片说明

转载于:https://my.oschina.net/u/2480757/blog/821649

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值