Comment installer Memcached pour des applications plus rapides sur RHEL 9
Memcached est un programme de mise en cache d’objets de mémoire distribuée open-source qui nous permet d’améliorer et d’accélérer les performances des applications web dynamiques en mettant en cache les données et les objets en mémoire.
Memcached est également utilisé pour mettre en cache des tables et des requêtes de base de données entières afin d’améliorer les performances de la base de données. C’est le seul système de mise en cache disponible gratuitement et utilisé par de nombreux grands sites comme YouTube, Facebook, Twitter, Reddit, Drupal, Zynga, etc.
Memcached peut s’engager dans des attaques par déni de service s’il n’est pas correctement configuré. Dans cet article, nous allons vous expliquer comment installer et sécuriser votre serveur Memcached sur les distributions Linux basées sur RHEL telles que Rocky Linux, AlmaLinux et Fedora.
Installation de Memcached sous Linux
Tout d’abord, mettez à jour l’index de votre package logiciel local, puis installez Memcached à partir des dépôts officiels à l’aide des commandes yum suivantes en tant qu’utilisateur administratif root.
yum update
yum install memcached
Ensuite, nous allons installer libmemcached - une bibliothèque cliente qui offre quelques outils pour gérer votre serveur Memcached.
yum install libmemcached
Memcached devrait maintenant être installé sur votre système en tant que service, ainsi que les outils qui nécessitent que vous testiez sa connectivité. Nous pouvons maintenant procéder à la sécurisation de ses paramètres de configuration.
Sécurisation des paramètres de configuration de Memcached
Pour s’assurer que le service Memcached installé est à l’écoute sur l’interface locale 127.0.0.1
, nous allons modifier la variable OPTIONS
dans le fichier de configuration /etc/sysconfig/memcached
.
vi /etc/sysconfig/memcached
Recherchez la variable OPTIONS
et ajoutez la variable -l 127.0.0.1, ::1
à la variable OPTIONS
. Ces paramètres de configuration protégeront notre serveur contre les attaques par déni de service.
PORT="11211"
USER="memcached"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS="-l 127.0.0.1,::1"
Discutons en détail de chacun des paramètres ci-dessus.
- PORT : Le port utilisé par Memcached pour fonctionner.
- USER : Le démon de démarrage du service Memcached.
- MAXCONN : La valeur utilisée pour définir le nombre maximum de connexions simultanées à 1024. Pour les serveurs Web occupés, vous pouvez augmenter le nombre en fonction de vos besoins.
- CACHESIZE : Réglez la taille de la mémoire du cache sur 2048. Pour les serveurs occupés, vous pouvez augmenter jusqu’à 4 Go.
- OPTIONS : Définissez l’adresse IP du serveur, afin que les serveurs web Apache ou Nginx puissent s’y connecter.
Redémarrez et activez votre service Memcached pour appliquer vos modifications de configuration.
systemctl restart memcached
systemctl enable memcached
Une fois démarré, vous pouvez confirmer que votre service Memcached est lié à l’interface locale et qu’il n’écoute que sur les connexions TCP à l’aide de la commande netstat suivante.
netstat -plunt
Vous pouvez également vérifier l’état du serveur à l’aide de l’outil memcached, comme indiqué.
memcached-tool 127.0.0.1 stats
Assurez-vous maintenant d’autoriser l’accès au serveur Memcached en ouvrant un port 11211
sur votre pare-feu comme indiqué.
firewall-cmd --permanent --zone=public --add-port=11211/tcp
Tester l’installation de Memcached
Pour vérifier que Memcached fonctionne correctement, vous pouvez vous y connecter à l’aide de la commande telnet.
telnet localhost 11211
Si la connexion réussit, vous verrez une invite similaire à celle-ci :
Installer l’extension PHP Memcached
Pour installer l’extension PHP Memcached et l’intégrer à Perl, Python, Apache et Nginx sur un système Linux, vous devrez suivre des étapes spécifiques pour chaque composant.
Pour PHP :
yum install php-memcached
Vous devrez peut-être redémarrer Apache, Nginx ou PHP-FPM après l’installation :
systemctl restart httpd
systemctl restart nginx
systemctl restart php-fpm
Pour Perl :
yum install perl-Cache-Memcached
Pour Python :
yum install python3-memcached
Une fois installé, configurez vos applications PHP, Perl ou Python pour utiliser Memcached pour la mise en cache. Cela implique de modifier le code de l’application pour se connecter au serveur Memcached et stocker/récupérer les données mises en cache.
Conclusion
Dans cet article, nous avons expliqué comment installer et sécuriser votre serveur Memcached pour l’interface réseau locale, dans le but d’optimiser les performances des applications web dynamiques en réduisant la charge de la base de données grâce à une mise en cache efficace.
Si vous avez rencontré des problèmes lors de l’installation, demandez de l’aide dans notre section de commentaires ci-dessous.