centos

CentOS上MongoDB如何启用认证

小樊
45
2025-09-24 05:39:58
栏目: 云计算

在CentOS上启用MongoDB认证,你需要按照以下步骤操作:

  1. 登录到MongoDB服务器: 使用SSH登录到你的CentOS服务器。

  2. 启动MongoDB服务(如果尚未启动):

    sudo systemctl start mongod
    
  3. 创建管理员用户: 打开MongoDB shell:

    mongo
    

    在MongoDB shell中,切换到admin数据库,并创建一个具有用户管理权限的管理员用户。例如,创建一个用户名为admin,密码为yourpassword的用户:

    use admin
    db.createUser({
      user: "admin",
      pwd: "yourpassword",
      roles: [{ role: "userAdminAnyDatabase", db: "admin" }]
    })
    
  4. 启用认证: 退出MongoDB shell:

    exit
    

    编辑MongoDB配置文件/etc/mongod.conf,找到security部分并启用认证:

    security:
      authorization: enabled
    

    如果你希望MongoDB监听所有网络接口,请确保bindIp设置为0.0.0.0或注释掉该行:

    net:
      port: 27017
      bindIp: 0.0.0.0
    
  5. 重启MongoDB服务: 保存配置文件并重启MongoDB服务以应用更改:

    sudo systemctl restart mongod
    
  6. 使用管理员用户登录: 再次打开MongoDB shell,并使用新创建的管理员用户登录:

    mongo -u admin -p yourpassword --authenticationDatabase admin
    
  7. 为其他数据库创建用户: 现在你已经启用了认证,你可以为其他数据库创建用户。例如,为mydatabase数据库创建一个用户名为myuser,密码为mypassword的用户,并赋予读写权限:

    use mydatabase
    db.createUser({
      user: "myuser",
      pwd: "mypassword",
      roles: [{ role: "readWrite", db: "mydatabase" }]
    })
    

通过以上步骤,你已经在CentOS上启用了MongoDB认证,并创建了管理员用户和其他数据库的用户。确保在生产环境中使用强密码,并定期更新密码以保持安全性。

0
看了该问题的人还看了