Redis ist ein Open-Source (BSD-lizenzierter) In-Memory-Schlüsselwert-Datenstrukturspeicher, der verwendet wird als Datenbank, Cache und Nachrichtenbroker. Redis unterstützt Datenstrukturen wie Strings, Hashes, Listen, Sets, sortierte Sets mit Bereichsabfragen, Bitmaps, Hyperlog-Protokolle, Geoindizes und Streams. Redis bietet auch Hochverfügbarkeit mit Redis Sentinel-Softwarelogik und erstellt mit Redis Cluster eine automatische Partitionierung über Redis-Knoten hinweg.
Am Ende des Leitfadens erfahren Sie, wie Sie Redis auf Ihrem Debian 11 Bullseye installieren und konfigurieren Betriebssystem.
Voraussetzungen
- Empfohlenes Betriebssystem: Debian 11 Bullseye oder höher
- Benutzerkonto: Ein Benutzerkonto mit sudo oderRoot-Zugriff.
Betriebssystem aktualisieren
Aktualisieren Sie Ihr Debian Betriebssystem, um sicherzustellen, dass alle vorhandenen Pakete auf dem neuesten Stand sind:
sudo apt update && sudo apt upgrade -y
Das Tutorial verwendet den sudo-Befehl und vorausgesetzt, Sie haben den Sudo-Status . So überprüfen Sie den Sudo-Status Ihres Kontos:
sudo whoami
Beispielausgabe, die den Sudo-Status zeigt:
[joshua@debian ~]$ sudo whoami
root
Wenn Sie kein sudo-Benutzerkonto eingerichtet haben und dies gerne tun würden, besuchen Sie unser Tutorial unter So fügen Sie einen Benutzer zu Sudoers auf Debian hinzu.
So verwenden Sie das Root-Konto verwenden Sie den folgenden Befehl mit dem Root-Passwort, um sich anzumelden.
su
Root- oder Sudo-Zugriff
Wenn Sie Ihr Konto beim Start mit Debian im Vergleich zu anderen Distributionen erstellen, erhält es standardmäßig nicht automatisch den Sudoers-Status. Sie müssen entweder Zugriff auf das Root-Passwort haben um den su-Befehl zu verwenden oder besuchen Sie unser Tutorial zum Hinzufügen eines Benutzers zu Sudoern unter Debian.
Redis installieren
Standardmäßig ist die Redis 5-Serie in den Debian 11-Repositories enthalten. Geben Sie den folgenden Befehl ein, um den Redis-Dienst zu installieren:
sudo apt install redis-server
Beispielausgabe:
Geben Sie Y, ein drücken Sie dann die ENTER-TASTE um mit der Installation fortzufahren.
Überprüfen Sie, ob Redis korrekt installiert wurde, indem Sie dies mit dem Befehl apt-cache policy überprüfen:
sudo apt-cache policy redis-server
Beispielausgabe:
Überprüfen Sie als Nächstes den Status und vergewissern Sie sich, dass Redis ausgeführt wird und, was noch wichtiger ist, fehlerfrei ist:
systemctl status redis-server
Beispielausgabe:
Beachten Sie, dass Reddis localhost auf dem standardmäßigen Port 6379 aktiv abhört . Um diesen Typ zu bestätigen, Folgendes:
ps -ef | grep redis
Beispielausgabe:
root@debian:/home/joshua# ps -ef | grep redis
redis 5048 1 0 09:23 ? 00:00:00 /usr/bin/redis-server 127.0.0.1:6379
root 5563 3653 0 09:25 pts/0 00:00:00 grep redis
Während Sie jetzt testen, ob alles funktioniert und betriebsbereit ist, ist es eine gute Idee, eine Verbindung zu Ihrem Redis-Dienst herzustellen und dann einen Ping-Test durchzuführen.
Um den Test durchzuführen, geben Sie den folgenden Befehl ein:
redis-cli
Sobald die Verbindung hergestellt ist, zeigt Ihr Terminal (127.0.0.1:6379) an. Pingen Sie nun den Redis-Dienst wie folgt:
ping
Beispielausgabe:
127.0.0.1:6379> ping
PONG
Geben Sie Folgendes ein, um die Redis-Instanz zu beenden:
exit
Herzlichen Glückwunsch, Sie haben Redis auf Ihrem Debian 11 Bullseye-Betriebssystem installiert und überprüft, ob es betriebsbereit ist. Als nächstes können Sie Redis konfigurieren.
So konfigurieren Sie Redis
Redis kann auf verschiedene Arten konfiguriert werden. Die bemerkenswerteste Aktion, warum Menschen Redis verwenden, ist für Caching-Zwecke. Dazu müssen Sie die “/etc/redis/redis.conf öffnen ” Datei mit dem Nano-Editor.
sudo nano /etc/redis.conf
Max. Arbeitsspeicher konfigurieren
Fügen Sie nun Folgendes am Ende der Datei hinzu. Beachten Sie, dass Sie den Speicherwert nach Belieben oder, was noch wichtiger ist, optimal für Ihre Webanwendung und Serverhardware ändern können.
maxmemory 500mb
maxmemory-policy allkeys-lru
Wie Sie sehen können, hat die Einstellung im Handbuch 500 MB für Redis reserviert, da es sich auf einem dedizierten Host mit viel RAM befindet. Sobald die 500 MB erschöpft sind, entfernt Redis alle Schlüssel gemäß dem LRU-Algorithmus.
Netzwerkzugriff konfigurieren
Eine weitere Option besteht darin, alle Dienste abzuhören oder eine IP-Adresse/ein Subnetz festzulegen, wenn Ihnen Ihr Redis-Dienst gefällt.
Suchen Sie zuerst Zeile 69 in der Konfigurationsdatei.
Um zunächst alle Netzwerkschnittstellen abzuhören, kommentieren Sie „#“ die Zeile bindet an IP:
Beispiel:
# bind 127.0.0.1 ::1
Alternative Methode:
bind 0.0.0.0/0
Beachten Sie, dass Ihr internes Netzwerk vertrauenswürdig ist und angemessene Sicherheitskontrollen vorhanden sind.
Stellen Sie zum Binden an eine IP-Adresse sicher, dass es sich um eine statische IP-Adresse handelt.
Beispiel:
bind 192.150.5.2
Um ein Netzwerk-Subnetz zu binden.
Beispiel:
bind 192.150.5.0/24
Beachten Sie, dass es dringend empfohlen wird, ein Passwort festzulegen, wenn Sie ein Subnetz verwenden oder auf alle Schnittstellen zugreifen, um darauf zu hören.
Passwort konfigurieren
Eine weitere Sicherheitsfunktion und zur weiteren Härtung von Redis ist das Festlegen eines Kennworts für die Redis-Instanz.
Navigieren Sie zu Zeile 507 und kommentieren Sie "# requiredpass" aus Zeile und legen Sie ein Passwort fest.
Beispiel:
requiredpass APASSWORD
Stellen Sie sicher, dass dieses Passwort robust ist und Zahlen, Buchstaben, Sonderzeichen und Großbuchstaben zufällig sind, da Redis-Server sehr gut auf einer anständigen Box brutal erzwungen werden können.
Verwenden Sie als Nächstes beim Aufrufen der Redis-CLI den folgenden Befehl mit dem Kennwort, das für den Benutzer festgelegt wurde.
Beispiel:
auth THEPASSWORDSET
„DER PASSWORTSATZ“ ist das erstellte Passwort.
Wenn sich ein Benutzer nicht anmelden kann, wird ihm die folgende Fehlermeldung angezeigt.
(error) NOAUTH Authentication required.
Wenn sich ein Benutzer erfolgreich anmeldet, wird ihm die folgende Meldung angezeigt.
OK
Wenn Sie fertig sind, speichern Sie Ihre Änderungen STRG+O Beenden Sie dann STRG+X . Starten Sie nun den Redis-Dienst neu, indem Sie Folgendes eingeben:
sudo systemctl restart redis-server
Optional – Redis UFW-Regeln konfigurieren
Wenn Sie UFW installiert haben, müssen Sie UFW-Zulassungsregeln auf dem TCP-Port 6379 erstellen. Abhängig von Ihrer Installation und Ihren Anforderungen, ob Sie ein Einzel- oder ein Cluster-Netzwerk verwenden.
Wenn Sie UFW installieren möchten, verwenden Sie zunächst den folgenden Befehl:
sudo apt install ufw -y
Aktivieren Sie nach der Installation die Firewall.
sudo ufw enable
Dadurch wird die Firewall gestartet und der Neustart des Systems ermöglicht. Standardmäßig verweigern die Regeln alle eingehenden und lassen alle ausgehenden zu.
Befolgen Sie als Nächstes die folgenden Beispiele und wählen Sie die Optionen aus oder ändern Sie sie. Dies wird dringend empfohlen, um Redis zu härten.
Zusätzliche Netzwerk-IP-Serverinstanz:
sudo ufw allow proto tcp from <ip address> to any port 6379
Cluster-Netzwerk mit vielen Instanzen:
sudo ufw allow proto tcp from <ip address>/24 to any port 6379
Beachten Sie, dass die zweite UFW-Regel eine Subnetzregel ist. Beachten Sie, dass das interne Netzwerk sicher und vertrauenswürdig ist, bevor Sie es zulassen.
Nun, wie Sie zu Beginn des Handbuchs getestet haben, indem Sie Ihren Redis-Dienst anpingten, um sicherzustellen, dass er betriebsbereit ist, können Sie die Firewall-Regeln und IP-Änderungen ausprobieren, indem Sie die „redis-cli“ verwenden Befehl:
redis-cli -h <ip address> ping
Bei korrekter Einrichtung sollte die Ausgabe sein:
pong