在Debian上解決MongoDB權限問題,可按以下步驟操作:
安裝MongoDB
sudo apt update
sudo apt install -y mongodb
啟用身份驗證
編輯配置文件 /etc/mongod.conf
,找到 security
部分,添加或修改:
security:
authorization: enabled
重啟服務生效:
sudo systemctl restart mongod
創建管理員用戶
連接MongoDB shell,切換到 admin
數據庫并創建管理員:
use admin
db.createUser({
user: "admin",
pwd: "強密碼",
roles: ["root"]
})
創建數據庫用戶并授權
為目標數據庫創建用戶并分配角色(如 readWrite
):
use your_database
db.createUser({
user: "your_user",
pwd: "用戶密碼",
roles: [{ role: "readWrite", db: "your_database" }]
})
驗證權限
使用新用戶連接并檢查權限:
mongo -u your_user -p "用戶密碼" --authenticationDatabase your_database
db.runCommand({ connectionStatus: 1 })
可選:配置IP白名單
編輯 /etc/mongod.conf
,添加允許訪問的IP:
net:
bindIp: 127.0.0.1,你的IP
重啟服務生效。
注意:確保數據目錄(/var/lib/mongodb
)和日志目錄權限正確,通常屬于 mongodb
用戶。生產環境需使用強密碼并定期更新權限配置。