Ubuntu上MongoDB如何进行安全审计
导读:Ubuntu上MongoDB安全审计实操指南 一 前置条件与版本要求 审计功能自 MongoDB 3.2 起提供,建议在生产环境使用 3.6+ 并结合身份验证与网络加固。Ubuntu 上推荐使用官方 MongoDB APT 仓库安装,便于...
Ubuntu上MongoDB安全审计实操指南
一 前置条件与版本要求
- 审计功能自 MongoDB 3.2 起提供,建议在生产环境使用 3.6+ 并结合身份验证与网络加固。Ubuntu 上推荐使用官方 MongoDB APT 仓库安装,便于获取稳定版本与配置管理。启用审计前,先完成基础安全基线:开启认证、限制绑定地址、配置防火墙与必要的加密传输。
二 启用审计的两种方式
-
方式一 配置文件启用(推荐)
- 编辑配置文件 /etc/mongod.conf,在顶层加入审计配置,并确保启用认证:
security: authorization: enabled auditLog: destination: file format: JSON path: /var/log/mongodb/audit.json # 可选:仅记录较高严重级别事件 # filter: '{ "severity": { "$gte": 1 } } '- 创建日志目录并设定属主:
sudo mkdir -p /var/log/mongodb sudo chown mongodb:mongodb /var/log/mongodb- 重启服务并设为开机自启:
sudo systemctl restart mongod sudo systemctl enable mongod- 验证输出:
tail -f /var/log/mongodb/audit.json以上步骤适用于 Ubuntu/Debian 系,JSON 格式便于后续检索与对接 SIEM。
-
方式二 运行时动态设置(仅部分版本/许可支持)
use admin db.setAuditLogDestination("file", { format: "JSON", path: "/var/log/mongodb/audit.json" } ) db.getAuditLogOptions()若命令不存在,说明当前版本或许可不支持动态配置,请改用配置文件方式。
三 审计策略与过滤示例
- 记录关键操作(读、写、鉴权相关):
auditLog: destination: file format: JSON path: /var/log/mongodb/audit.json filter: '{ atype: { $in: [ "authenticate", "createUser", "dropUser", "dropRole", "grantRolesToUser", "revokeRolesFromUser", "insert", "update", "remove", "find" ] } } ' - 仅记录高严重级别事件(减少体量):
auditLog: destination: file format: JSON path: /var/log/mongodb/audit.json filter: '{ "severity": { "$gte": 1 } } ' - 说明
- 字段 atype 表示审计事件类型(如 authenticate、createUser、insert、update、remove、find 等),可按需裁剪。
- 过滤表达式需符合 MongoDB 查询语法,生产环境建议先记录“全量或接近全量”,再逐步收敛到关键事件以减少性能与存储压力。
四 验证与运维要点
- 验证
- 执行若干操作(如连接、鉴权、建删用户、增删改查),观察 /var/log/mongodb/audit.json 是否产生结构化审计事件。
- 使用
tail -f实时查看,或用jq进行条件检索(如jq 'select(.atype=="authenticate")' /var/log/mongodb/audit.json)。
- 性能与存储
- 审计会带来 CPU 与 I/O 开销,建议将审计日志与数据库日志分盘存放,配置 logrotate 做按日/按大小滚动与压缩,避免单文件过大影响分析效率。
- 安全加固配套
- 启用认证与 RBAC(如创建管理员用户)、限制 bindIp、开启 TLS/SSL、以 非 root 运行 MongoDB、并用 UFW/iptables 限制来源 IP 对 27017 的访问。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu上MongoDB如何进行安全审计
本文地址: https://pptw.com/jishu/751002.html
