MongoDB 在 Debian 上的安全设置主要包括以下方面:
- 启用身份验证
在配置文件/etc/mongod.conf中设置security.authorization: enabled,并创建管理员用户(如userAdminAnyDatabase角色)。 - 限制网络访问
- 绑定 IP 至本地或特定内网地址(
net.bindIp: 127.0.0.1或内网 IP)。 - 禁用 HTTP 接口和 REST API(
net.http.enabled: false)。
- 绑定 IP 至本地或特定内网地址(
- 加密通信(TLS/SSL)
- 生成证书并配置
net.ssl.mode: requireSSL,指定证书路径(PEMKeyFile、CAFile)。 - 生产环境建议使用双向认证,确保客户端和服务端证书有效性。
- 生成证书并配置
- 权限管理
- 使用内置角色(如
readWrite、dbAdmin)或自定义角色控制用户权限。 - 避免使用默认的
root角色,按需分配最小权限。
- 使用内置角色(如
- 防火墙配置
使用ufw或iptables限制 MongoDB 端口(默认 27017)的访问,仅允许受信任 IP。 - 审计与日志
启用审计日志记录操作(security.auditLog.destination: file),定期审查异常行为。 - 系统更新与维护
定期更新 MongoDB 和 Debian 系统,修复安全漏洞。 - 配置文件权限
确保 MongoDB 数据目录和配置文件权限仅对必要用户开放(如chown -R mongodb:mongodb /var/lib/mongodb)。
参考来源: