温馨提示×

MongoDB在Ubuntu上的网络配置注意事项

小樊
40
2025-12-06 20:30:46
栏目: 云计算

MongoDB 在 Ubuntu 的网络配置注意事项

一 绑定地址与端口

  • 配置文件路径为 /etc/mongod.conf,网络段使用 net 配置。默认仅本地监听,需显式设置 bindIp 才允许远程访问。示例:仅本地访问用 127.0.0.1;允许多个来源可写成 bindIp: 127.0.0.1,192.168.1.10;开放全部来源用 0.0.0.0(务必配合认证与防火墙)。端口默认为 27017,如变更需同步客户端与防火墙规则。修改后执行 sudo systemctl restart mongod 生效。

二 防火墙与安全组

  • Ubuntu 常用 ufwiptables 放行 27017/tcp。示例:ufw 执行 sudo ufw allow 27017/tcpsudo ufw enable;iptables 执行 sudo iptables -A INPUT -p tcp --dport 27017 -j ACCEPT,并使用 iptables-persistent 持久化。云服务器还需在云平台安全组放通 27017/tcp,否则外网仍无法访问。

三 加密传输与认证

  • 建议启用 SSL/TLS 加密通信,示例配置:net.ssl.mode 设为 requireSSL,并指定 PEMKeyFileCAFile;生产环境将 sslAllowInvalidCertificates 设为 false。同时开启认证:在 security 段设置 authorization: enabled,创建管理员用户(如 rootuserAdminAnyDatabase),重启服务后用带认证的 URI 连接,例如:mongosh “mongodb://admin:YourSecurePassword@服务器IP:27017/admin?authSource=admin”。

四 监听验证与常见排错

  • 使用 sudo netstat -tuln | grep 27017 检查是否仅在你期望的地址上监听;若仅本地可连而远程被拒,优先排查 bindIpufw/iptables 与云安全组是否放行。查看 /var/log/mongodb/mongod.log 定位启动失败、绑定失败或认证错误;远程连接测试可用 mongosh --host --port 27017 或带认证的管理库连接串。配置文件修改前建议备份 /etc/mongod.conf,变更后使用 sudo systemctl status mongod 确认运行状态。

五 安全加固清单

  • 优先采用“最小暴露面”:如无公网需求,保持 bindIp: 127.0.0.1;必须远程时仅放通必要来源 IP。始终开启 authorization,并配合 TLS 加密。通过 ufw/iptables 限制来源网段与端口,云上同步配置安全组。定期备份(如 mongodump)、监控(如 mongostat/mongotop),并审计关键操作与异常登录。

0