Redis est un magasin de structure de données clé-valeur open-source (sous licence BSD) en mémoire utilisé en tant que base de données, cache et courtier de messages. Redis prend en charge les structures de données telles que les chaînes, les hachages, les listes, les ensembles, les ensembles triés avec des requêtes de plage, les bitmaps, les journaux hyperlog, les index géospatiaux et les flux. Redis offre également une haute disponibilité avec la logique logicielle Redis Sentinel, créant un partitionnement automatique sur les nœuds Redis avec Redis Cluster.
A la fin du guide, vous saurez comment installer et configurer Redis sur votre Debian 11 Bullseye système d'exploitation.
Prérequis
- OS recommandé : Debian 11 Bullseye ou supérieur
- Compte utilisateur : Un compte utilisateur avec sudo ou accès root.
Mettre à jour le système d'exploitation
Mettez à jour votre Debian système d'exploitation pour s'assurer que tous les packages existants sont à jour :
sudo apt update && sudo apt upgrade -y
Le tutoriel utilisera la commande sudo et en supposant que vous avez le statut sudo . Pour vérifier le statut sudo sur votre compte :
sudo whoami
Exemple de sortie montrant l'état de sudo :
[joshua@debian ~]$ sudo whoami
root
Si vous n'avez pas configuré de compte utilisateur sudo et que vous souhaitez le faire, consultez notre didacticiel sur Comment ajouter un utilisateur à Sudoers sur Debian.
Pour utiliser le compte racine , utilisez la commande suivante avec le mot de passe root pour vous connecter.
su
Accès racine ou sudo
Par défaut, lorsque vous créez votre compte au démarrage avec Debian par rapport aux autres distributions, elle ne reçoit pas automatiquement le statut sudoers. Vous devez soit avoir accès au mot de passe root utiliser la commande su ou visitez notre tutoriel sur Comment ajouter un utilisateur à Sudoers sur Debian.
Installer Redis
Par défaut, la série Redis 5 est incluse dans les référentiels Debian 11. Pour installer le service Redis, tapez la commande suivante :
sudo apt install redis-server
Exemple de résultat :
Tapez O, puis appuyez sur ENTER KEY pour poursuivre l'installation.
Vérifiez que Redis a été installé correctement en vérifiant à l'aide de la commande apt-cache policy :
sudo apt-cache policy redis-server
Exemple de résultat :
Ensuite, vérifiez l'état et assurez-vous que Redis est en cours d'exécution et, plus important encore, sans erreur :
systemctl status redis-server
Exemple de résultat :
Notez que Reddis écoute activement localhost sur le port 6379 par défaut . Pour confirmer ce type, procédez comme suit :
ps -ef | grep redis
Exemple de résultat :
root@debian:/home/joshua# ps -ef | grep redis
redis 5048 1 0 09:23 ? 00:00:00 /usr/bin/redis-server 127.0.0.1:6379
root 5563 3653 0 09:25 pts/0 00:00:00 grep redis
Maintenant, pendant que vous testez que tout fonctionne et est opérationnel, c'est une bonne idée de vous connecter à votre service Redis, puis d'effectuer un test ping.
Pour effectuer le test, saisissez la commande suivante :
redis-cli
Une fois connecté, votre terminal affichera (127.0.0.1:6379). Envoyez maintenant un ping au service Redis comme suit :
ping
Exemple de résultat :
127.0.0.1:6379> ping
PONG
Tapez ce qui suit pour quitter l'instance Redis :
exit
Félicitations, vous avez installé Redis sur votre système d'exploitation Debian 11 Bullseye et vérifié qu'il est opérationnel. Ensuite, vous pouvez configurer Redis.
Comment configurer Redis
Redis peut être configuré de plusieurs manières. L'action la plus notable pour laquelle les gens utilisent Redis est à des fins de mise en cache. Pour ce faire, vous devez ouvrir le "/etc/redis/redis.conf ” fichier à l'aide de l'éditeur nano.
sudo nano /etc/redis.conf
Configurer la mémoire maximale
Maintenant, ajoutez ce qui suit à la fin du fichier. Notez que vous pouvez modifier la valeur de la mémoire à votre guise ou, plus important encore, optimale pour votre application Web et votre matériel serveur.
maxmemory 500mb
maxmemory-policy allkeys-lru
Comme vous pouvez le voir, le paramètre du guide dispose de 500 Mo dédiés à Redis car il se trouve sur un hôte dédié avec beaucoup de RAM à revendre. Une fois les 500 Mo épuisés, Redis supprime toute clé conformément à l'algorithme LRU.
Configurer l'accès au réseau
Une autre option consiste à écouter tous les services ou à définir une adresse IP/un sous-réseau si vous aimez votre service Redis.
Tout d'abord, recherchez la ligne 69 dans le fichier de configuration.
Tout d'abord, pour écouter toutes les interfaces réseau, commentez "#" la ligne lie à IP :
Exemple :
# bind 127.0.0.1 ::1
Méthode alternative :
bind 0.0.0.0/0
Remarque :assurez-vous que votre réseau interne est digne de confiance et que des contrôles de sécurité appropriés sont en place.
Pour vous lier à une adresse IP, assurez-vous qu'il s'agit d'une adresse IP statique.
Exemple :
bind 192.150.5.2
Pour lier un sous-réseau de réseau.
Exemple :
bind 192.150.5.0/24
Notez qu'il est fortement suggéré de définir un mot de passe lors de l'utilisation du sous-réseau ou de l'accès à toutes les interfaces à écouter.
Configurer le mot de passe
Une autre fonctionnalité de sécurité et pour renforcer encore Redis consiste à définir un mot de passe sur l'instance Redis.
Accédez à la ligne 507 et décommentez le "# requiredpass" ligne et définissez un mot de passe.
Exemple :
requiredpass APASSWORD
Assurez-vous que ce mot de passe est robuste, que les chiffres, les lettres, les symboles spéciaux et les majuscules sont aléatoires, car les serveurs Redis peuvent très bien être brutalement forcés sur une boîte décente.
Ensuite, lors de l'appel de Redis-CLI, utilisez la commande suivante avec le mot de passe qui a été défini pour l'utilisateur.
Exemple :
auth THEPASSWORDSET
"LEMOT DE PASSE" est le mot de passe qui a été créé.
Lorsqu'un utilisateur ne parvient pas à se connecter, il verra le message d'erreur suivant.
(error) NOAUTH Authentication required.
Lorsqu'un utilisateur se connecte avec succès, il verra le message suivant.
OK
Une fois terminé, enregistrez vos modifications CTRL+O puis quittez CTRL+X . Redémarrez maintenant le service Redis en tapant :
sudo systemctl restart redis-server
Facultatif - Configurer les règles UFW Redis
Si UFW est installé, vous devez créer des règles d'autorisation UFW sur le port TCP 6379. En fonction de votre installation et de vos exigences, si vous utilisez un réseau singulier ou en cluster.
Tout d'abord, si vous souhaitez installer UFW, utilisez la commande suivante :
sudo apt install ufw -y
Une fois installé, activez le pare-feu.
sudo ufw enable
Cela démarrera le pare-feu et permettra le redémarrage du système. Par défaut, les règles sont de refuser tous les entrants et d'autoriser tous les sortants.
Ensuite, suivez les exemples ci-dessous et choisissez ou modifiez les options. Ceci est fortement recommandé pour renforcer Redis.
Instance de serveur IP réseau supplémentaire :
sudo ufw allow proto tcp from <ip address> to any port 6379
Réseau de cluster avec de nombreuses instances :
sudo ufw allow proto tcp from <ip address>/24 to any port 6379
Notez que la deuxième règle UFW est une règle de sous-réseau. Remarque, assurez-vous que le réseau interne est sécurisé et digne de confiance avant de l'autoriser.
Maintenant, comme vous l'avez testé au début du guide en envoyant un ping à votre service Redis pour vous assurer qu'il était opérationnel, vous pouvez essayer les règles de pare-feu et les changements d'IP en utilisant le "redis-cli" commande :
redis-cli -h <ip address> ping
Si la configuration est correcte, la sortie devrait être :
pong