Cómo deshabilitar el acceso de inicio de sesión de raíz a PhpMyAdmin


Si planea usar phpmyadmin de forma regular para administrar sus bases de datos a través de la red (o, lo que es peor, ¡a través de Internet!), No desea utilizar la raíz cuenta. Esto es válido no solo para phpmyadmin sino también para cualquier otra interfaz basada en web.

En /etc/phpmyadmin/config.inc.php , busque la siguiente línea y asegúrese de que la directiva AllowRoot esté establecida en FALSO :

$cfg['Servers'][$i]['AllowRoot'] = FALSE;

En Ubuntu/Debian , debe agregar estas dos líneas como se muestra:

/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['AllowRoot'] = false;

Guarda los cambios y reinicia Apache .

------------- On CentOS/RHEL Systems -------------
# systemctl restart httpd.service

------------- On Debian/Ubuntu Systems -------------
# systemctl restart apache2.service

Luego siga los pasos descritos en los consejos anteriores para acceder a la página de inicio de sesión de phpmyadmin ( https:/& lt; dirección ip & gt;/phpmyadmin ) e intente iniciar sesión como root:

Luego conéctese a su base de datos MySQL/MariaDB a través del símbolo del sistema y, usando root , cree tantas cuentas como sea necesario para acceder a una base de datos. En este caso, crearemos una cuenta llamada jdoe con la contraseña jdoespassword :

# mysql -u root -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 24
Server version: 10.1.14-MariaDB MariaDB Server

Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> CREATE USER 'jdoe'@'localhost' IDENTIFIED BY 'jdoespassword';
Query OK, 0 rows affected (0.04 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON gestion.* to 'jdoe'@'localhost';
Query OK, 0 rows affected (0.00 sec)

A continuación, vamos a iniciar sesión con las credenciales anteriores. Como puede ver, esta cuenta solo tiene acceso a una sola base de datos:

¡Felicidades! Ha deshabilitado el acceso de root a su instalación de phpmyadmin y ahora puede usarlo para administrar sus bases de datos.

Le recomiendo que agregue una capa adicional de seguridad a su instalación de phpmyadmin con .htaccess protección de contraseña y configuración HTTPS (certificado SSL) para evitar enviar nombre de usuario y contraseña en formato de texto plano a través de la red.