Aller au contenu principal

Accès à distance au serveur

Dans certaines situations, vous pouvez avoir besoin d'accéder à votre serveur MariaDB à partir d'un autre ordinateur sur le réseau ou sur Internet.

Dans cette séance, nous allons apprendre à configurer MariaDB pour permettre les connexions distantes.

Notions théoriques

  1. Configuration du serveur MariaDB :

    Pour permettre les connexions distantes, nous devons modifier le fichier de configuration de MariaDB, généralement situé à /etc/mysql/mariadb.conf.d/50-server.cnf.

    Nous devons remplacer bind-address = 127.0.0.1 par bind-address = 0.0.0.0.

  2. Redémarrage du service MariaDB :

    Après avoir modifié le fichier de configuration, nous devons redémarrer le service MariaDB

    en utilisant la commande sudo service mariadb restart.

  3. Création d'un utilisateur distant :

    Pour créer un utilisateur qui peut se connecter à partir d'un ordinateur distant, nous utilisons la commande

    CREATE USER 'nom_utilisateur'@'adresse_ip' IDENTIFIED BY 'mot_de_passe';,

    adresse_ip est l'adresse IP de l'ordinateur distant.

  4. Donner des permissions à un utilisateur distant :

    Pour donner des permissions à un utilisateur distant, nous utilisons la même commande que pour un utilisateur local, mais avec l'adresse IP de l'ordinateur distant :

    GRANT type_de_permission ON nom_de_la_base.* TO 'nom_utilisateur'@'adresse_ip';
    FLUSH PRIVILEGES;

Exemple pratique

Supposons que nous ayons un serveur MariaDB sur un ordinateur avec l'adresse IP 172.16.126.10, et que nous voulions permettre à un ordinateur avec l'adresse IP 172.16.126.20 d'accéder à la base de données utilisateurs.

# Modification du fichier de configuration de MariaDB
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

# Remplacer 'bind-address = 127.0.0.1' par 'bind-address = 0.0.0.0' et enregistrer le fichier

# Redémarrage du service MariaDB
sudo service mariadb restart
# ou
sudo systemctl restart mariadb

# Connexion à MariaDB
sudo mysql
# ou
mysql -u root -p

# Création de l'utilisateur 'admin' pouvant se connecter depuis '172.16.126.20'
CREATE USER 'admin'@'172.16.126.20' IDENTIFIED BY '1mot2Passe+QueTresSécurisé';

# Donner toutes les permissions à 'admin' sur la base de données 'utilisateurs'
GRANT ALL PRIVILEGES ON utilisateurs.* TO 'admin'@'172.16.126.20';
FLUSH PRIVILEGES;

Test de mémorisation/compréhension


Quel est le fichier de configuration de MariaDB ?


Quelle commande utilisez-vous pour modifier le fichier de configuration de MariaDB ?


Quelle modification devez-vous apporter au fichier de configuration de MariaDB pour permettre les connexions distantes ?


Quelle commande permet de redémarrer le service MariaDB?


Quelle commande permet de créer un utilisateur qui peut se connecter à partir d'un ordinateur distant ?


Quelle commande permet de donner des permissions à un utilisateur distant ?



TP pour réfléchir et résoudre des problèmes

Objectif du TP : À la fin de ce TP, vous devriez être capable de configurer MariaDB pour permettre les connexions distantes, et de créer un utilisateur qui peut se connecter à partir d'un ordinateur distant.

Étapes du TP :

  1. Modifiez le fichier de configuration de MariaDB pour permettre les connexions distantes.

  2. Redémarrez le service MariaDB.

  3. Connectez-vous à MariaDB en tant qu'utilisateur root.

  4. Affichez et mémorisez l'adresse IP de votre poste client (sous Windows).

    Par exemple : 172.16.126.30

  5. Créez un nouvel utilisateur nommé distant qui peut se connecter à partir de l'adresse IP 172.16.126.30.

  6. Donnez à l'utilisateur distant toutes les permissions sur la base de données ecole.

  7. Connectez-vous au serveur MariaDB avec un logiciel client tel que HeidiSQL ou Dbeaver, en utilisant l'utilisateur nommé distant.

    Pour télécharger les programmes d'installation : https://www.heidisql.com/ ou https://dbeaver.io/

Une solution