DevOps

Installation et Sécurisation Redis sur Ubuntu 18.04

L’installation et la sécurisation de Redis sur Ubuntu 18.04 sont des étapes cruciales pour garantir le bon fonctionnement de ce système de gestion de base de données en mémoire. Redis, acronyme de REmote DIctionary Server, est reconnu pour sa rapidité et son efficacité dans le traitement des données en mémoire. Suivre un processus d’installation approprié et mettre en place des mesures de sécurité sont des aspects fondamentaux pour tirer le meilleur parti de Redis tout en préservant l’intégrité et la confidentialité des données.

Pour installer Redis sur Ubuntu 18.04, vous pouvez utiliser le gestionnaire de paquets apt. Assurez-vous que votre système est à jour en exécutant la commande suivante dans votre terminal :

bash
sudo apt update && sudo apt upgrade

Une fois que votre système est à jour, vous pouvez procéder à l’installation de Redis en utilisant la commande suivante :

bash
sudo apt install redis-server

Cette commande installera Redis et ses dépendances sur votre système. Une fois l’installation terminée, Redis démarre automatiquement en tant que service.

Pour garantir la sécurité de votre installation Redis, suivez ces étapes pour configurer l’authentification et limiter l’accès au serveur :

1. Configurer l’authentification

Ouvrez le fichier de configuration Redis avec votre éditeur de texte préféré. Dans cet exemple, nous utiliserons nano :

bash
sudo nano /etc/redis/redis.conf

Recherchez la section « AUTH » et définissez un mot de passe sécurisé. Par exemple, remplacez par un mot de passe robuste.

conf
# Configuration pour l'authentification requirepass

Enregistrez et fermez le fichier en appuyant sur Ctrl + X, puis confirmez avec Y.

2. Redémarrer Redis

Après avoir configuré le mot de passe, redémarrez le service Redis pour appliquer les modifications :

bash
sudo systemctl restart redis-server

3. Vérifier l’authentification

Pour vous assurer que l’authentification fonctionne correctement, essayez de vous connecter à Redis en utilisant la commande redis-cli :

bash
redis-cli

Vous serez invité à entrer le mot de passe que vous avez défini. Une fois le mot de passe correctement saisi, vous serez connecté à l’interface Redis.

4. Limiter l’accès depuis l’extérieur

Pour renforcer la sécurité, vous pouvez limiter l’accès à Redis depuis des adresses IP spécifiques. Modifiez le fichier de configuration Redis pour spécifier les adresses IP autorisées.

bash
sudo nano /etc/redis/redis.conf

Recherchez la section « bind » et spécifiez les adresses IP sur lesquelles Redis doit écouter. Par exemple, si votre serveur a l’adresse IP 192.168.1.1, modifiez la ligne comme suit :

conf
# Permettre uniquement la connexion depuis l'adresse IP spécifiée bind 127.0.0.1 192.168.1.1

Enregistrez les modifications et redémarrez Redis pour les appliquer :

bash
sudo systemctl restart redis-server

5. Activer la persistance des données (optionnel)

Pour garantir la persistance des données même en cas de redémarrage du serveur Redis, vous pouvez activer la sauvegarde périodique des données sur le disque. Modifiez le fichier de configuration Redis pour activer cette fonctionnalité :

bash
sudo nano /etc/redis/redis.conf

Recherchez la section « Snapshotting » et configurez les paramètres de sauvegarde, par exemple :

conf
# Activer la sauvegarde toutes les 15 minutes si au moins une clé a changé save 900 1

Enregistrez les modifications et redémarrez Redis :

bash
sudo systemctl restart redis-server

Conclusion

En suivant ces étapes, vous avez installé Redis sur votre serveur Ubuntu 18.04 et pris des mesures importantes pour renforcer sa sécurité. La combinaison d’une authentification robuste, de restrictions d’accès et éventuellement de la persistance des données contribue à créer un environnement Redis fiable et sécurisé. Il est recommandé de consulter la documentation officielle de Redis et d’adapter ces recommandations en fonction de vos besoins spécifiques et des évolutions de sécurité.

Plus de connaissances

Au-delà des étapes initiales d’installation et de sécurisation de Redis sur Ubuntu 18.04, il est essentiel de comprendre certains concepts clés liés à la configuration et à la gestion de Redis. Explorons plus en détail certaines de ces notions pour approfondir votre compréhension du fonctionnement de Redis.

Gestion des bases de données Redis

Redis prend en charge plusieurs bases de données, chacune identifiée par un numéro d’index. Par défaut, Redis est configuré avec une seule base de données, indexée à 0. Cependant, vous pouvez spécifier un numéro d’index différent lors de la sélection de la base de données dans votre application.

Pour sélectionner une base de données spécifique, utilisez la commande suivante dans le client Redis :

bash
SELECT

Cette commande permet de basculer vers la base de données correspondante. Il est important de noter que les bases de données Redis sont distinctes les unes des autres, ce qui signifie qu’elles ne partagent pas les mêmes ensembles de clés.

Utilisation de l’interface en ligne de commande Redis (redis-cli)

L’interface en ligne de commande Redis, redis-cli, est un outil puissant pour interagir avec votre base de données Redis. Voici quelques commandes fondamentales qui peuvent être exécutées à l’aide de redis-cli :

  • SET et GET : Ces commandes permettent de définir et de récupérer la valeur d’une clé.

    bash
    SET ma_cle "valeur" GET ma_cle
  • DEL : Supprime une clé spécifiée.

    bash
    DEL ma_cle
  • KEYS : Récupère toutes les clés correspondant à un modèle.

    bash
    KEYS motif*
  • FLUSHDB et FLUSHALL : Supprime toutes les clés de la base de données actuelle ou de toutes les bases de données.

    bash
    FLUSHDB FLUSHALL

Configuration avancée de Redis

Redis offre une flexibilité considérable en matière de configuration. Le fichier /etc/redis/redis.conf contient divers paramètres que vous pouvez ajuster en fonction de vos besoins spécifiques. Voici quelques paramètres clés à prendre en compte :

  • Maxmemory : Vous permet de spécifier la quantité maximale de mémoire que Redis peut utiliser. Si cette limite est atteinte, Redis commencera à appliquer des politiques d’éviction pour libérer de l’espace.

    conf
    maxmemory 2GB
  • Bind : Définit l’adresse IP sur laquelle Redis doit écouter les connexions. Par défaut, Redis écoute sur toutes les interfaces.

    conf
    bind 127.0.0.1
  • Port : Spécifie le port sur lequel Redis écoute les connexions. Par défaut, Redis utilise le port 6379.

    conf
    port 6379
  • Logfile : Définit le fichier journal dans lequel les messages du serveur sont enregistrés.

    conf
    logfile "/var/log/redis/redis-server.log"

Sécurité supplémentaire avec un pare-feu

En plus des mesures de sécurité au niveau de Redis, vous pouvez renforcer la sécurité en configurant un pare-feu sur votre serveur Ubuntu. Cela permet de contrôler les connexions réseau autorisées vers votre serveur Redis. Utilisez la commande ufw (Uncomplicated Firewall) pour configurer le pare-feu.

bash
sudo ufw allow 6379 sudo ufw enable

La première commande autorise le trafic sur le port par défaut de Redis (6379), et la seconde active le pare-feu. Assurez-vous que le pare-feu est configuré pour permettre les connexions nécessaires à votre application tout en restreignant l’accès non autorisé.

Surveillance de Redis avec Redis Sentinel

Redis Sentinel est une solution de surveillance et de gestion hautement disponible pour les déploiements Redis. Il offre la détection de pannes, la bascule automatique en cas de panne du maître, et d’autres fonctionnalités pour garantir la disponibilité continue de Redis.

Pour utiliser Redis Sentinel, configurez le fichier sentinel.conf et démarrez Sentinel en tant que service distinct. Il est recommandé de consulter la documentation officielle de Redis pour des instructions détaillées sur la configuration et le déploiement de Sentinel.

Conclusion

En conclusion, l’installation et la sécurisation de Redis sur Ubuntu 18.04 sont des étapes initiales cruciales, mais la gestion continue et la configuration avancée peuvent grandement améliorer les performances et la sécurité de votre déploiement Redis. En comprenant les concepts clés tels que la gestion des bases de données, l’utilisation de l’interface en ligne de commande, la configuration avancée, la sécurité supplémentaire avec un pare-feu, et la surveillance avec Redis Sentinel, vous serez mieux équipé pour optimiser et maintenir un environnement Redis fiable et sécurisé. N’oubliez pas de consulter régulièrement la documentation officielle de Redis pour rester informé des meilleures pratiques et des mises à jour.

Bouton retour en haut de la page