温馨提示×

ubuntu mongodb怎么开启认证

小樊
47
2026-10-01 19:49:25
栏目: 云计算

在 Ubuntu 上给 MongoDB 开启认证(Authentication),一般步骤如下(以 MongoDB 6.x / 7.x 常见安装方式为例,适用于 apt 安装):


一、先确认 MongoDB 已安装并运行

sudo systemctl status mongod

如果没启动:

sudo systemctl start mongod

二、先创建管理员用户(未开启认证时)

  1. 进入 mongo shell
mongosh
  1. 切换到 admin 库
use admin
  1. 创建管理员用户
db.createUser({
  user: "admin",
  pwd: "你的密码",
  roles: [ { role: "root", db: "admin" } ]
})

退出:

exit

三、修改 MongoDB 配置文件开启认证

编辑配置文件:

sudo nano /etc/mongod.conf

找到或添加以下内容:

security:
  authorization: enabled

⚠ 注意:

  • security: 前面不要有空格
  • authorization: enabled 缩进 2 个空格

示例:

security:
  authorization: enabled

保存并退出(Ctrl+O,Enter,Ctrl+X)


四、重启 MongoDB

sudo systemctl restart mongod

五、使用认证方式登录

方式 1:命令行登录

mongosh -u admin -p --authenticationDatabase admin

方式 2:进入后认证

mongosh
use admin
db.auth("admin", "你的密码")

六、给业务库创建普通用户(推荐)

use mydb
db.createUser({
  user: "appuser",
  pwd: "apppass",
  roles: [ { role: "readWrite", db: "mydb" } ]
})

连接:

mongosh -u appuser -p --authenticationDatabase mydb

七、常见问题

1. 配置文件改错导致 mongod 起不来

查看日志:

sudo tail -n 50 /var/log/mongodb/mongod.log

2. Ubuntu 防火墙

如果远程连接:

sudo ufw allow 27017

3. 只允许本地(安全)

在 /etc/mongod.conf:

net:
  bindIp: 127.0.0.1

如果你用的是 Docker / MongoDB 4.x / 云服务器,可以告诉我,我可以给你对应版本的具体配置。

0 踩