要开放 MongoDB 访问权限,可以按照以下步骤进行操作:
打开 MongoDB 配置文件
mongod.conf
,该文件通常位于/etc/mongod.conf
。在配置文件中找到
net
部分,取消注释并将其中的bindIp
属性设置为0.0.0.0
,表示允许任何 IP 地址访问 MongoDB:
net:
port: 27017
bindIp: 0.0.0.0 # Listen to local interface only, comment to listen on all interfaces.
- 保存更改后重新启动 MongoDB 服务:
sudo systemctl restart mongod
- 在 MongoDB 中创建一个具有读写权限的用户(如果尚未创建),例如:
use mydb
db.createUser(
{
user: "myuser",
pwd: "mypassword",
roles: [ { role: "readWrite", db: "mydb" } ]
}
)
- 确保防火墙允许 MongoDB 的端口(默认为 27017)通过。在 Ubuntu 中可以使用以下命令:
sudo ufw allow 27017
- 在其它服务中连接 MongoDB,使用上述创建的用户名和密码进行身份验证,并指定正确的数据库名称和主机地址即可。例如,使用 Python 的 PyMongo 库连接 MongoDB:
import pymongo
client = pymongo.MongoClient("mongodb://myuser:mypassword@mongodb_host:27017/")
db = client["mydb"]