以下是Debian下MongoDB的安全设置步骤:
-
安装MongoDB
更新系统并添加官方仓库,安装MongoDB:sudo apt update && sudo apt install -y mongodb-org -
启用身份验证
编辑配置文件/etc/mongod.conf,添加:security: authorization: enabled重启服务:
sudo systemctl restart mongod。 -
创建管理员账户
进入MongoDB shell,切换到admin数据库创建用户:use admin db.createUser({ user: "admin", pwd: "强密码", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] }) -
限制网络访问
- 绑定IP到本地:
net.bindIp: 127.0.0.1。 - 使用防火墙(如
ufw)限制端口访问:sudo ufw allow from 信任IP/32 to any port 27017 sudo ufw reload
- 绑定IP到本地:
-
加密通信(TLS/SSL)
- 生成证书并配置:
net: ssl: mode: requireSSL PEMKeyFile: /path/to/mongodb.pem ```。 - 重启服务生效。
- 生成证书并配置:
-
权限管理与审计
- 为数据库创建普通用户并分配权限(如
readWrite)。 - 启用审计日志(需企业版):
security: auditLog: destination: file path: /var/log/mongodb/audit.json ```。
- 为数据库创建普通用户并分配权限(如
-
其他安全措施
- 禁用HTTP接口和REST API(非必需场景):
net: http: enabled: false ```。 - 定期备份数据:
mongodump --out /备份路径。 - 保持系统和软件更新:
sudo apt update && sudo apt upgrade。
- 禁用HTTP接口和REST API(非必需场景):
参考来源: