Instale phpMyAdmin con LAMP Stack en Ubuntu 20.04 LTS

PhpMyAdmin es una herramienta de administración de base de datos basada en web gratuita y de código abierto escrita en lenguaje de programación PHP. Con phpMyAdmin, los administradores de la base de datos pueden administrar fácilmente servidores de bases de datos únicos o múltiples, ya sea a través de un navegador web. Esto puede ser útil para aquellos que no se sienten cómodos con el indicador de MySQL. phpMyAdmin permite a los administradores de bases de datos realizar todo tipo de tareas de administración de bases de datos, como crear, editar, renombrar, eliminar bases de datos, importar y exportar bases de datos, crear tablas, campos y campos, ejecutar comandos SQL y muchos más. En este tutorial, vamos a instalar phpMyAdmin con la pila LAMP en el sistema operativo del servidor Ubuntu 20.04 LTS.

Instale phpMyAdmin con LAMP Stack en Ubuntu 20.04 LTS

Para instalar phpMyAdmin en el servidor Ubuntu 20.04 LTS, debe tener una pila LAMP en funcionamiento. Si aún no ha instalado LAMP stack, consulte la siguiente guía:

  • Instalar en pc ApacheMySQL, pila de PHP (LAMP) en Ubuntu 20.04 LTS

Una vez que haya configurado la pila LAMP, habilitar el repositorio ‘universo’ si aún no está habilitado.

                      $ sudo add-apt-repository universe
                    
                      $ sudo apt update
                    

Ahora instale phpMyAdmin y todas las demás dependencias requeridas en Ubuntu 20.04 usando los comandos:

                      $ sudo apt install phpmyadmin php-mbstring php-zip php-gd php-json php-curl
                    

A continuación, seleccione el servidor web que debe configurarse automáticamente para ejecutar phpMyAdmin. Elija el servidor web con las flechas ARRIBA/ABAJO y presione la tecla BARRA ESPACIADORA. Una vez que elija el servidor web, verá un símbolo * (estrella) delante de él. Presione la tecla TAB para elegir Aceptar y nuevamente presione la tecla ENTER para continuar.

PhpMyAdmin requiere una base de datos instalada y configurada antes de que pueda usarse. Puede hacerlo con el comando dbconfig.

Escoger para configurar la base de datos para phpmyadmin con dbconfig-common:

Debe proporcionar una contraseña para que phpmyadmin se registre en el servidor de base de datos MySQL. Si no se proporciona la contraseña, se generará una contraseña aleatoria.

Enter una contraseña segura y presione ENTER para continuar:

Enter  Contraseña de la aplicación MySQL para phpmyadmin

Escriba la contraseña otra vez:

Vuelva a ingresar la contraseña de la aplicación MySQL para phpmyadmin

Al momento de escribir esta guía, cuando traté de configurar la contraseña para phpmyadmin, arroja el siguiente error:

                       An error occurred while installing the database:
mysql said: ERROR 1819 (HY000) at line 1: Your password does not satisfy
 the current policy requirements . Your options are:                                  
* abort - Causes the operation to fail; you will need to downgrade,             
reinstall, reconfigure this package, or otherwise manually intervene          
to continue using it. This will usually also impact your ability to           
install other packages until the installation failure is resolved.            
* retry - Prompts once more with all the configuration questions                
(including ones you may have missed due to the debconf priority               
setting) and makes another attempt at performing the operation.               
* retry (skip questions) - Immediately attempts the operation again,            
skipping all questions. This is normally useful only if you have 
solved the underlying problem since the time the error occurred.              
* ignore - Continues the operation ignoring dbconfig-common errors.             
This will usually leave this package without a functional database.
                    

mysql dijo: ERROR 1819 (HY000) en la línea 1: Su contraseña no cumple con los requisitos de la política actual

Este error ocurre porque hemos habilitado el VALIDAR CONTRASEÑA componente como se describe en la sección titulada “2.2 Cambiar el método de autenticación para el usuario root de MySQL” en la guía de instalación de LAMP stack adjunta arriba.

Para solucionar este problema, debe deshabilitar temporalmente el componente Validar contraseña y volver a habilitarlo después de configurar la contraseña para phymyadmin. Haga clic en Aceptar para close el mensaje de error anterior y elija “abortar” para cancelar la instalación de phpmyadmin.

cancelar la instalación de phpmyadmin

Ahora inicie sesión en el indicador de Mysql ejecutando el siguiente comando:

                      $ mysql -u root -p
                    

Desde el indicador de mysql, ejecute el siguiente comando para deshabilitar el complemento Validar contraseña:

                      mysql> UNINSTALL COMPONENT "file://component_validate_password";
                    

Tenga en cuenta que el comando anterior solo deshabilitará el complemento, pero no lo eliminará. Puedes habilitarlo más tarde. Luego escriba “salir” para salir del indicador de Mysql.

                      mysql> exit
                    

Deshabilite el complemento Validar contraseña en MySQL

Ahora intente instalar phpmyadmin nuevamente usando el comando:

                      $ sudo apt install phpmyadmin php-mbstring php-zip php-gd php-json php-curl
                    

Elija “Sí” y presione ENTER para configurar la base de datos para phpmyadmin con dbconfig-common. Esta vez, la instalación de phpmyadmin funcionará sin problemas.

Una vez que phpmyadmin esté instalado, vuelva a habilitar el complemento Validar contraseña. Para hacerlo, inicie sesión en su indicador Mysql:

                      $ mysql -u root -p
                    

Desde el indicador de mysql, ejecute el siguiente comando para deshabilitar el complemento Validar contraseña:

                      mysql> INSTALL COMPONENT "file://component_validate_password";
                    

Escriba exit para salir del indicador de mysql.

                      mysql> exit
                    

Habilite el complemento Validar contraseña en MySQL

Finalmente, habilite mbcadena extensión php y reiniciar Apache servicio para actualizar los cambios como se muestra a continuación.

                      $ sudo phpenmod mbstring
                    
                      $ sudo systemctl restart apache2
                    

Ahora puede verificar si la extensión mbstring está habilitada o no cargando el archivo info.php desde el navegador web.

Para hacerlo, navegue a https://dirección-IP/info.php desde su navegador.

Verá que el complemento mbstring está habilitado.

Verifique si la extensión mbstring está habilitada

Crear un usuario dedicado para acceder al panel de control de phpMyAdmin

Una vez que se instala phpMyAdmin, un usuario de la base de datos llamado ‘phpmyadmin’ se creará automáticamente con la contraseña administrativa que estableció durante la instalación. Puede iniciar sesión en el panel de phpmyAdmin usando el usuario ‘phpmyadmin’ o mysql raíz usuario. Sin embargo, se recomienda crear un usuario dedicado para administrar las bases de datos a través de la interfaz web de phpMyAdmin.

Para hacerlo, inicie sesión en mysql shell usando el comando:

                      $ mysql -u root -p
                    

Enter su contraseña de root mysql. Ahora estará en mysql shell.

Enter el siguiente comando para crear un nuevo usuario dedicado para phpmyadmin:

                      mysql> CREATE USER 'phpmyadminuser'@'localhost' IDENTIFIED BY 'Password123#@!';
                    

Aquí, phpmyadmin es el nuevo usuario para acceder al panel de phpmyadmin. La contraseña para phpmyadminuser es Contraseña123#@! . Reemplace estos valores con los suyos propios.

Luego otorgue los privilegios apropiados al ‘phpmyadminuser’ usando el comando:

                      mysql> GRANT ALL PRIVILEGES ON *.* TO 'phpmyadminuser'@'localhost' WITH GRANT OPTION;
                    

Finalmente salga del shell mysql:

                      mysql> exit
                    

Crear nuevo usuario para phpmyadmin

Ahora hemos creado un usuario dedicado para administrar las bases de datos a través de la interfaz web phpmyadmin. Avancemos y accedamos al panel de control de phpmyadmin.

Acceder al panel de phpMyAdmin

Abra su navegador web y vaya a https://dirección-ip/phpmyadmin o https://dominio/phpmyadmin . Debería ver la página de inicio de sesión de phpmyadmin. Inicie sesión en la interfaz de phmyadmin usando mysql raíz user o el nuevo usuario que creamos en el paso anterior.

Iniciar sesión en Phpmyadmin

Así es como se ve el tablero de phpMyAdmin:

panel de phpmyadmin

A partir de ahora, puede administrar sus bases de datos a través de la interfaz web de phpMyAdmin.

phpMyAdmin seguro

Esta sección proporciona algunos consejos para asegurar la instalación de PhpMyAdmin. Tenga en cuenta que los siguientes pasos no pudieron proteger phpMyAdmin de forma 100 % segura. Sin embargo, al menos ralentizarán cualquier intento de un perpetrador de entrar en su panel de phpmyadmin.

Deshabilite el inicio de sesión raíz de MySQL en el panel de phpmyadmin

Permitir que el usuario raíz de mysql acceda al panel de phpMyAdmin no es seguro, especialmente cuando se administran bases de datos a través de la red. Es por eso que creamos un usuario dedicado en la sección anterior. Dado que ya tenemos un usuario dedicado, podemos deshabilitar de forma segura el inicio de sesión raíz de mysql para acceder al panel de control de phpmyadmin para minimizar los ataques.

Generalmente, phpmyadmin se instala bajo /usr/share/phpmyadmin/ El directorio y sus archivos de configuración se almacenan en el directorio /etc/phpmyadmin.

Edite el archivo de configuración de phpmyadmin:

                      $ sudo nano /etc/phpmyadmin/config.inc.php
                    

Agregue/modifique los siguientes parámetros:

                      [...]
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['AllowRoot'] = FALSE;
[...]
                    

Editar el archivo de configuración de phpmyadmin

Guardar y close el archivo.

Reiniciar Apache servidor web usando el comando:

                      $ sudo systemctl restart apache2
                    

Ahora intente iniciar sesión en phpmyadmin como usuario raíz. Obtendrás el Acceso denegado mensaje de error:

Deshabilite el inicio de sesión raíz de MySQL en el panel de phpmyadmin

Proteger con contraseña la página de inicio de sesión de phpMyAdmin

Dado que phpMyAdmin es un objetivo fácil para los atacantes, la siguiente tarea recomendada es asegurar la página de inicio de sesión web de phpyMyAdmin. La forma más común de proteger phpMyAdmin del acceso no autorizado es usando Apacheestá incorporado .htaccess funcionalidades de autenticación y autorización.

En primer lugar, habilite el uso de .htaccess sobrescrituras de archivos editando el /phpmyadmin.conf expediente:

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

Agregar “Permitir anular todo” línea dentro de la sección como se muestra a continuación.

                      <Directory /usr/share/phpmyadmin>
    Options SymLinksIfOwnerMatch
    DirectoryIndex index.php

                      
                            AllowOverride All
                      
                    

Editar archivo de configuración de phpmyadmin

prensa CTRL+X seguido por Y para ahorrar y close el archivo.

Reinicie el servicio de apache para actualizar los cambios usando el comando:

                      $ sudo systemctl restart apache2
                    

A continuación, cree un archivo llamado .htaccess dentro de /usr/share/phpmyadmin/ directorio usando el comando:

                      $ sudo nano /usr/share/phpmyadmin/.htaccess

                    

Agregue las siguientes líneas en él:

                      AuthType Basic
AuthName "Restricted Files"
AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user

                    

Guardar y close el archivo.

Ahora, ejecute el siguiente comando para crear un nuevo usuario, por example Ostechnix :

                      $ sudo htpasswd -c /etc/phpmyadmin/.htpasswd ostechnix
                    

Reemplace ‘ostechnix’ con cualquier nombre de usuario de su elección. Se le pedirá que proporcione una contraseña para el nuevo usuario. Enter dos veces.

Salida de muestra:

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

Ahora hemos agregado una capa adicional de seguridad para acceder a la interfaz web de phpMyAdmin. De ahora en adelante, cada vez que intente acceder a la interfaz web de phpMyAdmin, se le pedirá que ingrese el nombre de usuario adicional y su contraseña que acaba de configurar en el paso anterior.

Página segura de inicio de sesión de phpMyAdmin

Una vez que haya ingresado el nombre de usuario y la contraseña correctos, será redirigido a la página de inicio de sesión de autenticación de phpmyadmin. Simplemente ingrese las credenciales de su base de datos para acceder al panel de Phpmyadmin.

Lectura relacionada:

  • Instale phpMyAdmin con LEMP Stack en Ubuntu 20.04 LTS

¡Gracias por pasar!

Ayúdanos a ayudarte:

¡¡Que tenga un buen día!!

Related Posts