ubuntu

如何在Ubuntu上安全配置MongoDB

小樊
34
2025-06-05 10:00:00
栏目: 云计算

在Ubuntu上安全配置MongoDB涉及多个步骤,包括安装、配置、启用认证以及设置访问控制。以下是一个详细的指南:

安装MongoDB

  1. 安装依赖包
sudo apt-get update
sudo apt-get install -y libcurl4 openssl
  1. 导入MongoDB公钥
wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
  1. 创建MongoDB包源
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
  1. 安装MongoDB
sudo apt-get install -y mongodb-org

配置MongoDB

  1. 创建数据存储目录
sudo mkdir -p /data/db
  1. 编辑MongoDB配置文件 (/etc/mongod.conf):
storage:
  dbPath: /data/db
  journal:
    enabled: true

systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log

net:
  port: 27017
  bindIp: 127.0.0.1

security:
  keyFile: /root/keyfile
  authorization: enabled
  1. 创建密钥文件
openssl rand -base64 745 > /root/keyfile
sudo chmod 400 /root/keyfile
sudo chown mongodb:mongodb /root/keyfile
  1. 启动MongoDB服务
sudo systemctl start mongod
sudo systemctl enable mongod

启用认证

  1. 连接到MongoDB shell
mongo
  1. 切换到admin数据库并创建管理员账号
use admin
db.createUser({
  user: "admin",
  pwd: "your_password",
  roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
})
  1. 启用认证
db.adminCommand({authSchema: 1})
  1. 测试连接
mongo -u admin -p your_password --authenticationDatabase admin

其他安全建议

请注意,上述信息基于搜索结果,并且MongoDB的版本可能会影响配置细节。建议参考MongoDB官方文档以获取针对特定版本的详细配置指南。

0
看了该问题的人还看了