- Veröffentlicht am
- • How2-Tipps
Redis auf Debian 13 installieren und sicher konfigurieren – Schritt-für-Schritt Anleitung
- Autor
-
-
- Benutzer
- tmueller
- Beiträge dieses Autors
- Beiträge dieses Autors
-
Um sicherzustellen, dass Redis nicht öffentlich erreichbar ist, solltest du mehrere Schutzmechanismen kombinieren. Redis darf niemals direkt aus dem Internet erreichbar sein.
Hier ist eine vollständige Schritt-für-Schritt-Anleitung für Debian 13:
Bind-Adresse korrekt setzen (wichtigster Schritt)
Öffne die Redis-Konfiguration:
sudo nano /etc/redis/redis.conf
Suche nach:
bind 127.0.0.1 ::1
Stelle sicher, dass dort nur lokale Adressen stehen.
✅ Korrekt (nur lokal erreichbar):
bind 127.0.0.1 ::1
❌ Falsch (öffentlich erreichbar):
bind 0.0.0.0
Falls 0.0.0.0 gesetzt ist → ändern!
Protected Mode aktivieren
In derselben Datei prüfen:
protected-mode yes
Falls dort no steht → auf yes ändern.
Protected Mode blockiert externe Verbindungen, wenn keine Authentifizierung gesetzt ist.
Prüfen, auf welchen Interfaces Redis lauscht
Nach einem Neustart:
sudo systemctl restart redis-server
Dann prüfen:
sudo ss -tulpen | grep 6379
Sicheres Ergebnis sieht etwa so aus:
127.0.0.1:6379
Wenn du hier deine öffentliche Server-IP siehst → Redis ist öffentlich erreichbar!
Firewall-Regeln prüfen (UFW)
Falls du UFW nutzt:
sudo ufw status
Redis-Port 6379 sollte nicht offen sein.
❌ Unsicher:
6379/tcp ALLOW Anywhere
Falls vorhanden:
sudo ufw delete allow 6379
Optional kannst du Redis nur intern erlauben:
sudo ufw allow from 192.168.0.0/24 to any port 6379
Extern testen (sehr wichtig)
Von einem anderen Server oder deinem lokalen Rechner:
telnet SERVER-IP 6379
Oder:
nc -zv SERVER-IP 6379
Wenn die Verbindung abgelehnt wird, ist alles korrekt abgesichert.
Wenn eine Verbindung zustande kommt → sofort handeln!
Zusätzliche Absicherung (Best Practice)
Auch wenn Redis nicht öffentlich erreichbar ist, solltest du:
Passwort setzen
In /etc/redis/redis.conf:
requirepass STARKES_PASSWORT
Oder moderner (empfohlen):
acl setuser default on >STARKES_PASSWORT ~* +@all
Danach:
sudo systemctl restart redis-server
Optional: Redis komplett auf UNIX-Socket umstellen
Maximale Sicherheit erreichst du, wenn Redis gar keinen TCP-Port nutzt.
In redis.conf:
port 0
unixsocket /var/run/redis/redis.sock
unixsocketperm 770
Dann Neustart:
sudo systemctl restart redis-server
Jetzt ist Redis nur noch lokal per Socket erreichbar.
Zusammenfassung – Sichere Konfiguration
✔ bind 127.0.0.1 ::1
✔ protected-mode yes
✔ Firewall blockiert 6379
✔ Kein 0.0.0.0
✔ Passwort gesetzt
✔ Optional: UNIX-Socket statt TCP
Warum das extrem wichtig ist
Es gibt tausende automatisierte Bots, die ständig das Internet nach offenen Redis-Instanzen scannen. Offene Redis-Server werden oft:
- Für Cryptomining missbraucht
- Als Botnet genutzt
- Komplett gelöscht (Ransom-Angriffe)
Ein öffentlich erreichbarer Redis-Server ist ein massives Sicherheitsrisiko.