首页主机资讯Linux如何确保MongoDB的安全性

Linux如何确保MongoDB的安全性

时间2026-01-21 22:40:03发布访客分类主机资讯浏览1199
导读:Linux上保障MongoDB安全的可落地清单 一 身份与访问控制 启用认证:在配置文件 /etc/mongod.conf 中开启 security.authorization: enabled,重启后所有客户端必须提供凭证。MongoD...

Linux上保障MongoDB安全的可落地清单

一 身份与访问控制

  • 启用认证:在配置文件 /etc/mongod.conf 中开启 security.authorization: enabled,重启后所有客户端必须提供凭证。MongoDB 默认从 3.6 起仅绑定 localhost,但一旦放开到网络,未启用认证风险极高。
  • 创建管理员:先以本机无鉴权连接(仅首次),在 admin 库创建具备 userAdminAnyDatabase 的用户,用于后续用户与角色管理。
  • 最小权限原则:按库/按业务创建用户,仅授予所需角色(如 read、readWrite、dbAdmin 等),避免使用 root
  • 连接串示例:mongosh --host 127.0.0.1 --port 27017 -u “admin” -p --authenticationDatabase “admin”。
  • 版本提示:MongoDB 6.x 起默认不再内置 mongo 工具,请使用 mongosh

二 网络安全与加密

  • 绑定地址最小化:在 net.bindIp 中仅列出需要监听的 内网IP127.0.0.1,避免 0.0.0.0 暴露到公网。
  • 防火墙白名单:仅放行受信来源的 27017/TCP。示例:
    • UFW:sudo ufw allow from 192.168.1.100 to any port 27017;sudo ufw enable
    • iptables:先 DROP 27017,再对受信 IP ACCEPT,注意规则顺序
  • 传输加密:启用 TLS/SSL,配置 net.ssl.mode: requireSSL,提供 PEMKeyFileCAFile,防止明文传输与中间人攻击。
  • 禁用不必要接口:关闭 HTTP 接口/REST API/JSONP,减少攻击面。

三 系统与服务加固

  • 最小权限运行:创建专用系统用户(如 mongod),数据/日志目录属主设为该用户,禁止以 root 运行。
  • 目录与权限:确保 /var/lib/mongodb/var/log/mongodb 权限最小化,仅服务账户可读写。
  • 服务管理:使用 systemd 托管(如 /etc/systemd/system/mongodb.service),启用开机自启并限制权限。
  • 日志与审计:开启 systemLog 记录,按需启用 auditLog(JSON 格式) 记录关键操作。
  • 补丁与版本:保持 MongoDB 与操作系统 的安全补丁为最新,及时修复已知漏洞。

四 复制集与分片场景

  • 内部认证:副本集/分片使用 security.keyFile,各节点 keyFile 内容一致,权限 400,通过 –keyFile 或配置文件启用;该措施同时强制启用基于角色的访问控制。
  • 初始化顺序:首次仅能通过 localhost 连接创建第一个具备用户管理能力的账户,随后关闭 localhost 异常,所有连接均需鉴权。
  • 角色规划:为运维与业务分配不同账户,如 clusterAdmin(集群管理)、backup/restore(备份恢复)等,遵循最小权限。

五 备份监控与验收

  • 备份恢复:定期使用 mongodump/mongorestore 做离线/逻辑备份,验证可恢复性与一致性。
  • 监控告警:启用 operationProfiling 与系统日志收集,结合监控平台对异常连接、失败登录、慢查询等进行告警。
  • 验收清单:
    • 仅内网可达、端口仅对受信 IP 开放(nmap/ss 验证)
    • 未鉴权连接被拒绝、鉴权用户仅获授权权限
    • TLS 握手成功、禁用 HTTP 接口
    • 审计日志正常写入、备份任务成功可恢复
    • 系统以 mongod 非 root 运行、目录权限正确

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Linux如何确保MongoDB的安全性
本文地址: https://pptw.com/jishu/789190.html
Debian swapper如何提升性能 Linux如何解决MongoDB内存问题

游客 回复需填写必要信息