MongoDB的默认设置并不安全。如果我们只是安装了MongoDB,不做其他设置的话,很可能面临安全风险。黑客可以读取、写入、修改甚至删除数据库中的数据。提高MongoDB的安全性其实不难,可以参照下面这些步骤去做。
首先启动Mongo客户端。在Linux云服务器中执行mongo命令即可。输入下面的文本,其中大写的英文字母需要替换为实际信息。
db.createUser({
user: "USERNAME",
pwd: "PASSWORD",
roles: [
{
role: "readWrite",
db: "YOUR_DATABASE"
}
]
});
执行完成后,退出Mongo客户端,编辑MongoDB的配置文件。根据操作系统版本的不同,配置文件的名称可能是/etc/mongodb.conf或者/etc/mongod.conf。把security这行更改为下面的内容:
security:
authorization: enabled
另一方面,如果绑定端口的IP地址是公网IP,则需要更改为localhost(127.0.0.1)或者私有IP地址,把数据库暴露在公网上也是非常糟糕的做法。
# network interfaces
net:
port: 27017
bindIp: 127.0.0.1
最后重启MongoDB,让上面的设置生效。根据操作系统版本的不同,MongoDB的重启命令可能是下面两条之一。
systemctl restart mongod
systemctl restart mongodb