LinuxParty
En este artículo, lo guiaremos paso a paso por el proceso de instalación de la última versión de PhpMyAdmin con el servidor web Apache en distribuciones basadas en RHEL como CentOS Stream , Fedora , Rocky Linux y Alma Linux
¿Qué es PhpMyAdmin?
PhpMyAdmin es una popular y poderosa herramienta de administración de bases de datos basada en web, y tener la última versión garantiza que tendrá acceso a las funciones y mejoras de seguridad más actualizadas. Al final de esta guía, podrá administrar sus bases de datos MySQL o MariaDB con facilidad utilizando PhpMyAdmin .
Requisitos previos
Antes de comenzar, asegúrese de tener lo siguiente:
- Acceso a un sistema RHEL , CentOS Stream, Fedora , Rocky Linux o AlmaLinux.
- Asegúrese de poder iniciar sesión como usuario root o tener privilegios sudo para instalar el software.
- Una pila LAMP existente , que incluye Apache, MySQL/MariaDB y PHP. Si no tienes LAMP, puedes seguir estos pasos para configurarlo.
Paso 1: actualice el sistema
Antes de instalar cualquier software, es fundamental asegurarse de que su sistema esté actualizado ejecutando el siguiente comando dnf .
sudo dnf update
Actualizar el sistema Linux
Esto actualizará todos los paquetes de su sistema a las últimas versiones.
Paso 2: Instale el servidor web Apache
PhpMyAdmin es una herramienta basada en web y, para usarla, debe instalar el servidor web Apache usando el siguiente comando.
sudo dnf install httpd
Instalar Apache en Linux
Una vez instalado, inicie el servicio Apache y habilítelo para que se inicie en el arranque.
sudo systemctl start httpd sudo systemctl enable httpd
Paso 3: instale MariaDB o MySQL
También necesitará un servidor de base de datos. Puede elegir instalar MariaDB o MySQL , pero usaremos MariaDB en este ejemplo.
sudo dnf install mariadb-server
Instalar MariaDB en Linux
Una vez instalado, inicie el servicio MariaDB y habilítelo para que se inicie en el arranque.
sudo systemctl start mariadb sudo systemctl enable mariadb
A continuación, asegure su instalación de MariaDB ejecutando el script, que le solicitará que ingrese una contraseña para el usuario root, no permitirá los inicios de sesión remotos como root y eliminará a los usuarios anónimos. También eliminará la base de datos de prueba, a la que, de forma predeterminada, pueden acceder usuarios anónimos.
sudo mysql_secure_installation
Proteger MariaDB en Linux
Paso 4: instalar PHP
PhpMyAdmin está construido con PHP , por lo que necesitamos instalar PHP y algunas extensiones requeridas usando el siguiente comando.
sudo dnf install php php-mysqlnd php-json php-mbstring
Instalar PHP en Linux
Paso 5: Instale PhpMyAdmin
Ahora, procedamos a instalar PhpMyAdmin en nuestro sistema Linux navegando al directorio raíz de documentos del servidor web /var/www/html como se muestra.
cd /var/www/html
A continuación, descargue la última versión de PhpMyAdmin usando el siguiente comando wget como se muestra.
sudo wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz
Una vez descargado, extraiga el archivo descargado y cambie el nombre del directorio para su comodidad.
sudo tar -xvzf phpMyAdmin-latest-all-languages.tar.gz sudo mv phpMyAdmin-*/ phpmyadmin
Cree un archivo de configuración para PhpMyAdmin.
sudo cp /var/www/html/phpmyadmin/config.sample.inc.php /var/www/html/phpmyadmin/config.inc.php
Edite el archivo de configuración:
sudo nano /var/www/html/phpmyadmin/config.inc.php
Busque la siguiente línea y configure su propio Blowfish_secret:
$cfg['blowfish_secret'] = 'tu_secreto';
Guardar y salir del archivo.
Paso 6: abra el puerto Apache en firewalld
De forma predeterminada, Apache suele utilizar los puertos 80 y 443 para HTTP y HTTPS , respectivamente. Para abrir los puertos de Apache y permitir el acceso a PhpMyAdmin en su servidor, ejecute:
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent sudo firewall-cmd --zone=public --add-port=443/tcp --permanent sudo firewall-cmd --reload
Estos comandos agregan una regla para permitir el tráfico entrante en el puerto especificado y recargar el firewall para aplicar los cambios.
Paso 7: reinicie el servidor web Apache
Finalmente, reinicie Apache para aplicar los cambios:
sudo systemctl restart httpd
Paso 8: acceda a PhpMyAdmin
Ahora puede acceder a PhpMyAdmin a través de su navegador web navegando a la dirección IP o nombre de dominio de su servidor seguido de "/phpmyadmin" en la URL:
http://tu_ip_servidor/phpmyadmin
Inicie sesión con sus credenciales de MySQL o MariaDB.
PHPMyAdmin Iniciar sesión
Panel PHPMyAdmin
Paso 9: Permitir el acceso externo en PhpMyAdmin
Abra el archivo de configuración PhpMyAdmin .
sudo vi /etc/httpd/conf/httpd.conf
Busque la <Directory "/var/www/html">
sección o la sección donde está configurado su PhpMyAdmin y actualiza la Require
directiva para permitir que todas las direcciones IP accedan a PhpMyAdmin .
<Directory "/var/www/html/phpmyadmin"> ... Require all granted ... </Directory>
La configuración anterior permite el acceso desde cualquier dirección IP, pero si desea restringir el acceso a IP específicas, reemplácela Require all granted
con Require ip your_ip
.
Reinicie Apache para aplicar los cambios.
sudo systemctl restart httpd
Ahora, debería poder acceder a PhpMyAdmin desde el mundo exterior utilizando la dirección IP o el dominio de su servidor.
http://tu_ip_servidor/phpmyadmin
Recuerde, abrir el acceso a PhpMyAdmin desde el mundo exterior puede plantear riesgos de seguridad. Asegúrese de contar con un mecanismo de autenticación sólido y considere usar HTTPS para la comunicación cifrada. Además, restrinja el acceso solo a direcciones IP confiables si es posible o asegure la URL de inicio de sesión de PhpMyAdmin .
Cambiar la URL de inicio de sesión de phpMyAdmin
La URL de inicio de sesión predeterminada para phpMyAdmin es predecible y comúnmente es el objetivo de actores maliciosos que intentan explotar vulnerabilidades. Cambiar la URL de inicio de sesión agrega una capa adicional de seguridad, lo que dificulta que usuarios no autorizados obtengan acceso a la interfaz de administración de su base de datos.
Para hacerlo, cree un archivo de configuración /etc/httpd/conf.d/phpMyAdmin.conf .
vi /etc/httpd/conf.d/phpMyAdmin.conf
A continuación, agregue la siguiente configuración.
#Alias /phpMyAdmin /var/www/html/phpmyadmin Alias /my /var/www/html/phpmyadmin <Directory /var/www/htm/lphpmyadmin> AddDefaultCharset UTF-8 <IfModule mod_authz_core.c> # Apache 2.4 <RequireAny> Require all granted # Additional IP or hostname-based access control can be added here </RequireAny> </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1 # Additional IP or hostname-based access control can be added here </IfModule> </Directory>
Reemplácela /my
con la URL de inicio de sesión personalizada que desee. Guarde los cambios y salga del editor de texto.
Después de realizar cambios en los archivos de configuración, reinicie Apache para aplicar las modificaciones:
systemctl restart httpd
Abra su navegador web y navegue hasta la nueva URL de inicio de sesión de phpMyAdmin .
http://tudominio.com/yo/
URL de inicio de sesión de phpMyAdmin
Configurar SSL para phpMyAdmin
Asegurar la comunicación entre el servidor web Apache y phpMyAdmin es crucial para proteger información confidencial, como las credenciales de inicio de sesión y el contenido de la base de datos. Una forma eficaz de lograrlo es configurando SSL ( Secure Socket Layer ) para phpMyAdmin en un servidor web Apache.
Para hacerlo, primero instale el módulo mod_ssl en su servidor.
yum install httpd mod_ssl openssl
A continuación, cree un directorio para almacenar el certificado y genere un certificado SSL autofirmado y una clave privada como se muestra.
mkdir /etc/httpd/ssl openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/httpd/ssl/apache.key -out /etc/httpd/ssl/apache.crt
Crear certificado SSL para PhpMyAdmin
Después de crear el certificado SSL y la clave, abra el archivo de configuración de Apache SSL.
vi /etc/httpd/conf.d/ssl.conf
A continuación, agregue las siguientes líneas al archivo de configuración.
SSLEngine on SSLCertificateFile /etc/httpd/ssl/apache.crt SSLCertificateKeyFile /etc/httpd/ssl/apache.key
Guarde los cambios y reinicie el servidor web Apache.
systemctl restart httpd
Ahora, abra el archivo de configuración phpMyAdmin.
vi /var/www/html/phpmyadmin/config.inc.php
Agregue las siguientes líneas para forzar SSL para phpMyAdmin.
$cfg['ForceSSL'] = true;
Guarde los cambios y salga del editor de texto.
Finalmente, abra su navegador web y navegue hasta la siguiente URL para acceder a phpMyAdmin a través de una conexión SSL segura.
https://tudominio.com/yo/
Tenga en cuenta que el mensaje que indica una conexión insegura se debe únicamente a la utilización de un certificado autofirmado. Para continuar, haga clic en "Avanzado" y confirme la excepción de seguridad.
Advertencia SSL
Inicio de sesión seguro con phpMyAdmin
Conclusión
¡Felicidades! Ha instalado correctamente PhpMyAdmin con Apache en su sistema RHEL, CentOS Stream, Rocky Linux o AlmaLinux. Esta herramienta basada en web simplifica la administración de sus bases de datos, facilitando tareas como la creación de bases de datos, consultas y administración de datos.
-
Bases de Datos
- La última versión de MySQL es decepcionante, dicen algunos expertos en bases de datos
- Cómo instalar MongoDB en AlmaLinux 9 con ejemplos de uso
- Cómo instalar PostgreSQL 16 en distribuciones basadas en RHEL, AlmaLinux, RockyLinux y Fedora
- Cómo instalar PhpMyAdmin con Apache en sistemas RHEL, Alma Linux, Rocky Linux, Centos y Fedora
- Cómo hacer una copia de seguridad y restaurar una base de datos PostgreSQL en Linux
- Cómo instalar phpPgAdmin y PostgreSQL en CentOS, AlmaLinux, RHEL, RockyLinux y similares
- 20 comandos mysqladmin para la administración de bases de datos MYSQL/MariaDB
- Copiar y restaurar copias de seguridad de MySQL / MariaDB para la administración de bases de datos
- Crear Copias de Seguridad (Backups) de MariaDB o MySQL Automáticas con AutoMySQLBackup
- Grafana, software para análisis y supervisión
- Cómo configurar la replicación MariaDB (Maestro-Esclavo) en CentOS / RHEL y Debian
- Arrancar al inicio MySQL / MariaDB con Linux.
- Conocer que IPs están conectados a MySQL haciendo consultas a la base de datos.
- MariaDB, guía práctica para Administradores Linux
- Cómo configurar MariaDB Galera Cluster 5.5 en CentOS, RHEL y Fedora