Installer et sécuriser Redis

2 min de lecture07 novembre 2026

Redis est une base en mémoire utilisée comme cache, file de messages ou stockage de sessions. Sa vitesse vient du fait qu'il garde tout en RAM et répond sur un port sans chiffrement : une instance exposée à Internet est compromise très rapidement. L'installation Debian est simple ; l'essentiel du travail consiste à limiter l'écoute, authentifier les clients et choisir une persistance adaptée.

Installer et vérifier

Bash
sudo apt update
sudo apt install -y redis-server
systemctl status redis-server
redis-cli ping

La réponse attendue est PONG. Le service écoute par défaut sur 127.0.0.1:6379 ; confirmez-le avec ss -ltnp | grep 6379. Redis ne doit jamais être joint directement depuis votre poste : utilisez un tunnel SSH si vous devez inspecter les données.

Écoute locale et mode protégé

Dans /etc/redis/redis.conf, gardez :

Configuration
bind 127.0.0.1 ::1
protected-mode yes
port 6379

bind limite les interfaces ; protected-mode refuse les connexions non authentifiées venant d'ailleurs. N'ouvrez pas 6379 dans UFW. Un mot de passe seul ne protège pas un port public contre une attaque par force brute ou une faille applicative.

Mot de passe et ACL

Pour une instance à un seul client, requirepass suffit :

Configuration
requirepass mot-de-passe-long
Bash
sudo systemctl restart redis-server
REDISCLI_AUTH='mot-de-passe-long' redis-cli ping

REDISCLI_AUTH évite le mot de passe dans l'historique et dans ps. Redis 6 et suivants proposent des ACL plus fines, avec un utilisateur limité à un préfixe de clés :

Configuration
user app on >mot-de-passe-long ~app:* +@read +@write -@dangerous

Renommer FLUSHALL ou CONFIG protège contre une erreur, mais casse certains outils ; évaluez le compromis. Pour un cache, la perte de données est souvent acceptable ; pour des sessions ou des files, elle ne l'est pas.

Persistance et mémoire

RDB écrit des instantanés périodiques (save 900 1), AOF journalise les écritures. Pour un cache, RDB suffit ; pour des données à conserver, activez appendonly yes et testez la reprise. maxmemory et maxmemory-policy allkeys-lru évitent de saturer la RAM du VPS. Redis est mono-thread : une commande lente bloque toutes les autres.

Bash
REDISCLI_AUTH='mot-de-passe-long' redis-cli BGSAVE
sudo ls -lh /var/lib/redis/dump.rdb

Copiez dump.rdb hors site, ou utilisez REDISCLI_AUTH='mot-de-passe-long' redis-cli --rdb pour un transfert direct. Testez la restauration sur une instance jetable : une copie RDB d'un autre serveur ne se relit pas toujours sans vérifier la version.

Surveiller et dépanner

INFO memory et INFO stats donnent la pression mémoire et les évictions. Les journaux sont dans /var/log/redis/redis-server.log. NOAUTH signifie mot de passe manquant ; OOM command not allowed signifie maxmemory atteint ; Connection refused signifie service arrêté ou mauvaise interface. Évitez MONITOR en production prolongée : il expose toutes les commandes et ralentit l'instance.

Publicité

Cet article vous a-t-il aidé ?

À lire aussi