以下是在Linux上安全设置MongoDB的关键步骤:
- 启用认证
在/etc/mongod.conf中添加security.authorization: enabled,并重启服务。 - 创建管理员账户
使用mongo或mongosh连接,在admin数据库中创建带root角色的用户,如:use admin db.createUser({ user: "admin", pwd: "强密码", roles: [{ role: "root", db: "admin" }] }) - 限制网络访问
- 在
/etc/mongod.conf中设置bindIp为127.0.0.1(仅本地访问)或指定可信IP段。 - 通过防火墙(如
ufw或firewalld)限制端口(默认27017)访问,仅允许可信IP。
- 在
- 加密通信
配置TLS/SSL:在/etc/mongod.conf中添加ssl.mode: requireSSL及证书路径,重启服务。 - 最小权限原则
为不同数据库创建专用用户,分配最小必要权限(如readWrite),避免使用默认账户。 - 禁用非必要接口
在/etc/mongod.conf中关闭HTTP和REST接口:net.http.enabled: false。 - 审计与日志
启用审计日志记录操作(企业版支持),并定期备份数据。 - 系统级安全
- 以非特权用户(如
mongodb)运行服务,避免使用root。 - 定期更新MongoDB补丁,修复安全漏洞。
- 以非特权用户(如
参考来源: