Memchached security - nos recommandations Печать

  • 1

Objectif

Memcached est un service de base de données en mémoire qui est principalement utilisé pour accélérer les applications web en mettant en cache le contenu statique et les résultats des requêtes des bases de données. Le mécanisme est très simple : c’est une base de données à clé-valeur en mémoire à stockage non persistant.

Par défaut, memcached n’est pas protégé par authentification. Si le serveur est accessible, tout le monde peut y lire et écrire des données. C’est pour cela qu’il est important de sécuriser cette base de données.

Ce guide a pour but de vous aider dans cette configuration.

Configurer Memcached pour le sécuriser

La sécurisation du serveur memcached passe par deux axes: - limiter l’adresse d’écoute du service; - n’accepter que les connexions TCP.

Avant la version /1.5.6/, memcached autorise les connexions TCP et UDP par défaut. Ce dernier mode peut-être détourné pour générer des attaques dites “par amplification”. Comme indiqué par les développeurs, les connexions UDP étaient pertinentes à la création du logiciel; alors que les ressources étaient plus rares. Dans ce guide, nous assumerons que vous faites partie des 99% des utilisateurs qui n’ont pas besoin de connexions UDP.

Si votre serveur memcached n’est utilisé que par la machine locale, vous pouvez limiter l’adresse d’écoute à 127.0.0.1. Si d’autres machines doivent s’y connecter depuis un réseau privé, forcez l’écoute sur une IP privée (par exemple 10.0.0.1; à adapter à votre classe réseau).

Dans tous les cas, désactivez l’écoute en UDP grâce à la directive -U 0.

Nous allons maintenant détailler les aspect de configuration pour les principaux systèmes d’exploitations déployés.

Debian - Ubuntu
Le comportement par défaut de Debian / Ubuntu est d’utiliser service memcached status/start/restart/force-reload pour gérer le service Memcached. Si tel est votre cas, il convient d’éditer le fichier /etc/memcached.conf en étant connecté en root.

Vous pouvez commencer par ajouter cette option qui désactive l’écoute UDP, laquelle est obsolète comme expliqué précédemment.

# Disable UDP protocol
-U 0

Si votre serveur memcached n’est utilisé que par la machine locale, alors vous pouvez activer l’option suivante qui évitera d’exposer votre service sur l’Internet:

-l 127.0.0.1

Une fois les modifications effectuées, sauvegardez le fichier et utilisez une de ces deux commandes pour redémarrer la configuration :

service memcached force-reload
/etc/init.d/memcached force-reload


Centos - Fedora - Redhat

Le comportement par défaut de Centos / Fedora / RedHat est d’utiliser service memcached status/start/restart/force-reload pour gérer le service Memcached. Si tel est votre cas, il convient d’éditer le fichier /etc/sysconfig/memcached en étant connecté en root.

Si votre serveur memcached n’est utilisé que par la machine locale, nous vous conseillons la ligne d’OPTIONS suivante qui permettra d’éviter d’exposer votre service sur l’Internet en désactivant le protocole UDP, lequel est devenu obsolète:

OPTIONS="-l 127.0.0.1 -U 0"

Si votre serveur memcached est également utilisé par des serveurs tiers, alors, cette simple ligne d’OPTIONS permettra de désactiver uniquement le protocole UDP:

OPTIONS="-U 0"

Une fois les modifications effectuées, sauvegardez le fichier et utilisez la commande suivante pour redémarrer la configuration :

sudo service memcached force-reload


Помог ли вам данный ответ?

« Назад