Paramètres d'installation et d'authentification de MongoDB (Ubuntu18.04)

table des matières

  1. Installez MongoDB en utilisant apt
  2. Définissez l'authentification MongoDB (paramètres de nom d'utilisateur et de mot de passe)

1. Installez MongoDB en utilisant apt

1.1 Enregistrer le référentiel MongoDB dans apt

La dernière version ne peut pas être installée avec le référentiel Ubuntu 18.04 standard, utilisez donc le référentiel fourni par MongoDB.

$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4

gpg: key 68818C72E52529D4: public key "MongoDB 4.0 Release Signing Key <[email protected]>" imported
gpg: Total number processed: 1
gpg:               imported: 1

Il s'agit de la commande qui importe la clé GPG utilisée dans le référentiel MongoDB. Si le résultat indique ** importé: 1 **, c'est OK.

Ensuite, ajoutez les informations du référentiel à apt.

$ echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list

Après cela, afin de reconnaître le référentiel ajouté

$ sudo apt update

Ceci termine l'enregistrement du référentiel.

Installation de MongoDB

Exécutez l'installation avec la commande apt.

$ sudo apt install mongodb-org

Démarrez MongoDB.

$ sudo systemctl start mongod

Si vous vérifiez l'état de MongoDB et qu'il est Actif (en cours d'exécution), le démarrage est terminé avec succès.

$ systemctl status mongod
● mongod.service - MongoDB Database Server
   Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2020-10-28 02:49:10 UTC; 1 weeks 2 days ago
     Docs: https://docs.mongodb.org/manual
 Main PID: 17358 (mongod)
   CGroup: /system.slice/mongod.service
           └─17358 /usr/bin/mongod --config /etc/mongod.conf

Ceci termine l'installation de MongoDB. Ensuite, configurez l'authentification MongoDB.

2. Paramètres d'authentification MongoDB

Immédiatement après l'installation de MongoDB, tout utilisateur peut généralement voir le contenu de la base de données. Lors de l'utilisation future de la base de données, je pense qu'il est effrayant de garder les données exposées, alors définissons l'authentification à la première étape!

2.1 Activer l'authentification utilisateur

Tout d'abord, activons le paramètre d'authentification utilisateur à partir du fichier de configuration (config). (La valeur par défaut est désactivée)

Le fichier de configuration se trouve généralement dans / etc / mongod.conf, alors ouvrez-le avec un éditeur de texte.

Ensuite, lorsque vous l'ouvrez, copiez ce qui suit tel quel, ou s'il existe cette description dans le fichier de paramètres, modifiez-le comme suit.

$ sudo vim /etc/mongod.conf

(J'utilise vim, mais mon éditeur de texte préféré va bien)

security:
  authorization: enabled

2.2 Paramètres du super utilisateur (administrateur)

Tout d'abord, puisque le fichier de paramètres a été modifié, redémarrez mongod.

$ sudo systemctl restart mongod

Il n'y a aucun problème à reconnaître un super utilisateur en tant que root Linux. Il est normal de le reconnaître en tant qu'administrateur / administrateur.

MongoDB n'a pas d'ID utilisateur fixe, donc ce qui détermine un super-utilisateur est un rôle. Ici, nous utilisons root, qui est intégré en tant que rôle.

$ mongo
> use admin
switched to db admin
> db.createUser({user:"mongo", pwd:"password", roles:["root"]})
Successfully added user: { "user" : "mongo", "roles" : [ "root" ] }

Les utilisateurs et pwd sont facultatifs. Ceci termine les paramètres de nom d'utilisateur et de mot de passe. Quittez MongoDB une fois et spécifiez le nom d'utilisateur / mot de passe.

En quittant MongoDB

> exit
bye

2.3 Connectez-vous à MongoDB en spécifiant le nom d'utilisateur et le mot de passe

Dans ce qui précède, le nom d'utilisateur est ** mongo ** Mot de passe ** mot de passe ** Puisqu'il a été spécifié, ce sera comme suit lors de la connexion.

$ mongo -u mongo(Nom d'utilisateur)
MongoDB shell version v4.2.10
Enter password: 

Si vous parvenez à vous authentifier, ce sera comme suit.

$ mongo -u mongo
MongoDB shell version v4.2.10
Enter password: 


connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("xxxxxxxxxxxxxxxxxxxxxxxxx") }
MongoDB server version: 4.2.10
Server has startup warnings: 
2020-10-28T02:49:10.604+0000 I  STORAGE  [initandlisten] 
2020-10-28T02:49:10.604+0000 I  STORAGE  [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine
2020-10-28T02:49:10.604+0000 I  STORAGE  [initandlisten] **          See http://dochub.mongodb.org/core/prodnotes-filesystem
---
Enable MongoDBs free cloud-based monitoring service, which will then receive and display
metrics about your deployment (disk utilization, CPU, operation statistics, etc).

The monitoring data will be available on a MongoDB website with a unique URL accessible to you
and anyone you share the URL with. MongoDB may use this information to make product
improvements and to suggest MongoDB products and deployment options to you.

To enable free monitoring, run the following command: db.enableFreeMonitoring()
To permanently disable this reminder, run the following command: db.disableFreeMonitoring()
---

> 

À titre de test, entrez la commande suivante à l'invite.

> show dbs
admin          0.000GB
app            0.001GB
auth           0.001GB
config         0.000GB
demo           0.000GB
events         0.000GB
hosting        0.000GB
local          0.000GB
log            0.004GB

Si la base de données s'affiche ainsi, c'est la preuve que l'authentification a réussi.

Si vous vous connectez à MongoDB sans spécifier de nom d'utilisateur, le résultat sera le suivant.

$ mongo
MongoDB shell version v4.2.10
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("xxxxxxxxxxxxxxxxxxxxxx") }
MongoDB server version: 4.2.10
> show dbs
>

Veuillez noter que l'affichage de la base de données ne sera pas affiché en premier lieu s'il n'est pas authentifié.

en conclusion

Donc, cette fois, j'ai écrit sur tout, de l'installation de MongoDB aux paramètres d'authentification. Ceci est mon mémorandum. Je suis désolé, c'est difficile à lire. La prochaine fois, j'écrirai sur la façon de se connecter de PHP à MongoDB.

Le site que j'ai utilisé comme référence

Recommended Posts

Paramètres d'installation et d'authentification de MongoDB (Ubuntu18.04)
Docker sur Ubuntu18.04 sur WSL2 et instructions d'installation de VSCode
Installation et initialisation de Docker
Remarque: emplacement d'installation d'Ubuntu
Paramètres initiaux d'Ubuntu (style Mac)
Installation du client Xymon pour Ubuntu