MySQL est un système de gestion de base de données relationnelle (RDBMS) open source, puissant et largement utilisé. qui organise les données en une ou plusieurs tables de données où les types de données peuvent être liés à chacun autre. Le langage de requête structuré (SQL) fonctionne avec les SGBDR, et quand quelqu'un veut stocker ou gérer un volume massif de données, il acquiert le service de base de données relationnelle et SQL.
Cet article montre comment configurer MySQL sur votre serveur Ubuntu 18.04. Il vous montre également comment activer l'authentification, suivie de la gestion des services. À la fin, vous apprendrez également à tester le service pour vérifier la configuration réussie.
Étape 1: Installation du client MySQL
Installez le client mysql pour se connecter à distance au serveur :
sudo apt installer mysql-client -y
Vérifiez la version du client pour vérifier si l'installation a réussi :
mysql-V
Sortir:
mysql Ver 8.0.28-0ubuntu0.20.04.3 pour Linux sur x86_64 ((Ubuntu))
Vous pouvez maintenant utiliser la commande suivante pour établir une connexion à distance avec le serveur MySQL :
mysql-u -p -h HOSTNAME_OR_IP
Étape 2: Installation du serveur MySQL
Avant d'installer MySQL, assurez-vous que le serveur Ubuntu est correctement installé et configuré. Le serveur Ubuntu 18.04, par défaut, contient la dernière version MySQL 5.7 dans les référentiels. Utilisez la commande apt pour mettre à jour les packages système à partir du référentiel comme suit :
mise à jour sudo apt
Utilisez maintenant la commande suivante pour installer le package du serveur MySQL :
sudo apt installer mysql-server -y
Étape 3: Configurer MySQL
En cette ère de cybermenaces persistantes, il est courant de modifier les options par défaut après une installation réussie du serveur. Cette section vous guide sur la configuration du serveur MySQL pour éliminer les options par défaut non sécurisées telles que les connexions root à distance, les comptes d'utilisateurs par défaut, etc. MySQL facilite cette tâche en effectuant automatiquement toutes les modifications à l'aide d'un simple script de sécurité.
sudo mysql_secure_installation
Le script propose plusieurs options demandant des réponses Oui ou Non pour modifier la sécurité par défaut de MySQL. Par exemple, la première invite vous demande si vous souhaitez configurer un plugin pour valider les mots de passe, répondez Oui et continue.
L'invite suivante demande de définir le mot de passe du compte utilisateur root MySQL. Vous pouvez remarquer que l'activation du plug-in Validate Password permet de définir la force du mot de passe par rapport à trois niveaux de politique de sécurité et de longueur de mot de passe.
Entrez le numéro que vous souhaitez choisir pour définir la force du mot de passe. Le système demandera alors de définir le nouveau mot de passe et de le retaper pour confirmation, comme suit :
Vous pouvez remarquer qu'après avoir défini le mot de passe, il affiche la force et vous demande si vous souhaitez continuer plus loin.
Maintenant, il posera des questions suivantes :
- Pour supprimer l'utilisateur de test anonyme
- Désactiver la connexion à distance à partir de l'utilisateur root
- Supprimer les bases de données de test
- Recharger le tableau des privilèges pour enregistrer toutes les modifications
Taper Oui pour continuer avec les paramètres par défaut afin de définir des règles de sécurité.
Les anciennes versions de MySQL (avant 5.7.6) nécessitent que vous initialisiez manuellement le répertoire de la base de données. Pour les versions ultérieures, exécutez la commande suivante :
mysqld - initialiser
Étape 4: Ajustements de l'authentification utilisateur MySQL
Indépendamment de l'établissement d'un mot de passe pour un compte utilisateur MySQL, le paramètre d'authentification par défaut désactive l'utilisation de mots de passe lors de l'établissement de la connexion. Au lieu de cela, il authentifie automatiquement l'utilisateur à l'aide du auth_socket brancher. Le plugin est une excellente fonctionnalité pour la convivialité, cependant, il n'est pas pratique si vous souhaitez accéder à votre base de données à partir d'un client distant.
Comme l'accès à la base de données sans mot de passe complique le processus de travail lorsqu'il est accédé par un programme externe, cette section résume deux façons d'authentifier l'utilisateur à l'établissement de la connexion :
1. Authentification de l'utilisateur racine avec mot de passe
Pour assurer l'authentification de l'utilisateur via un mot de passe, vous pouvez changer le plugin de "auth_socket" pour "mysql_native_password." Pour cela, ouvrez l'écran d'invite MySQL en utilisant le sudo mysql et vérifiez le plug-in utilisé pour l'authentification de l'utilisateur, comme suit :
SELECT user, authentication_string, plugin, host FROM mysql.user ;
La capture d'écran ci-dessus montre que le client root s'authentifie en utilisant le plugin "auth_socket". Pour initialiser l'authentification du client root avec un mot de passe, utilisez l'instruction ALTER USER pour définir le plugin "mysql_native_password".
ALTER USER 'root'@'localhost' IDENTIFIÉ AVEC mysql_native_password BY 'password' ;
Enregistrez les modifications ci-dessus comme suit :
PRIVILÈGES FLUSH ;
L'instruction MySQL "FLUSH PRIVILEGES" enregistre les modifications apportées aux tables de la base de données par les clauses ALTER, INSERT, UPDATE et DELETE.
Maintenant, pour vérifier les stratégies d'authentification utilisées par chaque utilisateur et vous assurer que le plugin "auth_socket" n'est pas utilisé par le client root, relancez la commande :
SELECT user, authentication_string, plugin, host FROM mysql.user ;
L'utilisateur root peut désormais se connecter au serveur en s'authentifiant via la commande suivante :
sudo mysql -u racine -p
2. Créer un utilisateur dédié
Une autre façon d'activer l'authentification sans utiliser mysql_native_password est de créer un utilisateur dédié comme suit :
sudo mysql
Créez un nouveau compte et accordez tous les privilèges pour attribuer un contrôle de niveau administratif au nouvel utilisateur. Ensuite, quittez l'invite MySQL. Exécutez le suite aux requêtes SQL un par un pour y parvenir :
CRÉER UN UTILISATEUR 'ubuntu'@'localhost' IDENTIFIÉ PAR 'mot de passe' ;
ACCORDEZ TOUS LES PRIVILÈGES SUR *.* À 'ubuntu'@'localhost' AVEC L'OPTION GRANT ;
sortir
Gérer et tester le service MySQL avec systemctl
Configurez le service pour qu'il s'exécute au démarrage du serveur Ubuntu en utilisant le systemctl activer commande comme suit :
sudo systemctl activer mysql
De plus, vous pouvez tester le serveur pour qu'il soit opérationnel en tapant :
sudo systemctl statut mysql
Ou
sudo systemctl statut mysql.service
Le service s'exécute automatiquement après l'installation de MySQL, mais si ce n'est pas le cas, vous pouvez lancer le service à l'aide de la commande suivante :
sudo systemctl démarrer mysql
Premiers pas avec MySQL Server sur Ubuntu
MySQL est un système de gestion de base de données open source, convivial, évolutif et robuste. En outre, il fait partie intégrante du modèle de pile LAMP/LEMP ou des technologies d'application Web. Ce système de gestion de bases de données relationnelles (RDBMS) offre une installation simple et une configuration facile sur ses versions récentes.
Cet article vous guide dans la création d'une configuration MySQL de base qui vous aidera commencer à apprendre le fonctionnement de MySQL. Il couvre également certaines mesures de sécurité initiales importantes dans sa configuration pour éviter les failles dans la configuration par défaut. Vous pouvez en savoir plus sur la sécurisation de MySQL en suivant quelques conseils de sécurité avancés.
9 conseils de sécurité avancés pour MySQL
Lire la suite
Rubriques connexes
- Linux
- base de données
- SQL
- Applications Linux
- Installer un logiciel
- Ubuntu
A propos de l'auteur
Rumaisa est rédactrice indépendante au MUO. Elle a porté plusieurs casquettes, de mathématicienne à passionnée de sécurité de l'information, et travaille maintenant en tant qu'analyste SOC. Ses intérêts incluent la lecture et l'écriture sur les nouvelles technologies, les distributions Linux et tout ce qui concerne la sécurité de l'information.
Abonnez-vous à notre newsletter
Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives !
Cliquez ici pour vous abonner