Introduction
phpMyAdmin se présente comme une interface web d’administration pour les bases de données MySQL et MariaDB, permettant aux utilisateurs d’effectuer diverses opérations à distance. Nginx, quant à lui, est un serveur web reconnu pour sa performance et son efficacité, parfaitement adapté pour héberger phpMyAdmin. Ce guide vous expliquera pas à pas comment installer et sécuriser phpMyAdmin en utilisant Nginx sur un système Ubuntu 16.04.
Phase 1 : Préparation du terrain
Avant de procéder à l’installation de phpMyAdmin, il est nécessaire de s’assurer que les éléments suivants sont en place :
- MySQL ou MariaDB
- Le module php-fpm
- Le paquet php-mysql
Pour installer ces composants essentiels, exécutez les commandes ci-dessous dans votre terminal :
sudo apt-get update
sudo apt-get install mysql-server php-fpm php-mysql
Phase 2 : Installation de phpMyAdmin
Une fois les prérequis installés, l’étape suivante consiste à installer phpMyAdmin. Utilisez la commande suivante pour lancer l’installation :
sudo apt-get install phpmyadmin
Phase 3 : Configuration de Nginx
Il est maintenant temps de configurer Nginx pour qu’il puisse gérer les requêtes vers phpMyAdmin. Pour ce faire, ouvrez le fichier de configuration par défaut de Nginx, généralement situé à l’emplacement /etc/nginx/sites-available/default
, à l’aide de votre éditeur de texte préféré :
sudo nano /etc/nginx/sites-available/default
Recherchez le bloc server
et ajoutez-y la configuration suivante, en veillant à la remplacer si elle existe déjà :
location /phpmyadmin {
root /usr/share/phpmyadmin;
index index.php index.html;
error_page 403 /phpmyadmin/error.php;
error_page 404 /phpmyadmin/error.php;
location ~ ^/phpmyadmin/(.*\.php)$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Phase 4 : Activation et redémarrage de Nginx
Après avoir apporté les modifications nécessaires, sauvegardez le fichier de configuration et activez la nouvelle configuration en utilisant les commandes suivantes :
sudo ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default
sudo service nginx restart
Phase 5 : Renforcement de la sécurité de phpMyAdmin
L’installation de phpMyAdmin n’est que la première étape. Il est essentiel de renforcer sa sécurité pour protéger vos données. Voici quelques recommandations :
- Création d’un utilisateur dédié à phpMyAdmin : Créez un nouvel utilisateur dans la base de données MySQL ou MariaDB et accordez-lui les privilèges minimums requis.
- Modification du port par défaut : Changez le port par défaut sur lequel phpMyAdmin écoute dans la configuration de Nginx afin de réduire les risques d’accès non autorisé.
- Restriction de l’accès à distance : Si un accès à distance à phpMyAdmin n’est pas nécessaire, désactivez-le dans la configuration de Nginx.
- Mise en place d’un certificat SSL : Installez un certificat SSL pour chiffrer les communications entre votre navigateur et le serveur.
Conclusion
En suivant scrupuleusement les étapes de ce guide, vous avez pu installer et sécuriser phpMyAdmin avec Nginx sur votre serveur Ubuntu 16.04. phpMyAdmin est désormais disponible pour vous permettre une gestion facile et sécurisée de vos bases de données MySQL et MariaDB. N’oubliez pas d’appliquer régulièrement les correctifs de sécurité disponibles afin de protéger vos données.
Questions fréquentes
1. Comment accéder à phpMyAdmin après l’installation ?
Ouvrez votre navigateur et accédez à l’adresse suivante : https://example.com/phpmyadmin
, en remplaçant example.com
par l’adresse IP ou le nom de domaine de votre serveur.
2. Comment modifier le mot de passe d’un utilisateur phpMyAdmin ?
Pour modifier le mot de passe d’un utilisateur phpMyAdmin, utilisez la commande MySQL suivante :
ALTER USER 'phpmyadmin'@'localhost' IDENTIFIED BY 'nouveau_mot_de_passe';
3. Comment changer le port par défaut de phpMyAdmin ?
Modifiez la configuration de Nginx comme suit :
location /phpmyadmin {
...
listen 8080;
...
}
4. Comment installer un certificat SSL pour phpMyAdmin ?
Vous trouverez des instructions détaillées ici pour mettre en place un certificat SSL.
5. Comment restreindre l’accès distant à phpMyAdmin ?
Ajoutez deny all;
à la directive location
dans la configuration de Nginx :
location /phpmyadmin {
...
deny all;
...
}
6. Comment diagnostiquer les problèmes de connexion à phpMyAdmin ?
Consultez le fichier de logs de Nginx, généralement situé à /var/log/nginx/error.log
.
7. Comment mettre à jour phpMyAdmin ?
Utilisez la commande suivante :
sudo apt-get update
sudo apt-get upgrade
8. Comment sauvegarder mes bases de données phpMyAdmin ?
Vous pouvez effectuer des sauvegardes via l’outil intégré de phpMyAdmin, ou utiliser la commande mysqldump
pour exporter vos bases de données.