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 AlmaLinux installieren und konfigurieren Betriebssystem.
Voraussetzungen
- Empfohlenes Betriebssystem: AlmaLinux 8.
- Benutzerkonto: Ein Benutzerkonto mit sudo-Privilegien oder Root-Zugriff (su-Befehl) .
Betriebssystem aktualisieren
Aktualisieren Sie Ihr AlmaLinux Betriebssystem, um sicherzustellen, dass alle vorhandenen Pakete auf dem neuesten Stand sind:
sudo dnf upgrade --refresh -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@localhost ~]$ sudo whoami
root
Wenn Sie noch kein sudo-Benutzerkonto eingerichtet haben und dies gerne tun würden, besuchen Sie unser Tutorial zum So fügen Sie einen Benutzer zu Sudoers auf AlmaLinux hinzu .
So verwenden Sie das Root-Konto verwenden Sie den folgenden Befehl mit dem Root-Passwort, um sich anzumelden.
su
Redis installieren
Standardmäßig kommt Redis im AlmaLinux-Standard-App-Stream. Sie haben jedoch die Möglichkeit, Redis Serie 5 oder 6 zu installieren. Standardmäßig ist bei den meisten Linux-Distributionen, einschließlich AlmaLinux, Serie 5 ausgewählt.
Um die verfügbaren Module zur Installation von Redis anzuzeigen, verwenden Sie den folgenden Befehl in Ihrem Terminal.
sudo dnf module list redis
Beispielausgabe:
Wie Sie der Ausgabe entnehmen können, ist Serie 5 die Standardeinstellung mit dem Flag [d] in der Stream-Spalte . Vielleicht möchten Sie die neuere Version von Redis installieren. Verwenden Sie dazu den folgenden Befehl, um die Versionen auszutauschen.
sudo dnf module enable redis:6
Beispielausgabe:
Geben Sie "Y" ein , und drücken Sie dann die "ENTER-TASTE" um mit der Installation fortzufahren
Führen Sie den Befehl dnf module list redis erneut aus Um den neuen Standard zu sehen, installieren Sie Redis mit dem folgenden Tutorial.
Wenn Sie Bedenken haben oder Redis Series 5 benötigen, müssen Sie den vorhandenen Redis Series 6-Build deinstallieren und die Modulliste mit dem folgenden Befehl auf die Standardeinstellungen zurücksetzen.
sudo dnf module reset redis -y
Beispielausgabe bei Erfolg:
Complete!
Führen Sie in Ihrem Terminal den folgenden Befehl aus.
sudo dnf install redis
Beispielausgabe:
Geben Sie „J“ ein drücken Sie dann die "ENTER-TASTE" um mit der Installation fortzufahren.
Überprüfen Sie, ob Redis korrekt installiert wurde, indem Sie die Version und den Build-Befehl überprüfen:
redis-cli --version
Beispielausgabe:
redis-cli 6.0.9
Standardmäßig ist Redis beim Booten nicht aktiviert oder nach der Installation aktiviert.
So starten Sie den Redis-Dienst:
sudo systemctl start redis
So aktivieren Sie den automatischen Start des Redis-Dienstes beim Systemstart:
sudo systemctl enable redis
Ü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
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:
joshua 8492 5522 0 00:44 pts/0 00:00:00 grep --color=auto 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 AlmaLinux-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
Firewalld für Redis konfigurieren
Standardmäßig sind keine Regeln für Redis eingerichtet. Dies bedeutet, dass Sie Zulassungsregeln erstellen müssen, die zum Stoppen von Angriffen auf Redis unerlässlich sind. Wenn Redis nicht gesichert wird, führt dies später zu Problemen. Überspringen Sie dies also nicht, es sei denn, Sie haben andere Mittel zum Schutz Ihrer Redis-Installation.
Fügen Sie zunächst eine neue dedizierte Zone für die Redis-Firewalld-Richtlinie hinzu:
sudo firewall-cmd --permanent --new-zone=redis
Geben Sie als Nächstes die zulässigen IP-Adressen an, die auf Redis zugreifen dürfen.
sudo firewall-cmd --permanent --zone=redis --add-source=1.2.3.4
Ersetzen Sie 1.2.3.4 durch die IP Adresse, die der Zulassungsliste hinzugefügt wird.
Wenn Sie mit dem Hinzufügen der IP-Adressen fertig sind, öffnen Sie den Port des Redis. Standardmäßig ist dies TCP-Port 6379 .
sudo firewall-cmd --permanent --zone=redis --add-port=6379/tcp
Beachten Sie, dass Sie den Standardport in Ihrer Konfigurationsdatei ändern können, wenn Sie die Firewall-Port-Öffnungsregel oben auf den neuen Wert ändern.
Nachdem Sie diese Befehle ausgeführt haben, laden Sie die Firewall neu, um die neuen Regeln zu implementieren:
sudo firewall-cmd --reload
Beispielausgabe bei Erfolg:
success
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
So entfernen (deinstallieren) Sie Redis
Um Redis zu entfernen, verwenden Sie den folgenden Befehl in Ihrem Terminal.
sudo dnf autoremove redis -y
Dadurch wird Redis sofort von Ihrem System entfernt.