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.
Vous saurez comment installer et configurer Redis sur votre Fedora 35 système d'exploitation à la fin du guide.
Prérequis
- OS recommandé : Fedora Linux 35
- Compte utilisateur : Un compte utilisateur avec un accès sudo ou root.
Mettre à jour le système d'exploitation
Mettez à jour votre Fedora système d'exploitation pour s'assurer que tous les packages existants sont à jour :
sudo dnf upgrade --refresh -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@fedora ~]$ sudo whoami
root
Pour configurer un compte sudo existant ou nouveau, visitez notre tutoriel sur Ajouter un utilisateur aux Sudoers sur Fedora .
Pour utiliser le compte racine , utilisez la commande suivante avec le mot de passe root pour vous connecter.
su
Installer Redis
Redis est disponible dans les référentiels par défaut de Fedora et est généralement la dernière version stable ou une version en retard par rapport à la plupart des autres distributions. Fedora possède l'un des packages d'installation par défaut les plus récents.
Pour installer Redis, ouvrez votre terminal et exécutez la commande suivante.
sudo dnf install redis
Exemple de résultat :
Tapez Y, puis appuyez sur la TOUCHE ENTRÉE pour continuer et terminer l'installation.
Vérifiez que Redis a été installé correctement en vérifiant sa version et sa commande de compilation :
redis-cli --version
Exemple de résultat :
redis-cli 6.2.5
Par défaut, Redis n'est pas activé au démarrage ni activé après l'installation.
Pour démarrer le service Redis :
Pour démarrer le service Redis :
sudo systemctl start redis
Pour activer le démarrage automatique du service Redis au démarrage du système :
sudo systemctl enable redis
Vous pouvez également faire les deux à la fois :
sudo systemctl enable redis --now
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
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 :
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 :
Tapez ce qui suit pour quitter l'instance Redis :
exit
Félicitations, vous avez installé Redis sur votre système d'exploitation Fedora 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
Configurer Firewalld pour Redis
Par défaut, aucune règle n'est configurée pour Redis. Cela signifie que vous devrez créer des règles d'autorisation qui sont essentielles pour arrêter les attaques sur Redis, l'échec de la sécurisation de Redis entraînera des problèmes sur la voie, alors ne sautez pas cela à moins que vous n'ayez d'autres moyens de protéger votre installation Redis.
Tout d'abord, ajoutez une nouvelle zone dédiée pour la stratégie de pare-feu Redis :
sudo firewall-cmd --permanent --new-zone=redis
Ensuite, spécifiez les adresses IP autorisées qui sont autorisées à accéder à Redis.
sudo firewall-cmd --permanent --zone=redis --add-source=1.2.3.4
Remplacer 1.2.3.4 par l'IP adresse qui sera ajoutée à la liste d'autorisation.
Une fois que vous avez fini d'ajouter les adresses IP, ouvrez le port du Redis. Par défaut, il s'agit du port TCP 6379 .
sudo firewall-cmd --permanent --zone=redis --add-port=6379/tcp
Notez que vous pouvez modifier le port par défaut dans votre fichier de configuration si vous remplacez la règle d'ouverture du port de pare-feu ci-dessus par la nouvelle valeur.
Après avoir exécuté ces commandes, rechargez le pare-feu pour mettre en œuvre les nouvelles règles :
sudo firewall-cmd --reload
Exemple de résultat en cas de succès :
success
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 modifications d'IP en utilisant le "redis-cli" commande :
redis-cli -h <ip address> ping
Si la configuration est correcte, la sortie devrait être :
pong
Comment supprimer (désinstaller) Redis
Pour supprimer Redis, utilisez la commande suivante dans votre terminal.
sudo dnf autoremove redis -y
Cela supprimera immédiatement Redis de votre système.