Cómo instalar phpMyAdmin en Rocky Linux

phpMyAdmin es una herramienta gratuita y de código abierto que te permite administrar bases de datos MySQL y MariaDB desde el navegador web. El phpMyAdmin es una aplicación web totalmente capaz escrita en PHP con el objetivo principal de manejar la administración de MySQL/MariaDB a través de la web. Proporciona una interfaz robusta y fácil de usar para gestionar bases de datos, tablas, usuarios de la base de datos, operaciones básicas (crear, leer, actualizar, eliminar), y mucho más.

phpMyAdmin es una aplicación web PHP que puede ejecutarse en cualquier sistema operativo, incluyendo Windows, macOS, Linux y BSD. Los principales componentes que debes instalar antes de instalar phpMyAdmin son los paquetes PHP y un servidor web, puede ser Apache, Nginx, etc.

En esta guía, aprenderás a instalar phpMyAdmin con la pila LAMP en Rocky Linux. Esta guía se puede aplicar en el servidor con una instalación LAMP Stack existente o en el servidor fresco sin ningún paquete LAMP Stack.

Requisitos previos

  • Un sistema Rocky Linux.
  • Un usuario con privilegios de root o sudo. Este usuario se utilizará para instalar nuevos paquetes y realizar cambios en todo el sistema.

Instalar httpd y MariaDB

En primer lugar, instalarás el servidor web Apache o httpd y el servidor de bases de datos MariaDB. Si ya has instalado todos estos paquetes, puedes saltarte estas etapas.

1. Ejecuta el siguiente comando para instalar los paquetes httpd y mariadb.

sudo dnf install httpd mariadb mariadb-server

Escribe‘y‘ y pulsa‘Enter‘ para confirmar e instalar los paquetes.

Instalar Apache/httpd y mariadb en Rocky Linux

2. Una vez completada la instalación, ejecuta el siguiente comando para habilitar los servicios httpd y mariadb para que puedan ejecutarse automáticamente durante el arranque del sistema.

sudo systemctl enable mariadb
sudo systemctl enable httpd

Habilitar los servicios mariadb y httpd

3. Ahora inicia el servicio httpd y mariadb utilizando el siguiente comando.

sudo systemctl start mariadb
sudo systemctl start httpd

4. Después, verifica los servicios httpd y mariadb ejecutando el siguiente comando.

sudo systemctl status mariadb
sudo systemctl status httpd

Si tu servicio mariadb está activo y en funcionamiento, verás una salida similar a la siguiente.

Comprobación del estado del servicio mariadb

Si tu servicio httpd está activo y en funcionamiento, verás una salida similar a la de abajo.

Comprobación del estado del servicio httpd

Instalación de PHP en Rocky Linux

Después de instalar los paquetes httpd y MariaDB, vas a instalar los paquetes PHP en Rocky Linux. Para esta guía, instalarás los paquetes PHP desde el repositorio Remi. Si ya has instalado los paquetes PHP, puedes saltarte esta etapa.

1. Ejecuta el siguiente comando para añadir el repositorio EPEL en Rocky Linux.

sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

Ahora escribe ‘y’ y pulsa‘Enter’ para añadir el repositorio EPEL.

Añadir el repositorio EPEL a Rocky Linux

2. Después, añade el repositorio remi al sistema Rocky Linux utilizando el siguiente comando.

sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm

Escribe y’ y pulsaEnter’ para añadir el repositorio remi.

Añadir Repositorio REMI Rocky Linux

3. Antes de instalar los paquetes de PHP, tienes que restablecer el repositorio de módulos de PHP y habilitar el módulo de PHP del repositorio remi.

Ejecuta el siguiente comando para restablecer el módulo php.

sudo dnf module reset php

Ahora se te pedirá que añadas la clave GPG del repositorio remi. Escribe ‘y’ para todas las preguntas relacionadas con GPG y pulsa ‘Enter’.

Añade el repositorio Remi de claves GPG

Ahora puedes habilitar el repositorio remi de PHP con el siguiente comando.

sudo dnf module enable php:remi-7.4

Escribey’ y pulsa ‘Enter‘ para habilitar el repositorio remi de PHP, especialmente para la versión 7.4 de PHP.

4. Ahora puedes instalar los paquetes de PHP utilizando el siguiente comando.

sudo dnf install -y php php-common php-mysqlnd php-curl php-gd php-bcmath php-mcrypt php-mbstring php-xml php-zip

5. Una vez completada la instalación, reinicia el servicio httpd para aplicar la nueva configuración.

sudo systemctl restart httpd

Asegurar el despliegue de MariaDB

Si estás utilizando un sistema nuevo para esta instalación, se recomienda seguir esta etapa para asegurar el despliegue de mariadb. Pero, si tu sistema actual ya tiene mariadb, puedes saltarte esta etapa.

1. Ejecuta el siguiente comando para establecer la contraseña de root para mariadb y asegurar la implementación.

sudo mysql_secure_installation

2. Ahora escribe la nueva contraseña para el usuario raíz de mariadb y escribe‘Y’ para todas las preguntas, lo que está relacionado con la seguridad básica del despliegue de mariadb.

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n] Y
New password: TYPE NEW PASSWORD for mariadb root user
Re-enter new password:REPEAT
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] Y
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] Y
 ... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] Y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] Y
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

Ahora puedes pasar a la siguiente fase.

Descarga el código fuente de phpMyAdmin

1. Cambia el directorio de trabajo a‘/var/www‘ y descarga el código fuente de phpMyAdmin utilizando el comando wget como se indica a continuación.

cd /var/www/
wget https://files.phpmyadmin.net/phpMyAdmin/5.1.1/phpMyAdmin-5.1.1-all-languages.zip

Descargar el código fuente de phpMyAdmin

2. Ahora extrae el código fuente de phpMyAdmin y obtendrás el nuevo nombre del directorio como ‘phpMyAdmin-VERSION-NUMERO‘. Ahora cambia el nombre del directorio a‘phpmyadmin‘ como se indica a continuación.

unzip phpMyAdmin-5.1.1-all-languages.zip
mv phpMyAdmin-5.1.1-all-languages phpmyadmin

Extraer el código fuente de phpMyAdmin y cambiar la propiedad al usuario apache

3. A continuación, cambia el propietario del directorio ‘phpmyadmin‘ por el usuario‘apache‘ utilizando el comando chown como se indica a continuación.

sudo chown -R apache:apache phpmyadmin

4. Ahora pasa a la siguiente fase para configurar phpMyAdmin.

Configurar phpMyAdmin

En esta etapa, vas a configurar la instalación de phpMyAdmin.

1. Cambia el directorio de trabajo al directorio‘/var/www/phpmyadmin‘ y copia la configuración de ejemplo en ‘config.inc.php‘, luego cambia el propietario del archivo de configuración al usuario‘apache‘.

cd /var/www/phpmyadmin/

cp config.sample.inc.php config.inc.php
chown apache:apache config.inc.php

2. A continuación, genera un número fuerte y aleatorio (secreto) utilizando el comando openssl que aparece a continuación.

openssl rand -hex 16

Copia el secreto generado en tu nota.

3. Edita la configuración de phpMyAdmin ‘config.inc.php’ utilizando el editor nano.

nano config.inc.php

Cambia el valor de«$cfg[‘blowfish_secret’] = ‘…..’;» con tu secreto generado encima, como se indica a continuación.

$cfg['blowfish_secret'] = 'e5c4d8f3e2569dab102873a67481c8bb'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

Ahora pulsa‘Ctrl+x‘, escribe‘y‘, y pulsa‘Enter‘ para guardar la configuración y salir.

Configurar phpMyAdmin

Crear una nueva base de datos para phpMyAdmin

En esta etapa, crearás una nueva base de datos y un nuevo usuario para phpMyAdmin. Esta base de datos se utilizará para almacenar las configuraciones de phpMyAdmin.

1. Accede al shell de mariadb utilizando el comando mysql que aparece a continuación.

mysql -u root -p

Escribe tu contraseña de root de mariadb y pulsa‘Enter‘.

2. Crea una nueva base de datos con el nombre de‘phpmyadmin‘ utilizando la consulta que aparece a continuación.

CREATE DATABASE phpmyadmin;

3. Genera la contraseña encriptada utilizando la siguiente consulta. Y asegúrate de cambiar la contraseña bruta ‘mystrongpassword’ por tu contraseña.

SELECT PASSWORD('mystrongpassword');

Copia la contraseña encriptada en tu nota.

4. A continuación, crea un nuevo nombre de usuario‘pma‘ con la contraseña cifrada encima. A continuación, concede al usuario el acceso a la base de datos ‘phpmyadmin‘, y aplica los nuevos cambios.

CREATE USER 'pma'@'localhost' IDENTIFIED VIA mysql_native_password USING '*617DA9A67DC81CE28027875FA123071F038CC7CA';
GRANT SELECT, INSERT, UPDATE, DELETE ON phpmyadmin.* TO 'pma'@'localhost';
FLUSH PRIVILEGES;

Ahora escribe‘quit‘ para salir del shell de mariadb.

Crear una nueva base de datos para phpMyAdmin

5. Después de crear la base de datos y el usuario, tienes que importar el esquema de la base de datos para phpMyAdmin.

Cambia el directorio de trabajo a‘/var/www/phpmyadmin/sql‘.

cd /var/www/phpmyadmin/sql

Ejecuta el siguiente comando para importar el esquema de la base de datos a la base de datos‘phpmyadmin‘.

mysql -u root -p phpmyadmin < create_tables.sql

Escribe la contraseña de tu base de datos raíz y pulsa‘Enter‘.

Importar el esquema de la base de datos phpMyAdmin

Añadir la configuración de Apache/Httpd para phpMyAdmin

En esta etapa, crearás una nueva configuración de Apache/httpd para phpMyAdmin. Además, configurarás la autenticación básica de Apache para aumentar la seguridad de phpMyAdmin.

1. Cambia el directorio de trabajo a‘/etc/httpd/conf.d‘ y crea una nueva configuración‘phpmyadmin.conf ‘ utilizando el editor nano.

cd /etc/httpd/conf.d/
nano phpmyadmin.conf

2. Copia y pega la siguiente configuración.

# Alias for accessing phpmyadmin
Alias /phpmyadmin /var/www/phpmyadmin

# document root phpmyadmin
<Directory /var/www/phpmyadmin>

# Enable Basic authentication
    AuthType Basic
    AuthName "Please Enter Your Password"
    AuthUserFile /var/www/phpmyadmin/.htpasswd
    Require valid-user

#    If you're paranoid - use this and allow a specific IP address
#    Order deny,allow
#    Deny from all
#    Allow from 127.0.0.1
#    Allow from ::1

</Directory>

Pulsa‘Ctrl+x‘, escribe‘y‘, y luego pulsa‘Enter‘ para guardar y salir.

2. Ejecuta el siguiente comando para crear una nueva contraseña de autenticación básica de apache. Cambia el usuario‘johndoe‘ por tu nombre de usuario.

htpasswd -c /var/www/phpmyadmin/.htpasswd johndoe

Escribe la contraseña de tu usuario y repite.

Añadir la configuración de httpd para phpMyAdmin

3. A continuación, cambia el directorio de trabajo a‘/var/www/phpmyadmin‘ y crea una nueva configuración ‘.htaccess’ utilizando el editor nano.

cd /var/www/phpmyadmin/
nano .htaccess

Copia y pega la siguiente configuración.

AuthUserFile /var/www/phpmyadmin/.htpasswd
AuthGroupFile /dev/null
AuthName "Secret"
AuthType Basic
require valid-user
<Files ~ "^.(htpasswd|htaccess)$">
    deny from all
</Files>

Pulsa‘Ctrl+x‘, escribe‘y‘, y luego pulsa‘Enter‘ para guardar y salir.

4. A continuación, cambia la propiedad del archivo de configuración ‘.htaccess’ y ‘.htpasswd‘ (generado con el comando htpasswd) a‘apache‘ utilizando el siguiente comando.

chown apache:apache .htaccess .htpasswd

5. Debes verificar la configuración de httpd y asegurarte de que no tienes ningún error, luego reinicia el servicio httpd para aplicar los nuevos cambios.

sudo apachectl configtest
sudo systemctl restart httpd

Generar la configuración apache/httpd htpasswd

Verificar la instalación de phpMyAdmin

1. Abre tu navegador web y escribe la dirección IP de tu servidor siguiendo con la ruta del directorio‘/phpmyadmin‘.

http://SERVER-IP/phpmyadmin/

2. Escribe el usuario y la contraseña de la autenticación básica de Apache/httpd.

Iniciar sesión con la autenticación básica de httpd

Si tu usuario y contraseña son correctos, obtendrás la página de inicio de sesión de phpMyAdmin. En caso contrario, serás redirigido a la misma página o obtendrás una página de acceso‘401 no autorizada‘.

2. En la página de inicio de sesión de phpMyAdmin, escribe el usuario de la base de datos«root» y la contraseña, y haz clic en«Ir» para iniciar sesión en phpMyAdmin.

Accede a phpMyAdmin

Ahora obtendrás el panel de control de phpMyAdmin como se indica a continuación.

Panel de control de phpMyAdmin

En la pantalla superior, verás los detalles del servidor de bases de datos MariaDB. También verás los detalles de la pila LAMP en la sección «Servidor web».

Conclusión

Enhorabuena! Ahora has instalado con éxito el phpMyAdmin en Rocky Linux. Para la siguiente etapa, puedes gestionar fácilmente tu base de datos con phpMyAdmin. Puedes importar tu base de datos existente o simplemente crear una nueva base de datos para tu aplicación web, o simplemente puedes actualizar algunos datos utilizando la consulta MySQL a través de la consulta SQL de phpMyAdmin.

También te podría gustar...