Blog sobre desarrollo WordPress en Español Desarrollo WordPress en Español
Seguridad WordPress

Seguridad WordPress: proteger el archivo wp-login.php

En una entrada anterior vimos cómo proteger el acceso a wp-admin. Vamos a ver ahora cómo proteger el archivo wp-login.php, situado en la raíz de nuestra instalación de WordPress. Éste archivo contiene el formulario de login para acceder a nuestro back-end o panel de administración de la web.

wp login

Es un archivo crítico en cuanto a seguridad ya que uno de los objetivos más importantes para cualquier atacante es el acceso al back-end de nuestro WordPress, por lo tanto protegiendo éste archivo aumentaremos la seguridad de nuestro sitio.

NOTA

Hay que tener en cuenta que en ciertas ocasiones podemos tener un área privada en nuestro front-end por lo que debemos dejar a los usuarios la posibilidad de que puedan iniciar sesión. La solución en este caso pasaría por crear un formulario de login personalizado.

 

Al lío. Vamos a proteger el archivo wp-login.php mediante contraseña. Agregaremos al fichero .htaccess de la raíz de nuestro sitio las siguientes líneas:

En el código anterior, /home/USER/.htpasswds/.htpasswd sería la ruta al archivo que contiene el usuario y contraseña de acceso, en este caso llamado .htpasswd. Es muy recomendable que este archivo se encuentre alojado fuera de la ruta donde se encuentran los archivos de la web, así evitaremos el acceso al mismo vía web.

Podemos generar un archivo .htpasswd directamente desde consola. Por ejemplo si usas xampp, dirígete desde la consola a /xampp/apache/bin y ejecuta esta línea:

Te habrá generado un archivo .htpasswd con tu usuario y contraseña encriptada, que podrás subir a la ruta que has establecido anteriormente en el .htaccess. También podemos obtener estos datos a través de un generador online.

Ahora si intentas acceder al archivo wp-login.php a través de tu navegador, verás que te solicita antes de nada el usuario y clave que hemos establecido.

Si dispones de una IP fija, otra alternativa sería restringir el acceso al archivo wp-login.php solo a determinadas direcciones IP. De esta manera sólo permites acceso a este archivo a las IPs que desees. Para ello, añade estas líneas al fichero .htaccess que hay en la raíz de tu sitio web:

Con esto ya tendríamos el fichero wp-login.php capado excepto para las IPs que deseemos. Podemos añadir tantas líneas “allow from” como queramos.

Puede que también te interese

Crea tu propio motor de búsqueda para WordPress
Crea tu propio motor de búsqueda para WordPress
En este artículo vamos a ver cómo personalizar la búsqueda en WordPress, creando nuestro propio motor de búsqueda para adaptarlo a nuestras necesidades. Por defecto el…
Cómo hacer tu tema de WordPress compatible con WooCommerce
Cómo hacer tu tema de WordPress compatible con WooCommerce
WooCommerce se ha convertido en una de las principales plataformas de eCommerce del mercado. Tanto es así que portales como BuiltWith arrojan cifras como estas:…
Me han hackeado mi página web de WordPress, ¿qué puedo hacer?
Me han hackeado mi página web de WordPress, ¿qué puedo hacer?
Un día nos podemos levantar y encontrarnos con la desagradable noticia de que nuestro sitio ha sido infectado. Esto puede ocurrir por multitud de factores:…
Optimizando el código y las consultas a base de datos para mejorar el rendimiento
Optimizando el código y las consultas a base de datos para mejorar el rendimiento
Optimizar el código y las consultas a base de datos es algo fundamental para cualquier desarrollo web, sobretodo si estás desarrollando un proyecto para sitios…