Por defecto cuando instalamos phpmyadmin se puede acceder escribiendo la ip del servidor o cualquier dominio que resuelva a el y añadiendo /phpmyadmin para ver esta pantalla:

imagen1

 

Se han reportado varios fallos de seguridad de phpmyadmin y ademas esta interfaz es mas vulnerable a “directory disclosure” y a ataques futuros por eso es recomendable proteger este acceso con una capa más de autenticación, para eso vamos a utilizar la autenticación básica de apache.

Para poder hacerlo debes ser root o poder escalar privilegios, como phpmyadmin se instala desde la linea de comandos, desde ahí lo protegeremos:

En primer lugar editaremos la configuración del “site” de phpmyadmin, para eso escribimos:

sudo nano /etc/phpmyadmin/apache.conf

Buscaremos la linea donde pone “Directory Index” y añadiremos justo debajo la línea “AllowOverride All” para que quede tal que así:

imagen2

una vez hecho esto, guardamos el archivo.

Ahora vamos a crear el fichero con el que protegeremos la carpeta y donde diremos a apache que fichero contiene la clave de acceso, para ello escribimos lo siguiente:

sudo nano /usr/share/phpmyadmin/.htaccess

y dentro de ese fichero pegaremos lo siguiente donde NombreUsuario será el usuario al que queremos dar acceso:

AuthType Basic
AuthName "Restricted Files"
AuthUserFile /etc/apache2/phpmyadmin.pwd
Require user NombreUsuario

NOTA: si queremos que se pueda acceder con varios usuarios, cambiaremos la última linea por “Require valid-user”

Ahora tenemos que crear el ficheor de contraseña que indicamos antes llamado “phpmyadmin.pwd” para eso utilizaremos la utilidad de Apache2 llamada “htpasswd” sino la tenéis instalada tenéis que ejecutar primero esta instrucción:

apt-get install apache2-utils

una vez instalada para crear el fichero lanzamos esta instrucción:

sudo htpasswd -c /etc/apache2/phpmyadmin.pw NombreUsuario

Nos pedirá dos veces la contraseña para el usuario NombreUsuario ahora solo nos queda recargar la configuración de apache con esta instrucción:

sudo service apache2 reload

hecho esto ya veremos la ventana previa a http://www.mipaginaweb.com/phpmyadmin y nos aparecerá esto:

 

imagen3

est voilá!