Memcached est un système de mise en cache d'objets open-source, distribué et en mémoire. Il est principalement utilisé pour accélérer les applications Web dynamiques en stockant des morceaux de données à partir des résultats des appels de base de données et du rendu de page.
Dans ce guide, nous allons installer et sécuriser Memcached sur Ubuntu 18.04.
Conditions préalables
- Un nouveau serveur Vultr Ubuntu 18.04
- Compte d'utilisateur non root avec
sudo
accès
Installation de Memcached
Tout d'abord, mettez à jour le système:
sudo apt update && sudo apt upgrade -y
Ensuite, installez le package officiel Memcached; ainsi que libmemcached-tools
, qui fournit plusieurs utilitaires pour travailler avec Memcached:
sudo apt install -y memcached libmemcached-tools
Memcached sera désormais installé en tant que service. Vous pouvez vous assurer qu'il fonctionne en utilisant systemctl
:
sudo systemctl status memcached
La sortie ressemblera à ce qui suit:
memcached.service - memcached daemon
Loaded: loaded (/lib/systemd/system/memcached.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2018-12-16 14:59:06 IST; 3 weeks 4 days ago
Main PID: 3927 (memcached)
Tasks: 6
Memory: 2.2M
CPU: 2min 10.089s
CGroup: /system.slice/memcached.service
└─3927 /usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1
Configuration de Memcached
Lions Memcached à l'interface locale pour éviter les attaques DDOS potentielles. Ouvrez le /etc/memcached.conf
fichier dans votre éditeur préféré:
sudo vi /etc/memcached.conf
Recherchez la ligne suivante dans le fichier et assurez-vous qu'elle n'est pas mise en commentaire:
-l 127.0.0.1
Si cette configuration est plus ouverte, vous pouvez restreindre UDP
en ajoutant la ligne suivante à la fin du fichier:
-U 0
Enregistrez le fichier et quittez.
Redémarrez Memcached pour appliquer vos modifications:
sudo systemctl restart memcached
Vous pouvez vérifier que Memcached n'est lié qu'à l'interface locale et à l'écoute uniquement des connexions TCP avec netstat:
sudo netstat -plunt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
...
tcp 0 0 127.0.0.1:11211 0.0.0.0:* LISTEN 3927/memcached
...
Il existe également quelques autres options qui peuvent être modifiées dans la /etc/memcached.conf
configuration:
-m
: Limite la quantité de mémoire disponible pour Memcached.
-p
: Spécifie sur quel port Memcached doit écouter. Le port par défaut est 11211
.
-u
: Spécifie avec quel utilisateur le service utilisera pour s'exécuter. Par défaut, le service s'exécutera en tant que root
.
-c
: Limite le nombre de connexions simultanées. La valeur par défaut est 1024
.
Vérification de la configuration de Memcached
Maintenant, vous pouvez vérifier la configuration à l'aide de la memcstat
commande du libmemcached-tools
package:
memcstat --servers="localhost"
La sortie ressemblera à ce qui suit:
Server: localhost (11211)
pid: 3927
uptime: 2217682
time: 1547170226
version: 1.4.25
libevent: 2.0.21-stable
pointer_size: 64
rusage_user: 75.436000
rusage_system: 57.768000
curr_connections: 1
total_connections: 53082
...
Conclusion
Dans ce guide, nous avons expliqué comment installer et configurer Memcached et utilisé memcstat
pour récupérer les statistiques. Le libmemcached-tools
package est également livré avec quelques autres utilitaires qui peuvent aider à interagir avec Memcached.