MongoDB-Installations- und Authentifizierungseinstellungen (Ubuntu18.04)

Inhaltsverzeichnis

  1. Installieren Sie MongoDB mit apt
  2. Legen Sie die MongoDB-Authentifizierung fest (Einstellungen für Benutzername und Kennwort).

1. Installieren Sie MongoDB mit apt

1.1 Registrieren Sie das MongoDB-Repository in apt

Die neueste Version kann nicht mit dem Standard-Ubuntu 18.04-Repository installiert werden. Verwenden Sie daher das von MongoDB bereitgestellte Repository.

$ 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

Dies ist der Befehl, der den im MongoDB-Repository verwendeten GPG-Schlüssel importiert. Wenn das Ergebnis ** importiert: 1 ** anzeigt, ist es OK.

Fügen Sie als Nächstes die Repository-Informationen zu apt hinzu.

$ 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

Danach, um das hinzugefügte Repository zu erkennen

$ sudo apt update

Damit ist die Repository-Registrierung abgeschlossen.

MongoDB installieren

Führen Sie die Installation mit dem Befehl apt aus.

$ sudo apt install mongodb-org

Starten Sie MongoDB.

$ sudo systemctl start mongod

Wenn Sie den Status von MongoDB überprüfen und es aktiv ist (ausgeführt wird), wird der Start erfolgreich abgeschlossen.

$ 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

Damit ist die MongoDB-Installation abgeschlossen. Richten Sie als Nächstes die MongoDB-Authentifizierung ein.

2. MongoDB-Authentifizierungseinstellungen

Unmittelbar nach der Installation von MongoDB kann normalerweise jeder Benutzer den Inhalt der Datenbank sehen. Wenn Sie die Datenbank in Zukunft verwenden, ist es meiner Meinung nach beängstigend, die Daten offen zu halten. Lassen Sie uns also die Authentifizierung in der ersten Phase festlegen!

2.1 Aktivieren Sie die Benutzerauthentifizierung

Lassen Sie uns zunächst die Benutzerauthentifizierungseinstellung aus der Einstellungsdatei (config) aktivieren. (Standard ist deaktiviert)

Die Konfigurationsdatei befindet sich normalerweise in / etc / mongod.conf. Öffnen Sie sie daher mit einem Texteditor.

Wenn Sie es dann öffnen, kopieren Sie Folgendes wie es ist, oder ändern Sie es wie folgt, wenn diese Beschreibung in der Einstellungsdatei enthalten ist.

$ sudo vim /etc/mongod.conf

(Ich benutze vim, aber mein Lieblingstexteditor ist in Ordnung)

security:
  authorization: enabled

2.2 Super User (Admin) Einstellungen

Starten Sie mongod neu, da die Einstellungsdatei geändert wurde.

$ sudo systemctl restart mongod

Es ist kein Problem, einen Superuser als Linux-Root zu erkennen. Es ist in Ordnung, es als Administrator / Administrator zu erkennen.

MongoDB hat keine feste Benutzer-ID. Was also einen Superuser bestimmt, ist eine Rolle. Hier verwenden wir root, das als Rolle eingebaut ist.

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

Benutzer und pwd sind optional. Damit sind die Einstellungen für Benutzername und Kennwort abgeschlossen. Beenden Sie MongoDB einmal und geben Sie den Benutzernamen / das Passwort an.

Beim Beenden von MongoDB

> exit
bye

2.3 Stellen Sie eine Verbindung zu MongoDB her, indem Sie Benutzername und Passwort angeben

Oben ist der Benutzername ** mongo ** Passwort ** Passwort ** Da es angegeben wurde, wird es beim Verbinden wie folgt aussehen.

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

Wenn Sie sich erfolgreich authentifizieren können, ist dies wie folgt.

$ 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()
---

> 

Geben Sie als Test an der Eingabeaufforderung den folgenden Befehl ein.

> 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

Wenn die Datenbank so angezeigt wird, ist dies ein Beweis dafür, dass die Authentifizierung erfolgreich war.

Wenn Sie eine Verbindung zu MongoDB herstellen, ohne einen Benutzernamen anzugeben, sieht das Ergebnis wie folgt aus.

$ 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
>

Bitte beachten Sie, dass die Datenbankanzeige erst dann angezeigt wird, wenn sie nicht authentifiziert ist.

abschließend

Dieses Mal schrieb ich über alles, von der Installation von MongoDB bis zu den Authentifizierungseinstellungen. Dies ist mein Memorandum. Es tut mir leid, dass es schwer zu lesen ist. Nächstes Mal werde ich darüber schreiben, wie man eine Verbindung von PHP zu MongoDB herstellt.

Die Seite, die ich als Referenz verwendet habe

Recommended Posts

MongoDB-Installations- und Authentifizierungseinstellungen (Ubuntu18.04)
Installationsanweisungen für Docker unter Ubuntu18.04 unter WSL2 und VSCode
Docker-Installation und -Initialisierung
Hinweis: Ubuntu-Installationsort
Ubuntu (Mac-Stil) Grundeinstellungen
Xymon-Client-Installation für Ubuntu