在Ubuntu上限制MongoDB的访问权限,可以通过以下几个步骤来实现:
首先,你需要创建一个专用的MongoDB用户,而不是使用默认的mongodb
用户。这样可以更好地控制访问权限。要创建一个新的MongoDB用户,请登录到MongoDB shell:
mongo
然后,在MongoDB shell中创建一个新用户:
use admin
db.createUser({
user: "myUserAdmin",
pwd: "myUserAdminPassword",
roles: [{ role: "userAdminAnyDatabase", db: "admin" }]
})
这将创建一个具有userAdminAnyDatabase
角色的新用户,该角色允许管理所有数据库的用户。请确保使用强密码,并妥善保管用户名和密码。
要限制对MongoDB服务器的访问,你可以限制允许连接的IP地址。在/etc/mongod.conf
文件中找到net
部分,并添加或修改bindIp
设置,以允许来自特定IP地址的连接:
net:
port: 27017
bindIp: 127.0.0.1,192.168.1.100
在这个例子中,MongoDB服务器将仅接受来自本地计算机(127.0.0.1)和IP地址为192.168.1.100的计算机的连接。将IP地址替换为你希望允许访问MongoDB服务器的IP地址。
在进行了上述更改后,需要重启MongoDB服务以使更改生效。在Ubuntu上,可以使用以下命令重启MongoDB服务:
sudo systemctl restart mongod
现在,MongoDB服务器将仅接受来自指定IP地址的连接,并使用新创建的专用用户进行身份验证。这将有效地限制对MongoDB的访问权限。