Como instalar MariaDB en Ubuntu 24.04 server y configurar phpMyAdmin

Como instalar MariaDB en Ubuntu 24.04 server y configurar phpMyAdmin

Spread the love

Aquí tienes una guía paso a paso para instalar MariaDB y configurar phpMyAdmin en Ubuntu 24.04 Server:

Paso 1: Actualizar el sistema

Antes de empezar, asegúrate de que el sistema esté actualizado.

<code>sudo apt update && sudo apt upgrade -y

Paso 2: Instalar MariaDB

Instala el servidor de MariaDB:

<code>sudo apt install mariadb-server -y

Verifica que el servicio esté activo:

<code>sudo systemctl status mariadb 

Si no está activo, inícialo con:

<code>sudo systemctl start mariadb

Protege la instalación ejecutando el script de configuración segura:

<code>sudo mysql_secure_installation 

Durante el proceso:

Configura una contraseña para el usuario root.

Elimina usuarios anónimos.

Prohíbe el acceso remoto al usuario root.

Elimina las bases de datos de prueba.

Ingresa a la consola de MariaDB para probar la conexión:

<code>sudo mysql -u root -p

Paso 3: Instalar Apache y PHP

Para que phpMyAdmin funcione, necesitas un servidor web y soporte para PHP.

Instala Apache y PHP:

<code>sudo apt install apache2 php php-mysql libapache2-mod-php -y

Verifica que Apache esté funcionando:

<code>sudo systemctl status apache2 

Si no está activo, inícialo con:

<code>sudo systemctl start apache2

Paso 4: Instalar phpMyAdmin

Instala phpMyAdmin desde los repositorios oficiales:

<code>sudo apt install phpmyadmin -y

Durante la instalación:

Selecciona Apache2 como servidor web.

Configura <strong>dbconfig-common</strong> para gestionar la base de datos automáticamente.

Establece una contraseña para el usuario <strong>phpmyadmin</strong>.

Si omitiste la configuración automática o deseas configurar manualmente, puedes ejecutar:

<code>sudo dpkg-reconfigure phpmyadmin

Habilita el archivo de configuración de phpMyAdmin en Apache:

<code>sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin

Reinicia Apache para aplicar los cambios:

<code>sudo systemctl restart apache2

Paso 5: Configurar el acceso remoto a MariaDB (opcional)

Si necesitas permitir conexiones remotas a MariaDB, sigue estos pasos:

Edita el archivo de configuración de MariaDB:

<code>sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

Busca la línea que contiene:

<code>bind-address = 127.0.0.1 

Cambia <strong>127.0.0.1</strong> por <strong>0.0.0.0</strong> para permitir conexiones desde cualquier dirección IP, o especifica una IP concreta.

Reinicia MariaDB:

<code>sudo systemctl restart mariadb

Asegúrate de que el usuario root tenga permisos para acceder de forma remota:

<code>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'tu_contraseña' WITH GRANT OPTION; 
FLUSH PRIVILEGES;

Paso 6: Probar phpMyAdmin

Abre un navegador y accede a:

<code>http://<TU_IP_SERVIDOR>/phpmyadmin

Inicia sesión con las credenciales de MariaDB (root o el usuario configurado).


Paso 7: Asegurar phpMyAdmin

Por razones de seguridad, es recomendable:

Limitar el acceso a phpMyAdmin editando el archivo de configuración en /etc/apache2/conf-enabled/phpmyadmin.conf.

Habilitar un firewall (como UFW) y permitir únicamente IPs de confianza para acceder al servidor.

Y si tengo Nginx?

Si estás utilizando Nginx en lugar de Apache, puedes instalar y configurar MariaDB y phpMyAdmin siguiendo estos pasos específicos para Nginx:


Paso 1: Instalar y configurar MariaDB

Instala el servidor MariaDB como se describe en los pasos anteriores.

<code>sudo apt install mariadb-server -y 
sudo mysql_secure_installation

Verifica que MariaDB esté activo:

<code>sudo systemctl status mariadb

Paso 2: Instalar y configurar Nginx y PHP

Instala Nginx y PHP-FPM (FastCGI Process Manager):

<code>sudo apt install nginx php-fpm php-mysql -y

Verifica que Nginx esté activo:

<code>sudo systemctl status nginx 

Si no está activo, inícialo con:

<code>sudo systemctl start nginx

Configura PHP-FPM para que funcione con Nginx:

Edita el archivo de configuración de PHP-FPM:

<code>sudo nano /etc/php/8.3/fpm/php.ini 

(Reemplaza 8.3 por la versión de PHP instalada si es diferente).Asegúrate de habilitar la directiva cgi.fix_pathinfo=0 descomentándola y asignándole el valor 0:

<code>cgi.fix_pathinfo=0

Reinicia PHP-FPM para aplicar los cambios:

<code>sudo systemctl restart php8.3-fpm

Paso 3: Instalar phpMyAdmin

Instala phpMyAdmin:

<code>sudo apt install phpmyadmin -y

Durante la instalación:

NO selecciones un servidor web cuando se te pida. Esto se configurará manualmente.

Configura <strong>dbconfig-common</strong> para gestionar la base de datos automáticamente.

Si necesitas volver a configurar phpMyAdmin, usa:

<code>sudo dpkg-reconfigure phpmyadmin

Crea un enlace simbólico para que Nginx pueda acceder a phpMyAdmin:

<code>sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin

Paso 4: Configurar Nginx para phpMyAdmin

Edita el archivo de configuración de tu sitio Nginx o crea uno nuevo:

<code>sudo nano /etc/nginx/sites-available/default

Asegúrate de que el bloque del servidor contenga las configuraciones para manejar PHP y phpMyAdmin:

server {
    listen 80;
    server_name TU_DOMINIO_O_IP;

    root /var/www/html;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php8.3-fpm.sock; # Ajusta si tienes otra versión de PHP
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location /phpmyadmin {
        root /var/www/html;
        index index.php;
        try_files $uri $uri/ =404;
    }

    location ~ /\.ht {
        deny all;
    }
}

Prueba la configuración de Nginx:

<code>sudo nginx -t

Reinicia Nginx para aplicar los cambios:

<code>sudo systemctl restart nginx

Paso 5: Probar phpMyAdmin

Abre un navegador y accede a:

<code>http://<TU_IP_SERVIDOR>/phpmyadmin

Inicia sesión con las credenciales de MariaDB.


Paso 6: Asegurar phpMyAdmin

Restringe el acceso editando la configuración de Nginx. Por ejemplo, para permitir solo una IP específica:

location /phpmyadmin {
    allow 192.168.1.100; # Reemplaza con la IP permitida
    deny all;
}

Habilita el firewall (UFW):

<code>sudo ufw allow 'Nginx Full'

Opcional: Usa un certificado SSL para asegurar las conexiones. Puedes configurar Let’s Encrypt con:

<code>sudo apt install certbot python3-certbot-nginx -y sudo certbot --nginx

Si no puedes acceder a phpMyAdmin porque no recuerdas el usuario o contraseña, aquí tienes una guía para resolverlo:

Usuario predeterminado para MariaDB

Por defecto, el usuario para MariaDB es:

Usuario: root

Contraseña: Ninguna (si no configuraste una durante mysql_secure_installation).

Si configuraste una contraseña durante la instalación, úsala. Si no recuerdas la contraseña o el acceso falla, sigue los pasos a continuación.


Restablecer o verificar la contraseña de MariaDB

Accede al terminal de MariaDB con el usuario root:

<code>sudo mysql -u root -p 

Si no configuraste una contraseña, usa solo:

<code>sudo mysql

Si el acceso funciona, verifica o cambia la contraseña del usuario root:

<code>ALTER USER 'root'@'localhost' IDENTIFIED BY 'NuevaContraseñaSegura'; 
FLUSH PRIVILEGES;

Si necesitas habilitar el acceso remoto para phpMyAdmin (por ejemplo, usando el usuario phpmyadmin):

<code>GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'localhost' IDENTIFIED BY 'NuevaContraseñaSegura'; 
FLUSH PRIVILEGES;

Sal de MariaDB:

<code>EXIT;

Probar acceso a phpMyAdmin

Ve a http://<IP_DEL_SERVIDOR>/phpmyadmin.

Inicia sesión con:

Usuario: root o phpmyadmin (dependiendo de cómo lo configuraste).

Contraseña: La que configuraste en los pasos anteriores.


Si olvidaste la contraseña del usuario root

Detén MariaDB temporalmente:

<code>sudo systemctl stop mariadb

Inicia MariaDB en modo seguro:

<code>sudo mysqld_safe --skip-grant-tables --skip-networking &

Conéctate a MariaDB sin contraseña:

<code>sudo mysql

Cambia la contraseña del usuario root:

<code>UPDATE mysql.user SET authentication_string = PASSWORD('NuevaContraseñaSegura') WHERE User = 'root'; 
FLUSH PRIVILEGES; 
EXIT;

Detén el proceso en modo seguro:

<code>sudo killall mysqld

Inicia MariaDB normalmente:

<code>sudo systemctl start mariadb

Intenta acceder nuevamente a phpMyAdmin.


Instalar y configurar MariaDB junto con phpMyAdmin en Ubuntu 24.04 utilizando Apache o Nginx puede parecer un desafío, pero siguiendo estos pasos tendrás un entorno funcional y seguro para gestionar tus bases de datos con facilidad. Recuerda siempre proteger tus configuraciones con contraseñas fuertes, limitar el acceso y mantener tu sistema actualizado para evitar vulnerabilidades. Si tienes dudas o necesitas más ayuda, ¡no dudes en dejar un comentario! 😊

¡Buena suerte con tu instalación y configuración! 🚀

Deja un comentario