phpMyAdmin
 sql >> Base de données >  >> Database Tools >> phpMyAdmin

Installer et sécuriser phpMyAdmin avec Apache sur Debian 9

phpMyAdmin est un outil d'administration gratuit et open-source pour MySQL et MariaDB. En tant qu'application Web portable écrite principalement en PHP, il est devenu l'un des outils d'administration MySQL les plus populaires, en particulier pour les services d'hébergement Web. Dans ce guide, nous allons installer phpMyAdmin avec Apache sur le serveur Debian 9 avec le serveur web Apache.

Vous pouvez également consulter notre guide sur l'installation et la sécurisation de PhpMyAdmin sur Ubuntu et CentOS 7

Déploiement de votre serveur cloud
Si vous n'êtes pas encore inscrit sur Cloudwafer, vous devez commencer par vous inscrire . Prenez un moment pour créer un compte après quoi vous pourrez rapidement déployer vos serveurs cloud.

Une fois inscrit, connectez-vous à votre Espace Client Cloudwafer avec le mot de passe fourni dans votre mail et déployez votre Cloudwafer serveur cloud.

Mise à jour des packages système
Il est recommandé de mettre à jour le système avec les derniers packages avant de commencer toute installation majeure. Mettez à jour avec la commande ci-dessous :

sudo apt-get update && sudo apt-get upgrade

Remarque : L'utilisateur connecté doit avoir les privilèges sudo pour pouvoir installer les packages.

Étape 1 :Installer phpMyAdmin
Pour installer phpMyAdmin à partir des dépôts Ubuntu par défaut, tapez la commande ci-dessous suivie de y pour continuer :

sudo apt-get install phpmyadmin

Après l'installation, une série de questions vous sera posée concernant la configuration de base de phpMyAdmin.

  • Utilisez l'onglet tab touche du clavier pour la navigation.
  • Entrez un mot de passe administrateur PHP, sinon un mot de passe aléatoire sera généré.

Si vous n'avez obtenu aucune des étapes ci-dessus après l'installation de phpmyadmin, vous pouvez saisir la commande ci-dessous :

sudo dpkg-reconfigure phpmyadmin

Ensuite, nous devons redémarrer Apache avec la commande ci-dessous pour que les modifications prennent effet :

sudo systemctl restart apache2   

Enfin, pour accéder à l'interface Web de PhpMyAdmin, ouvrez un navigateur et saisissez l'adresse réseau suivante.

http://your_server_IP_or_your_domain_/phpmyadmin

MySQL 5.7 a changé le modèle sécurisé; par conséquent, vous phpMyAdmin ne pourrez pas utiliser les informations d'identification root par défaut. En conséquence, nous allons créer un nouvel utilisateur et accorder les privilèges requis, ce qui est une solution sûre et simple.

Connectez-vous à MySQL en exécutant la commande ci-dessous :

sudo mysql --user=root mysql

Créez un utilisateur pour phpMyAdminExécutez les commandes suivantes (en remplaçant ayodele et randompass par le nom d'utilisateur et le mot de passe souhaités) :

CREATE USER 'ayodele'@'localhost' IDENTIFIED BY 'randompass';

GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;

Vous pouvez maintenant procéder à la connexion en utilisant les informations d'identification créées. Une fois connecté, l'interface utilisateur ressemble à la capture d'écran ci-dessous :

SÉCURISER VOTRE INSTANCE PHPMYADMIN
La sécurisation de votre PHPMyAdmin est essentielle pour empêcher tout accès non autorisé. Pour ce faire, un moyen simple consiste à placer une passerelle devant l'ensemble de l'application en utilisant les fonctionnalités d'authentification et d'autorisation .htaccess intégrées d'Apache.

Tout d'abord, nous devrons activer l'utilisation des remplacements de fichiers .htaccess en éditant notre fichier de configuration Apache. Ouvrez le phpmyadmin.conf avec la commande ci-dessous :

sudo nano /etc/apache2/conf-available/phpmyadmin.conf 

Ajoutez les éléments suivants, comme indiqué dans la capture d'écran ci-dessus :

Options  +FollowSymLinks +Multiviews +Indexes  # edit this line
DirectoryIndex index.php

AllowOverride None
AuthType basic
AuthName "Authentication Required"
AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user

Enregistrez le fichier avant de fermer puis procédez au redémarrage d'Apache avec la commande :

 sudo systemctl restart apache2  

Ensuite, lancez la commande ci-dessous pour ajouter le mot de passe au fichier htaccess :

sudo htpasswd -c /etc/phpmyadmin/.htpasswd ayodele

Dans cet exemple, nous créons un utilisateur nommé ayodele . Vous pouvez choisir n'importe quel nom d'utilisateur, et il ne doit pas nécessairement être le même que l'utilisateur administrateur de MySQL.

Redémarrez Apache pour que les modifications prennent effet :

sudo systemctl restart apache2

Ainsi, chaque fois que vous accéderez à phpMyAdmin sur votre domaine, vous serez invité à saisir le nom de compte et le mot de passe supplémentaires que vous venez de configurer, comme indiqué ci-dessous :

Après avoir tapé le mot de passe d'authentification Apache, vous serez redirigé vers la page d'authentification phpMyAdmin d'origine pour entrer vos autres informations d'identification.