Einführung
Redis ist ein Open-Source-In-Memory-Datenspeicher. Es wird als flexible, hochverfügbare Schlüsselwertdatenbank verwendet, die ein hohes Leistungsniveau aufrechterhält.
Abgesehen von seiner Leistung und Flexibilität zeichnet sich Redis durch seine breite Sprachunterstützung, hohe Verfügbarkeit und automatische Partitionierung aus.
In diesem Tutorial erfahren Sie, wie Sie Redis unter Ubuntu 20.04/18.04 installieren.
Voraussetzungen
- Ein System, auf dem Ubuntu 20.04 (oder Ubuntu 18.04) ausgeführt wird
- Zugriff auf ein Terminalfenster/eine Befehlszeile
- Sudo oder root Privilegien auf lokalen /Remote-Rechnern
Installieren und sichern Sie Redis auf Ubuntu
Die folgenden Schritte erklären, wie man Redis auf Ubuntu 20.04 installiert. Sie können diese Anleitung auch unter Ubuntu 18.04 verwenden.
Abgesehen von der Installation und Einrichtung der Grundkonfiguration behandelt die Anleitung, wie man eine Passwort-Authentifizierung hinzufügt, Redis an localhost bindet und gefährliche Befehle umbenennt.
Schritt 1:Redis installieren
Befolgen Sie die unten aufgeführten Schritte, um Redis auf Ihrem Ubuntu-System zu installieren und zu konfigurieren.
1. Beginnen Sie mit der Aktualisierung des Paket-Repositorys:
sudo apt update
2. Installieren Sie dann Redis mit dem Befehl:
sudo apt install redis-server
Schritt 2:Redis konfigurieren
1. Ändern Sie nach Abschluss der Installation die Redis-Konfigurationsdatei. Öffnen Sie dazu die Datei mit einem Texteditor Ihrer Wahl (wir verwenden nano):
sudo nano /etc/redis/redis.conf
2. Suchen Sie als Nächstes die Zeile, die supervised
angibt Richtlinie. Standardmäßig ist diese Zeile auf no
gesetzt . Um Redis jedoch als Dienst zu verwalten, setzen Sie die überwachte Direktive auf systemd
(Init-System von Ubuntu).
3. Speichern Sie die Änderungen und schließen Sie die Datei.
4. Starten Sie abschließend den Redis-Dienst neu, indem Sie Folgendes ausführen:
sudo systemctl restart redis.service
Schritt 3:Überprüfen Sie die Redis-Installation
Um sicherzustellen, dass Sie Redis korrekt eingerichtet haben, testen Sie, ob der Dienst ausgeführt wird. Testen Sie auch die Verbindung zum Server und ob Sie ein Schlüssel-Wert-Paar festlegen können.
Schritt 3.1:Überprüfen Sie den Status des Redis-Dienstes
Überprüfen Sie den Status des Redis-Dienstes, indem Sie den folgenden Befehl ausführen:
sudo systemctl status redis
Die Ausgabe sollte anzeigen, dass der Dienst aktiv (und ausgeführt) ist , wie im Bild unten.
Schritt 3.2:Überprüfen Sie die Redis-Verbindung
Sie sollten auch die Verbindung mit dem Redis-Server mit redis-cli überprüfen Werkzeug. Um sich mit diesem Befehlszeilen-Client zu verbinden, geben Sie Folgendes in das Terminalfenster ein:
redis-cli
Dadurch gelangen Sie zum redis-cli Eingabeaufforderung. Führen Sie zum Testen der Konnektivität Folgendes aus:
ping
Die Ausgabe sollte antworten mit:
PONG
Schritt 3.3:Testen Sie die Einrichtung von Schlüssel-Wert-Paaren
Da Redis eine In-Memory-Schlüsselwert-NoSQL-Datenbank ist, möchten Sie vielleicht auch testen, ob sie zugewiesene Werte basierend auf dem angegebenen Schlüssel abruft.
Legen Sie zunächst einen Schlüssel mit dem Befehl set fest. In diesem Beispiel ist der Schlüssel als key1
gekennzeichnet und sollte den Wert "You have successfully set up a key-value pair!"
haben .
Führen Sie dazu den folgenden Befehl aus:
set key1 "You have successfully set up a key-value pair!"
2. Sobald Sie Enter gedrückt haben , die Eingabeaufforderung antwortet mit OK .
3. Prüfen Sie nun, ob Sie dem Schlüssel mit get
erfolgreich den angegebenen Wert zugewiesen haben Befehl:
get key1
4. Die Ausgabe sollte mit der Nachricht antworten, die Sie im ersten Schritt als Wert angehängt haben.
5. Um die Redis-Shell zu verlassen, führen Sie Folgendes aus:
quit
Schritt 4:Redis sichern
Schritt 4.1:Redis-Authentifizierung einrichten
Redis enthält eine Authentifizierungsfunktion als zusätzliche Sicherheitsebene. Die Funktion ist standardmäßig nicht aktiviert. Daher müssen Sie die Konfigurationsdatei ändern, um sie zu aktivieren.
1. Öffnen Sie zunächst die Redis-Konfigurationsdatei zum Bearbeiten:
sudo nano /etc/redis/redis.conf
2. Suchen Sie dann requirepass
Richtlinie unter der SICHERHEIT Abschnitt und kommentieren Sie ihn aus (indem Sie #
entfernen ).
3. Nachdem Sie die Zeile auskommentiert haben, ersetzen Sie foobared
mit dem Passwort Ihrer Wahl.
4. Speichern und schließen Sie die Datei.
5. Starten Sie den Redis-Dienst neu:
sudo systemctl restart redis.service
Sobald Sie Redis so konfiguriert haben, dass eine Authentifizierung erforderlich ist, wird es jede Abfrage verweigern, bis Sie das erforderliche Passwort eingeben.
Wenn Sie zum Beispiel zur redis-cli wechseln Eingabeaufforderung eingeben und versuchen, den Ping-Test auszuführen, zeigt die Ausgabe die folgende Meldung an:(error) NOAUTH Authentication required.
Die einzige Möglichkeit, in einem solchen Fall mit der Arbeit in Redis zu beginnen, besteht darin, das in der Konfigurationsdatei definierte Passwort anzugeben.
Verwenden Sie den Befehl:
auth [your_password]
Wenn die Ausgabe mit OK
antwortet Sie können loslegen.
Schritt 4.2:Redis an Localhost binden
Wenn Sie die Software gemäß den oben beschriebenen Schritten installiert haben, sollte Redis nur von localhost aus zugänglich sein. Eine solche Zugriffsbeschränkung ist eine Frage der Netzwerksicherheit.
Möglicherweise haben Sie jedoch die Standardeinstellungen geändert und möchten nun Verbindungen auf localhost beschränken.
Öffnen Sie dazu die Redis-Konfigurationsdatei zum Bearbeiten:
sudo nano /etc/redis/redis.conf
Scrollen Sie nach unten und suchen Sie das NETZWERK Abschnitt in der Datei. Entkommentieren Sie dann bind 127.0.0.1 ::1
Zeile (durch Entfernen von #
), wie im Bild unten.
Stellen Sie nach dem Speichern und Verlassen der Datei sicher, dass Sie den Dienst neu starten mit:
sudo systemctl restart redis
Damit haben Sie es erfolgreich geschafft, Redis an localhost zu binden und den Zugriff auf andere Verbindungen einzuschränken.
Schritt 4.3:Gefährliche Befehle umbenennen oder beenden
Eine andere Möglichkeit, Ihre Daten zu schützen, besteht darin, bestimmte Befehle zu deaktivieren oder sie umzubenennen, damit sie nicht erraten werden können. Dies ist eine nützliche Sicherheitsfunktion, die normale Benutzer daran hindern kann, Befehle zu verwenden, die dem System schaden könnten.
Um solche Befehle zu deaktivieren oder umzubenennen, öffnen Sie die Redis-Konfigurationsdatei:
sudo nano /etc/redis/redis.conf
Suchen Sie die SICHERHEIT und scrollen Sie nach unten zum Abschnitt #Command renaming
Linie. Dort finden Sie Beispiele zum Umbenennen oder Beenden von Befehlen.
Zum Beispiel, um CONFIG
umzubenennen Befehl, fügen Sie die Zeile hinzu:
rename-command CONFIG [new_command_name]
In diesem Beispiel ist die Datei config
Befehl wurde in sys_admin_config_836
umbenannt (etwas, was ein normaler Benutzer nicht erraten könnte).
Um bestimmte Befehle zu entfernen, können Sie sie deaktivieren (killen). Benennen Sie dazu den gefährlichen Befehl in einen leeren String um.
Wenn Sie also die config
deaktivieren möchten Befehl, fügen Sie die Zeile hinzu:
rename-command CONFIG ""
Nachdem Sie diese Änderungen vorgenommen haben, stellen Sie sicher, dass Sie die Änderungen speichern und den Redis-Dienst neu starten.