Sécurisation de MySQL (SSL, mots de passe forts, etc.)

Sécuriser une instance MySQL est essentiel pour protéger les données et prévenir les attaques. Plusieurs mécanismes peuvent être mis en place pour améliorer la sécurité, tels que l'utilisation de connexions SSL, la gestion des mots de passe forts, et la configuration des paramètres de sécurité de base.

4.3.1 Utilisation de connexions SSL :

L’utilisation de SSL (Secure Sockets Layer) pour chiffrer les connexions MySQL permet de sécuriser les données en transit.

Configuration SSL dans MySQL :

  1. Générer des certificats SSL pour le serveur et les clients.

  2. Configurer MySQL pour utiliser ces certificats dans le fichier de configuration my.cnf.

[mysqld]
ssl-ca=/chemin/vers/ca-cert.pem
ssl-cert=/chemin/vers/server-cert.pem
ssl-key=/chemin/vers/server-key.pem

Configurer les utilisateurs pour qu'ils utilisent uniquement SSL lors de la connexion :

CREATE USER 'jean'@'%' IDENTIFIED BY 'password' REQUIRE SSL;

4.3.2 Gestion des mots de passe forts :

MySQL permet d'imposer des politiques de mots de passe pour garantir qu'ils sont suffisamment complexes.

Exemple : Activer les vérifications de complexité de mot de passe

Dans le fichier my.cnf, activez le plugin de validation des mots de passe et configurez son niveau de complexité.

[mysqld]
plugin-load-add=validate_password.so
validate_password.policy=MEDIUM
  • LOW : Minimum de vérifications.

  • MEDIUM : Exige que le mot de passe ait une longueur minimale, contienne des chiffres, des lettres majuscules et minuscules, et des caractères spéciaux.

  • STRONG : Ajoute des exigences supplémentaires comme des mots de passe non basés sur des mots du dictionnaire.

4.3.3 Désactiver les connexions root à distance :

Par défaut, il est recommandé de désactiver les connexions root à distance pour éviter qu’un attaquant puisse y accéder à distance.

Exemple :

UPDATE mysql.user SET Host='localhost' WHERE User='root';
FLUSH PRIVILEGES;

Cela restreint les connexions de l’utilisateur root uniquement au serveur local.

Last updated