Cómo agregar una capa adicional de seguridad en la interfaz de inicio de sesión de PhpMyAdmin


MySQL es el sistema de gestión de bases de datos de código abierto más utilizado del mundo en el ecosistema de Linux y, al mismo tiempo, a los usuarios de Linux les resulta difícil administrarlos desde el indicador de MySQL.

Se creó PhpMyAdmin , es una aplicación de gestión de base de datos MySQL basada en la web, que proporciona una forma fácil para que los principiantes de Linux interactúen con MySQL a través de una interfaz web. En este artículo, compartiremos cómo proteger la interfaz phpMyAdmin con protección de contraseña en sistemas Linux.

Antes de continuar con este artículo, asumimos que ha completado una instalación de LAMP (Linux, Apache, MySQL/MariaDB y PHP) y PhpMyAdmin en su servidor Linux. Si no, puede seguir nuestras guías a continuación para instalar la pila LAMP en sus respectivas distribuciones.

  1. Install LAMP and PhpMyAdmin in Cent/RHEL 7
  2. Install LAMP and PhpMyAdmin in Ubuntu 16.04
  3. Install LAMP and PhpMyAdmin in Fedora 22-24

Si desea instalar la última versión de PhpMyAdmin, puede seguir esta guía sobre la instalación de la última versión de PhpMyAdmin en sistemas Linux.

Una vez que haya terminado con todos estos pasos anteriores, está listo para comenzar con este artículo.

Simplemente agregando las siguientes líneas a /etc/apache2/sites-available/000-default.conf en Debian o /etc/httpd/conf/httpd. conf en CentOS requerirá una autenticación básica DESPUÉS para confirmar la excepción de seguridad pero ANTES para acceder a la página de inicio de sesión.

Por lo tanto, agregaremos una capa adicional de seguridad, también protegida por el certificado.

Agregue estas líneas al archivo de configuración de Apache ( /etc/apache2/sites-available/000-default.conf o /etc/httpd/conf/httpd.conf ):

/etc/apache2/sites-available/000-default.conf - En Ubuntu

<Directory /usr/share/phpmyadmin>
    AuthType Basic
    AuthName "Restricted Content"
    AuthUserFile /etc/apache2/.htpasswd
    Require valid-user
</Directory>

/etc/httpd/conf/httpd.conf - En CentOS

 
<Directory /usr/share/phpmyadmin>
    AuthType Basic
    AuthName "Restricted Content"
    AuthUserFile /etc/httpd/.htpasswd
    Require valid-user
</Directory>

Luego use htpasswd para generar un archivo de contraseña para una cuenta que estará autorizada para acceder a la página de inicio de sesión de phpmyadmin. Usaremos /etc/apache2/.htpasswd y tecmint en este caso:

---------- On Ubuntu/Debian Systems ---------- 
# htpasswd -c /etc/apache2/.htpasswd tecmint

---------- On CentOS/RHEL Systems ---------- 
# htpasswd -c /etc/httpd/.htpasswd tecmint

Ingrese contraseña dos veces y luego cambie los permisos y la propiedad del archivo. Esto es para evitar que cualquiera que no esté en el grupo www-data o apache pueda leer .htpasswd :

# chmod 640 /etc/apache2/.htpasswd

---------- On Ubuntu/Debian Systems ---------- 
# chgrp www-data /etc/apache2/.htpasswd 

---------- On CentOS/RHEL Systems ---------- 
# chgrp apache /etc/httpd/.htpasswd 

Vaya a http:/& lt; dirección ip & gt;/phpmyadmin y verá el diálogo de autenticación antes de acceder a la página de inicio de sesión.

Deberá ingresar las credenciales de una cuenta válida en /etc/apache2/.htpasswd o /etc/httpd/.htpasswd para poder continuar:

Si la autenticación es exitosa, será llevado a la página de inicio de sesión de phpmyadmin.