Redis ist ein beliebter In-Memory-Schlüsselwertspeicher, der als NoSQL-Schlüsselwertdatenbank, Message Broker sowie als Caching-Lösung verwendet werden kann. Es ist bekannt für seine Flexibilität, Skalierbarkeit, nahtlose Replikation, Einfachheit und Benutzerfreundlichkeit. Redis wird häufig in verschiedenen Bereichen wie maschinellem Lernen, Echtzeitanalysen, Chat, Messaging und Gaming-Bestenlisten verwendet.
Redis allein hat keine robusten Funktionen, Sie können Redis jedoch immer noch optimieren, um zusätzliche Sicherheit zu bieten und nicht autorisierte Benutzer abzuwehren.
In diesem Tutorial lernen wir, wie man Redis installieren und sichern an Rocky Linux 8 oder AlmaLinux 8.
Schritt 1: Installieren Sie Redis auf Rocky Linux oder AlmaLinux 8
Redis ist in den AppStream-Repositorys verfügbar, wir können den DNF-Paketmanager verwenden, um es zu installieren.
Führen Sie den folgenden DNF-Befehl aus, um Redis zu installieren:
$ sudo dnf install redis
Nach der Installation müssen wir eine geringfügige Änderung an der Konfigurationsdatei vornehmen, um die Art und Weise zu ändern, wie Redis ausgeführt wird. Greifen Sie auf die Redis-Konfigurationsdatei zu:
$ sudo vim /etc/redis.conf
Scrollen Sie und suchen Sie die beaufsichtigt Richtlinie. Auf diese Weise können Sie das init-System nutzen, um Redis auszuführen und effektiv zu verwalten. Standardmäßig ist dies eingestellt auf Nein. Da Rocky / AlmaLinux auf dem systemd-init-System läuft, setzen Sie den Wert auf System wie angezeigt.
Und das ist es. Speichern Sie also die Änderungen und beenden Sie den Texteditor. Redis wird standardmäßig nicht automatisch gestartet und muss daher wie folgt gestartet werden.
$ sudo systemctl start redis
Aktivieren Sie außerdem, dass der Dienst jedes Mal gestartet wird, wenn das System eingeschaltet oder neu gestartet wird.
$ sudo systemctl enable redis
Führen Sie den Befehl aus, um zu bestätigen, dass Redis ausgeführt wird:
$ sudo systemctl status redis

Um zu testen, ob Redis erfolgreich installiert wurde, senden Sie eine Ping-Nachricht, auf die Sie ‘PONG“ als Antwort.

Schritt 2: Redis mit einem Passwort sichern
Sicherheit hat für jedes Datenbanksystem eine hohe Priorität, und Redis bildet da keine Ausnahme. In diesem Schritt gehen wir noch einen Schritt weiter und ermöglichen die Authentifizierung, um Redis abzusichern und Unbefugte abzuwehren.
Greifen Sie erneut auf die Konfigurationsdatei zu.
$ sudo vim /etc/redis.conf
Suchen Sie die erfordernpass Richtlinie. Dies ist die Anweisung, die wir so konfigurieren werden, dass sich Clients authentifizieren müssen, bevor sie auf die Datenbank zugreifen.
Entkommentieren Sie die Anweisung und geben Sie Ihr eigenes Passwort ein.
requirepass strong_password

Um die Änderungen zu übernehmen, starten Sie die Redis-Datenbank neu.
$ sudo systemctl restart redis
Um zu testen, ob die Authentifizierung aktiviert wurde, greifen Sie auf den Redis-Client zu:
$ redis-cli
Versuchen Sie nun, einen Schlüssel auf einen Wert zu setzen:
$ set keystudent Mike
Dies ergibt den angezeigten Fehler. Dies zeigt, dass eine Authentifizierung erforderlich ist.
(error) NOAUTH Authentication required.

Um sich zu authentifizieren, rufen Sie die . auf auth Schlüsselwort gefolgt vom Passwort. Redis bestätigt das Passwort und ermöglicht es Ihnen, fortzufahren.

Nach der Authentifizierung können Sie Ihre Schlüssel-Wert-Paare mit dem Befehl set angeben. Um den dem Schlüssel zugewiesenen Wert abzurufen, rufen Sie den Befehl auf:
get keystudent

Um Redis zu beenden, geben Sie einfach quit ein und drücken Sie die EINGABETASTE.
quit
Schritt 3: Festlegen des richtigen Besitzes und der Berechtigungen für das Datenverzeichnis
Ein weiterer wichtiger Aspekt, den Sie berücksichtigen sollten, sind die Eigentümerschaft und die Berechtigungen, die Sie beachten müssen, um sicherzustellen, dass Ihre Redis-Installation robust ist. Dies beinhaltet, dass nur der Benutzer, der Zugriff auf Redis benötigt, die Berechtigung zum Lesen seiner Daten hat – und dass der Benutzer in diesem Fall der Benutzer ist wiederholen Nutzer.
Sie können damit beginnen, dass Sie bestätigen, dass das Redis-Datenverzeichnis über den richtigen Verzeichnisbesitz und die richtigen Berechtigungen verfügt.
$ ls -l /var/lib | grep redis

Aus der Ausgabe können wir sehen, dass das Redis-Datenverzeichnis dem Redis-Benutzer gehört und der Redis-Gruppe der Zugriff gewährt wird. Darüber hinaus sind die Berechtigungen des Verzeichnisses auf eine Oktalnotation von 750 festgelegt. Dies sind die empfohlenen Einstellungen für den Besitz und die Berechtigungen des Redis-Ordners.
Wenn das Redis-Datenverzeichnis unsichere Berechtigungen hat, beispielsweise wenn es für globale Benutzer lesbar ist, müssen Sie sicherstellen, dass nur der Redis-Benutzer und die Redis-Gruppe Zugriff auf den Ordner und seinen Inhalt haben.
Führen Sie dazu den Befehl aus:
$ sudo chmod 750 /var/lib/redis
Stellen Sie außerdem sicher, dass die Redis-Konfigurationsdatei Eigentum des wiederholen Benutzer mit der sekundären Gruppe von root. Stellen Sie außerdem sicher, dass es über die Oktal-Berechtigungen von . verfügt 640 wie angezeigt.
$ ls -l /etc/redis.conf
Die Oktalnotation von 640 sorgt dafür, dass nur die wiederholen und Wurzel Benutzer kann die Konfigurationsdatei lesen. Dies ist wichtig, da wir in Schritt 2 ein verschlüsseltes Passwort mit dem konfiguriert haben erfordernpass Richtlinie. Dies bedeutet, dass kein anderer Benutzer außer Redis- und Root-Benutzern die Datei lesen und auf das Passwort zugreifen kann.

Um die Sicherheit weiter zu erhöhen, stellen Sie sicher, dass die Konfigurationsdatei dem Redis-Benutzer und der Redis-Gruppe gehört.
$ sudo chown redis:redis /etc/redis.conf
Legen Sie außerdem die Berechtigungen der Konfigurationsdatei so fest, dass nur der Redis-Besitzer darauf lesen und schreiben kann.
$ sudo chmod 600 /etc/redis.conf
Um die soeben vorgenommenen Änderungen zu übernehmen, starten Sie den Redis-Server neu.
$ sudo systemctl restart redis
Schritt 4: Redis für den Fernzugriff konfigurieren
Manchmal müssen Sie möglicherweise von einem anderen System aus remote auf Ihre Redis-Instanz zugreifen. Gehen Sie dazu zur Konfigurationsdatei.
$ sudo vim /etc/redis.conf
Suchen Sie die binden Richtlinie. Standardmäßig ist dies so eingestellt, dass es auf localhost hört.
bind 127.0.0.1
Kommentieren Sie es und geben Sie die private IP des Remote-Servers an.
bind private_ip
Wenn Sie über das öffentliche Internet darauf zugreifen, können Sie es auf einstellen 0.0.0.0 um es an öffentliche IP-Adressen zu binden.
bind 0.0.0.0
Als nächstes ändern protected-mode yes
zu protected-mode no
protected-mode no
Starten Sie dann den Redis-Server neu, um die Änderungen zu übernehmen.
$ sudo systemctl restart redis
Der andere verbleibende Schritt besteht darin, die Firewall so zu konfigurieren, dass der Zugriff auf unseren Redis-Server ermöglicht wird.
Schritt 5: Konfigurieren der Firewall für redis
Wenn Firewalld aktiv ist und ausgeführt wird, sollten Sie es so einstellen, dass Port 6379 zugelassen wird, der der Port ist, auf dem Redis lauscht.
$ sudo firewall-cmd --add-port=6379/tcp --permanent
$ sudo firewall-cmd --reload
Perfekt! Um nun zu testen, ob wir remote auf die Redis-Instanz zugreifen können, verwenden Sie die Option -h gefolgt von der IP-Adresse des Redis-Servers
$ redis-cli -h server_IP
In diesem Fall:
$ redis-cli -h 10.128.0.44

Fazit
Und das war’s, wir haben Redis erfolgreich auf Rocky Linux 8 oder AlmaLinux 8 installiert und gesichert. Ihr Feedback zu diesem Handbuch ist sehr willkommen.