1. 基础安全配置
wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -,然后创建/etc/apt/sources.list.d/mongodb-org-4.4.list文件并安装。/etc/mongod.conf)和数据目录(/data/db)的权限正确,仅允许mongodb用户访问。例如:sudo chown -R mongodb:mongodb /data/db,sudo chmod 600 /etc/mongod.conf。2. 访问控制与认证
/etc/mongod.conf中设置security.authorization: enabled,强制所有连接需通过用户名和密码认证,阻止未授权访问。use admin; db.createUser({user: "admin", pwd: "强密码", roles: ["root"]});创建普通数据库用户:use mydb; db.createUser({user: "mydbuser", pwd: "强密码", roles: ["readWrite"]})。3. 网络访问限制
/etc/mongod.conf中的net.bindIp为127.0.0.1,仅允许本地连接,防止外部直接访问。sudo ufw allow from 信任IP to any port 27017;iptables命令:sudo iptables -A INPUT -p tcp --dport 27017 -s 信任IP -j ACCEPT,sudo iptables -A INPUT -p tcp --dport 27017 -j DROP。4. 数据传输加密
/etc/mongod.conf中配置:net.ssl.mode: requireSSL,net.ssl.PEMKeyFile: /路径/ssl.pem,net.ssl.CAFile: /路径/ca.pem,加密客户端与服务器之间的通信。5. 审计与监控
/etc/mongod.conf中添加systemLog.destination: file,systemLog.path: /var/log/mongodb/audit.json,auditLog.format: JSON,记录所有用户操作(如登录、查询、修改),便于后续审查异常行为。mongostat(监控操作速率)和mongotop(监控集合级读写时间)工具,结合系统监控工具(如htop、netstat)实时跟踪数据库性能和网络流量,及时发现异常。6. 定期更新与备份
sudo apt-get update && sudo apt-get upgrade mongodb-org,及时应用MongoDB安全补丁,修复已知漏洞。mongodump命令定期备份数据(如每日凌晨),并将备份文件存储在安全位置(如异地服务器或云存储)。例如:mongodump --out /备份路径/$(date +%F),确保备份数据的完整性和可恢复性。