GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer et sécuriser phpMyAdmin avec Apache sur CentOS 7

phpMyAdmin est un outil open source basé sur PHP pour gérer les serveurs MySQL et MariaDB via une interface Web.

phpMyAdmin vous permet d'interagir avec les bases de données MySQL, de gérer les comptes et les privilèges des utilisateurs, d'exécuter des instructions SQL, d'importer et d'exporter des données dans une variété de formats de données et bien plus encore.

Dans ce tutoriel, nous allons parcourir les étapes nécessaires à l'installation et à la sécurisation de phpMyAdmin avec Apache sur CentOS 7.

Prérequis #

Assurez-vous que vous avez satisfait aux prérequis suivants avant de poursuivre ce didacticiel :

  • LAMP (Linux, Apache, MySQL et PHP) installé sur votre serveur CentOS.
  • Connecté en tant qu'utilisateur avec des privilèges sudo.

Bien que cela ne soit pas nécessaire, il est conseillé d'accéder à votre installation phpMyAdmin via HTTPS. Si vous n'avez pas SSL sur vos sites, suivez les instructions pour sécuriser votre Apache avec Let's Encrypt sur CentOS 7.

Installation de phpMyAdmin #

Pour installer phpMyAdmin sur un système CentOS 7, procédez comme suit :

  1. phpMyAdmin n'est pas disponible dans les référentiels centraux CentOS 7. Pour installer phpMyAdmin, nous devons d'abord activer le référentiel EPEL :

    sudo yum install epel-release
  2. Une fois le référentiel EPEL activé, nous pouvons installer phpMyAdmin et toutes ses dépendances avec la commande suivante :

    sudo yum install phpmyadmin

Configuration et sécurisation de phpMyAdmin #

Le fichier de configuration Apache pour phpMyAdmin est créé automatiquement lors de l'installation. Par défaut, toutes les connexions sauf celles de localhost sont refusées. Étant donné que nous allons accéder à phpMyAdmin à partir d'emplacements distants, nous devons modifier le fichier de configuration et spécifier les adresses IP autorisées.

Ouvrez le fichier de configuration de phpMyAdmin Apache :

sudo nano /etc/httpd/conf.d/phpMyAdmin.conf

Changez les deux lignes qui lisent Require ip 127.0.0.1 avec l'adresse IP de votre connexion domestique. Si vous ne connaissez pas votre adresse IP personnelle, ouvrez la recherche Google dans votre navigateur Web et tapez what is my ip .

/etc/httpd/conf.d/phpMyAdmin.conf
# Apache 2.4
<RequireAny>
    Require ip 192.168.42.57
    Require ip ::1
</RequireAny>

Fermez et enregistrez le fichier.

Si vous souhaitez accéder à votre installation phpMyAdmin depuis n'importe quel endroit, ajoutez Require all granted avant le Require ip doubler.

Pour une couche de sécurité supplémentaire, nous protégerons par mot de passe le répertoire phpMyAdmin en configurant une authentification de base.

Commencez par créer un nouveau fichier d'authentification en utilisant le htpasswd outil. Nous allons stocker le .htpasswd fichier dans /etc/phpMyAdmin répertoire :

sudo htpasswd -c /etc/phpMyAdmin/.htpasswd admin

Dans cet exemple, nous créons un utilisateur nommé admin . Vous pouvez choisir le nom d'utilisateur de votre choix.

La commande ci-dessus vous demandera d'entrer et de confirmer le mot de passe de l'utilisateur.

New password: 
Re-type new password: 
Adding password for user admin

Plus tard, si vous avez besoin d'ajouter des utilisateurs supplémentaires, utilisez la même commande sans le -c drapeau :

sudo htpasswd /etc/phpMyAdmin/.htpasswd admin2

L'étape suivante consiste à configurer Apache pour protéger par mot de passe le répertoire phpMyAdmin et utiliser le .htpasswd dossier. Pour cela ouvrez le phpMyAdmin.conf fichier créé automatiquement lors de l'installation de phpMyAdmin :

sudo nano /etc/httpd/conf.d/phpMyAdmin.conf

Et insérez les lignes suivantes surlignées en jaune :

/etc/httpd/conf.d/phpMyAdmin.conf
<Directory /usr/share/phpMyAdmin/>
    AddDefaultCharset UTF-8

    Options  +FollowSymLinks +Multiviews +Indexes
    AllowOverride None
    AuthType basic
    AuthName "Authentication Required"
    AuthUserFile /etc/phpMyAdmin/.htpasswd
    Require valid-user

   <IfModule mod_authz_core.c>
   ...

Enregistrez le fichier et redémarrez le service Apache pour que les modifications prennent effet :

sudo systemctl restart httpd
C'est aussi une bonne idée de changer le /phpmyadmin alias à quelque chose de plus unique et sécurisé.

Lors de l'accès à votre phpMyAdmin, il vous sera demandé de saisir les identifiants de connexion de l'utilisateur que vous avez précédemment créé :

https://your_domain_or_ip_address/phpmyadmin

Après avoir entré l'authentification de base, vous serez redirigé vers la page de connexion phpMyAdmin où vous devrez entrer vos identifiants de connexion d'administrateur MySQL.

Accéder à phpMyAdmin #

Pour accéder à l'interface phpMyAdmin ouvrez votre navigateur préféré et tapez le nom de domaine ou l'adresse IP publique de votre serveur suivi de /phpmyadmin :

https://your_domain_or_ip_address/phpmyadmin

Entrez les identifiants de connexion de l'utilisateur administratif que vous avez créés précédemment et cliquez sur Go .

Une fois connecté, vous verrez le tableau de bord phpMyAdmin, qui ressemblera à ceci :


Cent OS
  1. Comment installer phpMyAdmin sur CentOS 8

  2. Comment installer et sécuriser phpMyAdmin avec Apache sur Ubuntu 18.04

  3. Comment installer phpMyAdmin avec Nginx sur CentOS 7 / RHEL 7

  4. Comment installer LAMP (Linux Apache MySQL et PHP) sur CentOS 6 avec phpMyAdmin et le cache APC

  5. Comment installer Let's Encrypt avec Apache sur CentOS 7

Comment installer et configurer Prometheus sur CentOS 7

Comment installer et sécuriser Apache avec HTTPS sur Fedora Linux

Comment installer phpMyAdmin sur CentOS 8

Comment installer Apache avec l'hôte virtuel sur CentOS 8

Comment installer et sécuriser phpMyAdmin sur CentOS 8

Comment installer Apache avec PHP-FPM sur CentOS 8