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 *