Cómo instalar phpMyAdmin en Rocky Linux

Instale Apache/httpd y mariadb en Rocky Linux

phpMyAdmin es una herramienta gratuita y de código abierto que le permite administrar bases de datos MySQL y MariaDB desde el navegador web. 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 administrar bases de datos, tablas, usuarios de bases de datos, operaciones básicas (crear, leer, actualizar, eliminar) y mucho más.

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

En esta gu√≠a, aprender√° c√≥mo instalar phpMyAdmin con LAMP Stack en Rocky Linux. Esta gu√≠a se puede aplicar en el servidor con una instalaci√≥n LAMP Stack existente o en el servidor nuevo 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.

Instalación de httpd y MariaDB

Primero, instalará el servidor web Apache o httpd y el servidor de base de datos MariaDB. Si ya instaló todos estos paquetes, puede omitir estas etapas.

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

sudo dnf install httpd mariadb mariadb-server

Escribe ‘y‘ y presione ‘Ingresar‘ para confirmar e instalar paquetes.

Instale Apache/httpd y mariadb en Rocky Linux

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

sudo systemctl enable mariadb
sudo systemctl enable httpd

Habilitar servicios mariadb y httpd

3. Ahora inicie el servicio httpd y mariadb usando el siguiente comando.

sudo systemctl start mariadb
sudo systemctl start httpd

4. Después de eso, verifique los servicios httpd y mariadb ejecutando el siguiente comando.

sudo systemctl status mariadb
sudo systemctl status httpd

Si su servicio mariadb está activo y en ejecución, verá un resultado similar al que se muestra a continuación.

Comprobación del estado del servicio mariadb

Si su servicio httpd está activo y en ejecución, verá un resultado similar al que se muestra a continuación.

Comprobación del estado del servicio httpd

Instalación de PHP en Rocky Linux

Después de instalar los paquetes httpd y MariaDB, instalará los paquetes PHP en Rocky Linux. Para esta guía, instalará paquetes PHP desde el repositorio de Remi. Si ya instaló paquetes de PHP, puede omitir esta etapa.

1. Ejecute el siguiente comando para agregar el repositorio EPEL en Rocky Linux.

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

Ahora escriba ‘y’ y presiona ‘Ingresar‘ para agregar el repositorio EPEL.

Agregue el repositorio EPEL a Rocky Linux

2. Después de eso, agregue el repositorio remi al sistema Rocky Linux usando el siguiente comando.

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

Escribe ‘y’ y presiona ‘Ingresar‘ para agregar el repositorio remi.

Agregar repositorio REMI Rocky Linux

3. Antes de instalar los paquetes PHP, debe restablecer el repositorio del módulo PHP y habilitar el módulo PHP desde el repositorio remi.

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

sudo dnf module reset php

Ahora se le pedir√° que agregue la clave GPG del repositorio de remi. Escribe ‘y’ para todas las preguntas relacionadas con GPG y presione ‘Enter’.

Agregar repositorio GPG Key Remi

Ahora puede habilitar el repositorio PHP remi usando el siguiente comando.

sudo dnf module enable php:remi-7.4

Escribe ‘y‘ y presione ‘Ingresar‘ para habilitar el repositorio PHP Remi, especialmente para PHP versi√≥n 7.4.

4. Ahora puede instalar paquetes PHP usando 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, reinicie el servicio httpd para aplicar la nueva configuración.

sudo systemctl restart httpd

Asegurar la implementación de MariaDB

Si está utilizando el sistema nuevo para esta instalación, se recomienda seguir esta etapa para asegurar la implementación de mariadb. Pero, si su sistema actual tiene mariadb antes, puede omitir esta etapa.

1. Ejecute el siguiente comando para configurar la contrase√Īa ra√≠z para mariadb y proteger la implementaci√≥n.

sudo mysql_secure_installation

Ahora escriba la nueva contrase√Īa para el usuario root de mariadb y escriba ‘Y‘ para todas las preguntas, que est√° relacionada con la seguridad b√°sica de la implementaci√≥n 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 puede continuar con la siguiente etapa.

Descargar el código fuente de phpMyAdmin

1. Cambie el directorio de trabajo a ‘/var/www‘ y descargue el c√≥digo fuente de phpMyAdmin usando el comando wget como se muestra 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 extraiga el c√≥digo fuente de phpMyAdmin y obtendr√° el nuevo nombre de directorio como ‘phpMyAdmin-VERSI√ďN-NUMERO‘. Ahora cambie el nombre del directorio a ‘phpmyadmin‘ como a continuaci√≥n.

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

Extraiga el código fuente de phpMyAdmin y cambie la propiedad al usuario de apache

3. A continuaci√≥n, cambie el propietario del ‘phpmyadmin‘ directorio al ‘apache‘ usuario usando el comando chown como se muestra a continuaci√≥n.

sudo chown -R apache:apache phpmyadmin

Ahora vaya a la siguiente etapa para configurar phpMyAdmin.

Configuración de phpMyAdmin

Para esta etapa, configurará la instalación de phpMyAdmin.

1. Cambie el directorio de trabajo a ‘/var/www/phpmyadmin‘ y copie la configuraci√≥n de muestra en ‘config.inc.php‘, luego cambie 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, genere un n√ļmero fuerte y aleatorio (secreto) usando el comando openssl a continuaci√≥n.

openssl rand -hex 16

Copie el secreto generado en su nota.

3. Edite la configuraci√≥n de phpMyAdmin ‘config.inc.php’ usando el editor nano.

nano config.inc.php

Cambiar el valor de ¬ę$cfg[‘blowfish_secret’] = ‘…..’;¬Ľ con su secreto generado en la parte superior como se muestra a continuaci√≥n.

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

Ahora presiona ‘Control+x‘, escribe ‘y‘, y presione ‘Ingresar‘ para guardar la configuraci√≥n y salir.

Configuración de phpMyAdmin

Creando una nueva base de datos para phpMyAdmin

Para esta etapa, crear√° una nueva base de datos y un nuevo usuario para phpMyAdmin. Esta base de datos se utilizar√° para almacenar las configuraciones de phpMyAdmin.

1. Inicie sesión en el shell de mariadb utilizando el siguiente comando mysql.

mysql -u root -p

Escriba su contrase√Īa de root de mariadb y presione ‘Ingresar‘.

2. Crear un nuevo nombre de base de datos ‘phpmyadmin‘ utilizando la consulta a continuaci√≥n.

CREATE DATABASE phpmyadmin;

3. Genere la contrase√Īa cifrada utilizando la siguiente consulta. Y aseg√ļrese de cambiar la contrase√Īa sin formato ‘mystrongpassword’ con su contrase√Īa.

SELECT PASSWORD('mystrongpassword');

Copie la contrase√Īa cifrada en su nota.

4. A continuaci√≥n, cree un nuevo nombre de usuario ‘pma‘ con la contrase√Īa cifrada en la parte superior. Luego conceda al usuario acceder a la base de datos ‘phpmyadmin‘, y aplicar 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 escriba ‘abandonar‘ para salir del shell mariadb.

Crear nueva base de datos para phpMyAdmin

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

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

cd /var/www/phpmyadmin/sql

Ejecute 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

Escriba la contrase√Īa de root de su base de datos y presione ‘Ingresar‘.

Importar esquema de base de datos phpMyAdmin

Agregar configuración de Apache/Httpd para phpMyAdmin

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

1. Cambie el directorio de trabajo a ‘/etc/httpd/conf.d‘ y crear nueva configuraci√≥n ‘phpmyadmin.conf’ utilizando el editor nano.

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

Copie y pegue 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>


Prensa ‘Control+x‘, escribe ‘y‘, entonces presione ‘Ingresar‘ para guardar y salir.

2. Ejecute el siguiente comando para crear una nueva contrase√Īa de autenticaci√≥n b√°sica de Apache. Cambiar el usuario ‘johndoe‘ con tu nombre de usuario.

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

Escriba la contrase√Īa de su usuario y repita.

Agregar configuración de httpd para phpMyAdmin

3. A continuaci√≥n, cambie el directorio de trabajo a ‘/var/www/phpmyadmin‘ y cree una nueva configuraci√≥n ‘.htaccess’ usando el editor nano.

cd /var/www/phpmyadmin/
nano .htaccess

Copie y pegue 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>

Prensa ‘Control+x‘, escribe ‘y‘, entonces presione ‘Ingresar‘ para guardar y salir.

4. A continuaci√≥n, cambie la propiedad del archivo de configuraci√≥n ‘.htaccess‘ y ‘.htpasswd‘ (generado con el comando htpasswd) al ‘apache‘ usando el siguiente comando.

chown apache:apache .htaccess .htpasswd

5. Debe verificar la configuraci√≥n de httpd y asegurarse de que no tenga ning√ļn error, luego reinicie el servicio httpd para aplicar los nuevos cambios.

sudo apachectl configtest
sudo systemctl restart httpd

Generar configuración apache/httpd htpasswd

Verificar la instalación de phpMyAdmin

1. Abra su navegador web y escriba la direcci√≥n IP de su servidor siguiendo con la ruta del directorio ‘/phpmyadmin’.

http://SERVIDOR-IP/phpmyadmin/

Escriba el usuario y la contrase√Īa de la autenticaci√≥n b√°sica de Apache/httpd.

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

si su usuario y contrase√Īa son correctos, obtendr√° la p√°gina de inicio de sesi√≥n de phpMyAdmin. De lo contrario, ser√° redirigido a la misma p√°gina u obtendr√° una p√°gina de acceso ‘401 no autorizado’.

2. En la p√°gina de inicio de sesi√≥n de phpMyAdmin, escriba el usuario de la base de datos ‘ra√≠z‘ y la contrase√Īa, luego haga clic en ‘Vamos‘ para iniciar sesi√≥n en phpMyAdmin.

Iniciar sesión en phpMyAdmin

Ahora obtendrá el panel de phpMyAdmin como se muestra a continuación.

Panel de control de phpMyAdmin

En la captura de pantalla superior, ver√° los detalles del servidor de la base de datos MariaDB. Adem√°s, ver√° los detalles de LAMP Stack en la secci√≥n ‘Servidor web’.

Conclusión

¡Felicidades! Ahora ha instalado con éxito phpMyAdmin en Rocky Linux. Para la siguiente etapa, puede administrar fácilmente su base de datos usando phpMyAdmin. Puede importar su base de datos existente o simplemente crear una nueva base de datos para su aplicación web, o simplemente puede actualizar algunos datos utilizando la consulta MySQL a través de la consulta SQL de phpMyAdmin.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *