温馨提示×

CentOS中MongoDB安全配置怎么做

小樊
44
2025-09-26 09:02:45
栏目: 云计算

在CentOS系统中配置MongoDB的安全性是非常重要的,以下是一些基本步骤和建议:

  1. 修改默认端口: MongoDB默认使用27017端口。为了安全起见,可以修改为其他端口。

    sudo vi /etc/mongod.conf
    

    net部分修改port参数:

    net:
      port: 27018
    
  2. 启用身份验证: 在security部分启用身份验证,并设置授权模式为SCRAM-SHA-1或更安全的SCRAM-SHA-256

    security:
      authorization: enabled
    
  3. 创建管理员用户: 启动MongoDB服务并连接到MongoDB shell:

    sudo systemctl start mongod
    mongo
    

    在MongoDB shell中创建一个管理员用户:

    use admin
    db.createUser({
      user: "admin",
      pwd: "your_password",
      roles: ["root"]
    })
    
  4. 配置访问控制: 在mongod.conf文件中配置访问控制列表(ACL),限制特定IP地址或IP范围访问MongoDB。

    net:
      bindIp: 127.0.0.1,your_ip_address
    

    或者在MongoDB shell中配置:

    db.getSiblingDB("$external").createUser({
      user: "your_user",
      pwd: "your_password",
      roles: ["readWrite", "dbAdmin"]
    })
    
  5. 启用SSL/TLS加密: 在mongod.conf文件中配置SSL/TLS加密。

    net:
      ssl:
        mode: requireSSL
        PEMKeyFile: /etc/ssl/mongodb.pem
        CAFile: /etc/ssl/ca.pem
    
  6. 定期备份数据: 定期备份MongoDB数据以防止数据丢失。

    mongodump --out /path/to/backup
    
  7. 监控和日志: 配置MongoDB的监控和日志记录,以便及时发现和解决问题。

    systemLog:
      destination: file
      logAppend: true
      path: /var/log/mongodb/mongod.log
    
  8. 防火墙配置: 配置防火墙以允许必要的端口访问。

    sudo firewall-cmd --permanent --zone=public --add-port=27018/tcp
    sudo firewall-cmd --reload
    

通过以上步骤,可以大大提高MongoDB在CentOS系统中的安全性。请根据实际需求和环境进行调整和配置。

0