MongoDB non è sicuro per impostazione predefinita. Se stai installando MongoDB e lo avvii senza configurarlo per l'autenticazione, avrai dei brutti momenti. Le persone possono leggere, scrivere, distruggere o alterare i dati sul tuo server senza dover mai accedere o autenticarsi in alcun modo. La protezione del database non è difficile e può essere eseguita in pochi passaggi.
Innanzitutto, avvia il tuo client Mongo. Su Linux è il comando mongo
. Inserisci questo blocco di testo, ovviamente cambiando le parti segnaposto con le tue informazioni.
db.createUser({
user: "USERNAME",
pwd: "PASSWORD",
roles: [
{
role: "readWrite",
db: "YOUR_DATABASE"
}
]
});
Al termine, chiudere il client mongo e modificare il file di configurazione MongoDB. A seconda del sistema operativo e della distribuzione, lo troverai in uno di questi posti.
/etc/mongodb.conf
/etc/mongod.conf
Modificare la riga seguente, #security:
nel modo seguente.
security:
authorization: enabled
È consigliabile modificare la porta di bind in localhost ( 127.0.0.1
) o associarla a un IP privato che non viene esposto a Internet. Esporre il tuo database a Internet è solo una cattiva idea in generale. Questo è ciò che dovresti cambiare.
# network interfaces
net:
port: 27017
bindIp: 634.234.102.6
Bada ai tuoi spazi! Sempre in due, mai tabulazioni. Successivamente riavviare il database MongoDB. Su Linux sarà uno dei seguenti comandi in base alla tua distribuzione preferita.
systemctl restart mongod
systemctl restart mongodb