适用范围:此方法适用于编译部署、二进制部署。 Mongodb要求在4.0.X 或者以上
二进制文件下载:x86 机器下载解压即可 https://www.mongodb.com/try/download/community
1、整改项目
应对登录的用户进行身份标识和鉴别,身份标识具有唯一性,鉴别信息具有复杂度要求并定期更换; | 确保使用非特权的专用服务帐户运行MongoDB | 高危 | 1.创建用于执行MongoDB数据库活动的专用用户。 2.将数据库数据文件,密钥文件和SSL私钥文件设置为只能读取 由mongod/mongos用户提供。 3.将日志文件设置为只能由mongod/mongos用户写入,并且只能由root读取。 4.切换至该专用用户,并重启MongoDB |
应提供访问控制功能,对登录的用户分配账号和权限 | 确保为MongoDB数据库启用了身份验证 | 高危 | 编辑MongoDB配置文件,在security区块下配置authorization: enabled |
应通过设定终端接入方式或网络地址范围对通过网络进行管理的管理终端进行限制 | 确保MongoDB仅侦听授权接口上的网络连接 | 中危 | 编辑MongoDB的配置文件`<conf_paht>/mongod.conf`,在`net`区块下配置`bindIp`,将此项的值设置为本地IP(127.0.0.1或localhost),并使用该配置文件重启MongoDB服务`mongod -f <conf_paht>/mongod.conf` |
应遵循最小安装的原则,仅安装需要的组件和应用程序 | 确保在不需要时禁用服务器端脚本 | 高危 | 编辑`<conf_file>/mongod.conf`文件中将`security`下的`javascriptEnabled`设置为`false`以禁用它。 |
应采用加解密技术保证重要数据在存储过程中的保密性。 | 确保MongoDB使用非默认端口 | 高危 | 将MongoDB服务器的端口更改为27017以外的数字 |
2、修改配置项
配置文件名称 mongod.conf ,步骤介绍,先备份原先的文件,再创建文件
有注释
mv mongodb.conf mongodb.conf.bak
cat > mongodb.conf << EOF
#系统日志配置
systemLog:
#日志文件格式
destination: file
logAppend: true
#日志文件存放目录
path: /opt/mongodb_data/log/mongod.log
#数据存放目录
storage:
dbPath: /opt/mongodb_data/db #数据文件存放目录
journal:
enabled: true
#安全配置选项
security:
#身份认证开启
authorization: enabled
#禁止在服务端使用JavaScript脚本
javascriptEnabled: false
#密钥文件位置,用于分布式搭建节点间使用
keyFile: /opt/mongodb_key/keyFile.file
#程序运行选项
proce