吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1972|回复: 8
收起左侧

[Python 原创] 【python 教程】MongoDB 修改默认端口和增加用户认证

[复制链接]
简讯 发表于 2020-3-13 21:32

为什么要修改数据库默认端口?答案无疑是为了安全。但是很多新手不注意这个问题,毕竟好不容易连上,还想什么数据安全?默认的端口和无密码访问,你的数据库很快就会被攻击。所以不要太天真,如果你正在使用 Mongo 数据库,不要只想着自己用着方便,小心给他人留了后门。

本文帮助新手在使用 MongoDB 时,通过修改数据库默认端口和增加用户认证,为你的数据上一道安全锁!🍒点击此处查看排版更好的原文。

修改默认端口号

编辑 mongoDB 配置文件:

sudo vim /etc/mongodb.conf

修改以下两行:

bind_ip = 0.0.0.0
port = 12345

bind_ip 默认是 127.0.0.1,只能本机访问,改为 0.0.0.0 就可以公网访问,port 对应端口号,可以根据自己需求修改。

如果是云服务器记得修改安全组规则,开放对应端口才能访问!

修改以后记得重启 mongo 服务:

sudo /etc/init.d/mongodb restart

重启之后,如果不输入端口号,会报错,因为默认连接 27017 端口。

报错

此时再连接我们需要指定端口号:

mongo --port 12345

成功

这样就能成功连接了。

增加用户认证

mongoDB 默认是无密码访问的,我们修改端口号之后仍需要增加用户认证,添加一层保障。

首先连接 mongo 数据库,使用 admin 数据库。

use admin

例如我现在创建一个用户名为 root,密码为 root 的用户,获取所有权限。

db.createUser({user: 'root', pwd: 'root', roles: ['root']})

如果注册成功,会提示:

Successfully added user: { "user" : "root", "roles" : [ "root" ] }

此时我们需要修改 mongo 的配置文件,找到:

# Turn on/off security.  Off is currently the default
#noauth = true
#auth = true

auth = true 取消注释,重启 mongo 服务。

sudo /etc/init.d/mongodb restart

这样我们在操作的时候必须使用密码,如果没有密码,会报权限错误。

无权限

在登录的时候使用刚才已经注册好的用户名和密码,同时需要指定加密的数据库:

mongo -u "root" -p "root" --authenticationDatabase "admin"

这行命令的意思是使用用户名(-u)为 root,密码(-p)为 root,数据库(--authenticationDatabase)为 admin 来连接 mongo 数据库。

我现在需要给指定数据库添加用户,该怎么做呢?例如我现在有一个名为 TEST 的数据库,新增用户,赋予读写权限。

db.createUser({user:'admin',pwd:'admin',roles:[{role:'readWrite', db:'TEST'}]})

这样就为 TEST 数据库添加了用户。

如果需要对 TEST 数据库操作的话,在连接数据库时需要这样输入:

mongo -u "admin" -p "admin" --authenticationDatabase "TEST"

如果既修改了端口,也增加了用户,那么完整的连接方式是这样的:

mongo --port 12345 -u 'admin' -p 'admin' --authenticationDatabase "TEST"

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
52P + 1 + 1 用心讨论,共获提升!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Nic残云 发表于 2020-3-13 21:35
现在不会,不过总有用的到的一天
lixiangliu 发表于 2020-3-13 21:48
jiangfeng810814 发表于 2020-3-13 21:55
WANGYU2010 发表于 2020-3-13 21:58
支持一下你!
Michael-Fade 发表于 2020-3-13 22:22
留名备用 谢谢楼主的分享 前两天才入了mongodb的坑 安装了好久  后面用的到再说吧 感谢分享!
alex999 发表于 2020-3-13 22:40
这个命令行macos 如何美化 求教程
丿Dream_老猫 发表于 2020-3-14 00:40
我来顶一下
52P 发表于 2020-3-14 10:30
收藏了,虽然知道怎么改。但每次都会忘记单词。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-17 02:27

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表