Cómo limitar el acceso por IPs en phpMyAdmin

,
Página de inicio phpMyAdmin

En tips anteriores hemos hablado de cómo reforzar la seguridad en phpMyAdmin. Te recuerdo que no es recomendable que phpMyAdmin sea accesible desde internet. Por eso siempre es bueno agregar una segunda capa de seguridad mediante autenticación básica y/o habilitando el soporte para HTTPS. Además puedes cambiar la URL por defecto (http://tudominio.com/phpmyadmin) para iniciar sesión.

Además de ello, si no quieres desactivar el acceso del usuario root en phpMyAdmin, puedes limitar el acceso por IPs en phpMyAdmin que es precisamente lo que te mostraré en este tip. Con ello lograrás tener acceso sólo desde direcciones IPs de confianza.

Limitar el acceso por IPs a la interfaz de inicio de sesión

La idea aquí es básicamente permitir el acceso desde determinadas direcciones IPs que consideramos de confianza. Esta solución no es válida si tu dirección IP de internet cambia de forma dinámica, por lo que necesitarías conectarte a través de una VPN de IP fijo a phpMyAdmin y definir esa IP como confiable. Ten presente que a esa dirección IP que vas a declarar como confiable, solo debes acceder tú.

En el archivo de configuración del alias para phpMyAdmin (si lo has instalado desde los repositorios): “/etc/apache2/conf-available/phpmyadmin.conf” debajo la sección <IfModule> … </IfModule> de la definición de directorio <Directory /usr/share/phpmyadmin> … </Directory> agregar:

Finalmente guarda los cambios y reinicia el servidor web. Para Debian y derivados se hace de esta forma:

Y para CentOS:

Si es pedida la URL de la interfaz de inicio de sesión de phpMyAdmin (http://tudominio.com/phpmyadmin) desde un IP distinto a TRUSTED_IP debe devolverse algo como esto:

Inicio de sesión - phpMyAdmin

Inicio de sesión – phpMyAdmin

Como puedes observar en la figura anterior, es denegado el acceso a la interfaz de inicio de sesión de phpMyAdmin, pero, además, se muestra información sensible sobre el servidor web y el sistema operativo. Para ocultar esta información puedes visitar nuestro tip: Cómo ocultar información de nuestro servidor Apache.

En cambio, si quieres permitir el acceso a todos pero denegar la interfaz de inicio de sesión de phpMyAdmin desde uno o varios IPs, puedes cambiar el código anterior por:

Finalmente guarda los cambios y reinicia el servidor web.

Hasta aquí hemos logrado limitar el acceso por IPs a phpMyAdmin, tanto desde uno o varios IPs de confianza, como para todos; excepto desde uno o varios IPs maliciosos.

0 comentarios

Dejar un comentario

¿Quieres unirte a la conversación?
Siéntete libre de contribuir

Deja una respuesta

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