Wie man Redis unter Ubuntu 20.04 installiert

Redis ist ein quelloffener In-Memory-Schlüssel/Wertespeicher, der als Datenbank, Cache und Message Broker eingesetzt wird. Es handelt sich um eine verteilte In-Memory-Schlüssel-Wert-Datenbank mit optionaler Haltbarkeit. Sie unterstützt gängige Datenstrukturen wie Strings, Hashes, Listen, Sets, Bitmaps, sortierte Sets, HyperlogLogs, Streams und Geodaten-Indizes mit Radiusabfragen.

In diesem Lernprogramm zeigen wir dir, wie du Redis Server unter Ubuntu 20.04 LTS installierst und konfigurierst. Wir werden zunächst den Redis Server installieren und dann die Installation sichern, um sie produktionsreif zu machen.

Voraussetzungen

Für diese Anleitung installieren wir den Redis Server auf Ubuntu 20.04 mit 1 GB RAM und 2 CPU-Kernen. Das ist nur zum Testen, für die Produktion brauchst du mehr als das.

Was wir tun werden:

  • Redis Server installieren
  • Redis Server Grundkonfiguration
  • Redis Server absichern
  • Testen

Schritt 1 – Redis Server installieren

Als Erstes aktualisieren wir alle Repositories auf dem Ubuntu-System und führen ein Upgrade aller Pakete durch.

Führe die folgenden apt-Befehle aus.

sudo apt update
sudo apt upgrade

Danach installierst du das Paket Redis-server aus dem offiziellen Ubuntu-Repository mit dem unten stehenden apt-Befehl.

sudo apt install redis-server

Sobald die Installation abgeschlossen ist, erhältst du eine Fehlermeldung, dass der Redis-Dienst nicht gestartet werden konnte. Ignoriere die Fehlermeldung und wir werden im nächsten Schritt konfigurieren.

Schritt 2 – Redis Server Grundkonfiguration

In diesem Schritt richten wir den grundlegenden Redis-Server ein. Auf einem Linux-System befindet sich die Redis-Konfiguration im Verzeichnis „/etc/redis“.

Gehe in das Verzeichnis „/etc/redis“ und bearbeite die Konfigurationsdatei „redis.conf“ mit dem Editor vim.

cd /etc/redis/
vim redis.conf

Als Erstes müssen wir die IP-Adresse festlegen, unter der der redis-Dienst läuft. Es wird nicht empfohlen, die öffentliche IP-Adresse für den Redis-Dienst zu verwenden. Wenn du den Redis-Dienst mit mehreren Clustern betreibst, solltest du das interne Netzwerk verwenden.

Ändere die „bind“-Adresse für dieses Beispiel in die IP-Adresse von localhost.

bind 127.0.0.1

Danach müssen wir einrichten, wie der Redis-Dienst auf dem Server laufen soll. Da wir einen Ubuntu-Server und systemd verwenden, müssen wir die „supervised“-Zeile in „systemd“ ändern.

supervised systemd

Speichern und schließen.

Starte nun den redis-Dienst neu und füge ihn zur Bootzeit hinzu.

systemctl restart redis-server
systemctl enable redis-server

Redis Server installieren Ubuntu 20.04

Vergewissere dich, dass kein Fehler aufgetreten ist und überprüfe den Status.

systemctl status redis-server

Redis Server Status prüfen

Das Ergebnis: Der Redis-Dienst läuft auf dem Ubuntu 20.04 Server.

Überprüfe nun den Standard-Redis-Port „6379“ mit dem Befehl netstat (siehe unten).

ss -plnt4

Du erhältst das Ergebnis, dass der Redis-Dienst auf der IP-Adresse localhost mit der Standardeinstellung „6379“ läuft.

Überprüfe nun Redis mit dem Befehl „redis-cli“ (siehe unten).

redis-cli ping
redis-cli ping "Hello Redis"

Du erhältst das unten stehende Ergebnis.

Redis Port prüfen

Wenn deine Installation korrekt ist, antwortet der Redis-Server mit „PONG“ oder mit dem Text, den du nach der Option „ping“ eingegeben hast.

Die grundlegende Installation und Konfiguration des Redis-Servers wurde erfolgreich abgeschlossen.

Schritt 3 – Absicherung der Redis-Installation

In diesem Schritt werden wir unsere Redis-Installation absichern. Es gibt 3 Dinge, die du über die Sicherung des Redis-Servers wissen musst.

1. Netzwerksicherheit

Die Netzwerksicherheit für den Redis-Server hängt mit der „bind“-Konfiguration in der Redis-Konfiguration „redis.conf“ zusammen. Es wird empfohlen, das interne private Netzwerk für deine Redis-Installation zu verwenden und nicht das öffentliche.

Gehe in das Verzeichnis „/etc/redis“ und bearbeite die Konfigurationsdatei „redis.conf“.

cd /etc/redis/
vim redis.conf

Im Abschnitt „bind“ änderst du die IP-Adresse in die IP-Adresse deines internen Netzwerks.

bind INTERNAL-IP-ADDRESS

Speichere und schließe.

Jetzt läuft der Redis-Dienst unter der ‚INTERNAL-IP-ADDRESS‘.

2. Passwort-Authentifizierung

Mit der Passwort-Authentifizierung für Redis kannst du den Zugriff auf deinen Redis-Server kontrollieren. Dies ist eine kleine Sicherheitsebene, die die Sicherheit deines Redis-Servers erhöht und die in der Standardinstallation noch nicht aktiviert ist.

Um die Passwortauthentifizierung für den Redis-Server zu aktivieren, musst du den Abschnitt „requirepass“ in der Datei „redis.conf“ auskommentieren und danach dein sicheres Passwort eingeben.

requirepass HakaseLabsRedisPasswd

Ändere„HakaseLabsRedisPasswd“ mit deinem sicheren Passwort. Jetzt ist die Passwortauthentifizierung für Redis aktiviert.

3. Deaktivieren des gefährlichen Redis-Befehls

Redis bietet eine Funktion zum Deaktivieren bestimmter Redis-Befehle. Mit dieser Funktion kannst du einige gefährliche Befehle umbenennen oder deaktivieren, z. B. den Befehl „FLUSHALL“ zum Löschen aller Daten, den Befehl „CONFIG“ zum Einrichten von Konfigurationsparametern über das Redis CLI usw.

Um einen Redis-Befehl zu ändern oder zu deaktivieren, kannst du die Option „rename-command“ verwenden. Bearbeite die Redis-Konfigurationsdatei „redis.conf“ und füge einige Konfigurationen hinzu.

# rename-command COMMAND "CUSTOM"
rename-command FLUSHALL "DELITALL"
rename-command CONFIG "MYSERVERCONF"

Speichere und schließe.

Wenn alles fertig ist, starte den Redis-Dienst mit dem unten stehenden systemctl-Befehl neu.

systemctl restart redis-server

Damit ist die grundlegende Redis-Sicherheit für die Absicherung der Redis-Installation auf unserem Host eingerichtet.

Redis Server konfigurieren

Wenn du noch weitere Überlegungen anstellst, brauchst du vielleicht auch die Unterstützung für die Datenverschlüsselung von Redis sowie die sichere Codierung auf der Anwendungsseite.

Schritt 4 – Testen

In diesem Schritt testen wir unsere Redis-Server-Installation mit der Befehlszeile „redis-cli“.

1. Host und Authentifizierung testen

Verbinde dich mit dem Redis-Server mit dem Befehl redis-cli, indem du den Hostnamen/ die IP-Adresse und den Port des Redis-Servers angibst.

redis-cli -h 127.0.0.1 -p 6379

Ersetze„127.0.0.1“ durch deine eigene IP-Adresse.

Sobald du mit dem Server verbunden bist, versuche den Ping-Befehl.

ping
ping "Hello Redis"

Jetzt erhältst du das unten stehende Ergebnis.

Redis-Authentifizierung testen

Du bekommst eine Fehlermeldung, weil du dich authentifizieren musst, bevor du einen Befehl in der Redis CLI-Shell aufrufst.

Führe den folgenden Befehl aus, um dich gegenüber dem Redis-Server zu authentifizieren.

AUTH HakaseLabsRedisPasswd

Sobald du authentifiziert bist, kannst du den Ping-Befehl ausführen und erhältst eine Antwort vom Redis-Server.

ping
ping "Hello Redis"

Unten siehst du das Ergebnis, nachdem du dich beim Redis-Server authentifiziert hast.

Redis-Authentifizierung testen

2. Deaktivierte/umbenannte Befehle testen

Führe alle Befehle, die wir umbenannt haben, in der Shell aus und du wirst einen Fehler erhalten.

FLUSHALL
CONFIG

Unten siehst du das Fehlerergebnis für diese Befehle.

Redis Rename Befehl testen

Führe als Nächstes die „CUSTOM“-Befehle für jeden aus.

Erstelle einen neuen Schlüssel mit dem Befehl redis-cli (siehe unten).

SET Name "Hakase Labs"
SET Blog "Howtoforge.com"

Keys *

Lösche nun alle Schlüssel und Daten mit dem umbenannten „FLUSHALL“-Befehl „DELITALL“.

DELITALL

Mit dem Befehl „CONFIG“ kannst du versuchen, neue Werte für die Redis-Server-Konfiguration abzurufen oder einzurichten. Der Befehl ‚CONFIG‘ wurde in ‚MYSERVERCONF‘ umbenannt.

MYSERVERCONF get bind
MYSERVERCONF get requirepass

Unten siehst du das Ergebnis dieses neuen, umbenannten Befehls.

Redis Rename Befehl testen

Die Grundinstallation von Redis Server unter Ubuntu 20.04 ist abgeschlossen und die grundlegende Sicherheit für Redis Server wurde eingerichtet.

Referenz

Das könnte dich auch interessieren …