Actualizar y securizar phpmyadmin en Ubuntu 18.04

Por defecto Ubuntu trae la version 4:4.6.6-5 de phpmyadmin cuando lo instalamos desde sus repositorios, sin embargo dicha version da algunos errores en Ubuntu 18.04.

Bibliografía:

https://www.solvetic.com/tutoriales/article/5429-como-instalar-y-seguridad-phpmyadmin-en-ubuntu-18-04/

Para actualizarla simplemente añadiremos el repositorio de phpmyadmin y la actualizaremos, actualmente la version se encuentra por la 4:4.9.0.1.

sudo add-apt-repository ppa:phpmyadmin/ppa
sudo apt update
sudo apt upgrade

Con esto ya dispondremos de la ultima version de phpmyadmin y los errores desapareceran.

En otro orden de cosas si deseas darle un plus de seguridad a phpmyadmin puedes usar las funciones de autencicacion y autorizacion de .htaccess. Para ello debes de editar el fichero phpmyadmin.conf.

nano /etc/apache2/conf-available/phpmyadmin.conf

Y agregar la directiva AllowOverride All dentro de la sección <Directory /usr/share/phpmyadmin> de forma de que quede de la siguiente forma

<Directory /usr/share/phpmyadmin> 
Options FollowSymLinks 
DirectoryIndex index.php 
AllowOverride All

Crea el fichero .htaccess con

nano /usr/share/phpmyadmin/.htaccess

Y rellenalo con lo siguiente

AuthType Basic
AuthName "Acceso restringido"
AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user

Hecho esto vamos a crear un fichero .htpasswd donde se ubicara el usuario y contraseña

htpasswd -c /etc/phpmyadmin/.htpasswd nombreusuario

Si deseas agregar mas de un usuario debes hacerlo con el siguietne codigo (fijate que no lleva -c)

htpasswd /etc/phpmyadmin/.htpasswd nombreusuarioadicional

Reinicia apache para que los cambios se implementen

systemctl restart apache2

Tembien puedes desactivar el acceso root a phpmyadmin. Para ello edita el fichero config.inc.php

nano /etc/phpmyadmin/config.inc.php

y agrega $cfg[‘Servers’][$i][‘AllowRoot’] = FALSE; de forma que quede así

$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['AllowRoot'] = FALSE;

De esta forma cuando intentes acceder con el usuario root en phpmyadmin recibirás una alerta de acceso denegado, por lo que deberias de crearte por consola un usuario y darle privilegios sobre las bases de datos que quieres que maneje.

Los comandos para crear un usuario y darle privilegios puedes encontrarlas en https://www.akirah.es/comandos-basicos-con-bases-de-datos/

Deja una respuesta

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

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.