MongoDB 在 CentOS 的安全设置清单
一 身份与访问控制
security:
authorization: enabled
重启:sudo systemctl restart mongod。如为容器环境,可通过环境变量 MONGO_INITDB_ROOT_USERNAME / MONGO_INITDB_ROOT_PASSWORD 初始化或在启动参数中添加 –auth。use admin
db.createUser({
user: "admin",
pwd: "StrongPass!23",
roles: ["root"]
})
use mydb
db.createUser({
user: "appuser",
pwd: "AppPass!45",
roles: ["readWrite", "dbOwner"]
})
连接测试:mongo -u admin -p 'StrongPass!23' --authenticationDatabase admin。二 网络与防火墙
net:
bindIp: 127.0.0.1,192.168.1.10
注意:自 MongoDB 3.6 起官方 RPM/DEB 包默认仅绑定 localhost,历史版本或自定义编译可能默认 0.0.0.0,需显式收紧。sudo firewall-cmd --permanent --zone=public --add-port=27017/tcp
sudo firewall-cmd --reload
三 加密与传输安全
net:
ssl:
mode: requireSSL
PEMKeyFile: /etc/ssl/private/mongodb-key.pem
CAFile: /etc/ssl/certs/mongodb-cert.pem
重启:sudo systemctl restart mongod。四 审计与日志监控
auditLog:
destination: file
format: JSON
path: /var/log/mongodb/audit.log
systemLog:
destination: file
path: /var/log/mongodb/mongod.log
logAppend: true
logLevel: 2
五 高可用与系统加固