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
Вам следует подумать об изменении порта связывания на localhost ( 127.0.0.1
) или связать его с частным IP-адресом, который не доступен в Интернете. Выставление вашей базы данных в Интернете - это просто плохая идея в целом. Это то, что вы должны изменить.
# network interfaces
net:
port: 27017
bindIp: 634.234.102.6
Следите за своим пространством! Всегда по двое, никогда не вкладки. После этого перезапустите базу данных MongoDB. В Linux это будет одна из следующих команд в зависимости от вашего дистрибутива.
systemctl restart mongod
systemctl restart mongodb