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

Creando un tema desde cero para WordPress parte 2: Escribiendo el tema
Creando un tema desde cero para WordPress parte 2: Escribiendo el tema
1. Creando un tema desde cero para WordPress: Consideraciones previas 2. Creando un tema desde cero para WordPress: Escribiendo el tema 3. Creando un tema…
Cómo corregir los errores de datos estructurados de Google Search Console en WordPress
Cómo corregir los errores de datos estructurados de Google Search Console en WordPress
El otro día vi que tenía una serie de errores en el apartado Aspecto de la búsqueda => Datos estructurados de la Google Search Console:…
Cómo solucionar fallo en las actualizaciones automáticas en WordPress
Cómo solucionar fallo en las actualizaciones automáticas en WordPress
Por defecto las actualizaciones menores de WordPress se ejecutan de manera automática, y en alguna ocasión pueden fallar. Es raro, pero puede darse. Lo que…
Reemplazar palabras por enlaces en nuestras entradas
Reemplazar palabras por enlaces en nuestras entradas
En algunas ocasiones puede ser de utilidad crear una función para automatizar un proceso como por ejemplo sustituir palabras por enlaces dentro del contenido de…