MongoDB:连接用户名密码校验

记录。今天服务器被黑了,估计是服务器端口27017端口开放导致mongodb被劫持(服务器一切正常只有数据库被黑,原有库消失,多出来一个劫持让我支付比特币的通告库),测试数据库直接消失。还好是准备上线之前跑线上环境测试库,不然就要跑路了。

(开放27017端口是因为需要使用工具查看数据源,并修改)

解决方案:

1.使用用户名密码权限连接校验。

修改mongod.conf配置文件

//打开验证
security:
  authorization: enabled

添加管理员账户:

使用命令行添加管理员或者管理工具添加。(我直接使用了管理员工具,权限字段不记得了,尴尬)

#上面选择字段的解释:

Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限
// 用户名就刚刚添加的管理员用户名 密码同上
mongodb://用户名:密码@localhost:27017/连接库?authSource=连接库

2.关闭27017端口。

关闭27017端口去服务器运营商关闭安全组配置中27017端口即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章