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

Cómo cambiar WordPress Multisite de subdominios a subdirectorios ó viceversa
Cómo cambiar WordPress Multisite de subdominios a subdirectorios ó viceversa
Si alguna vez has instalado WordPress Multisite sabrás que lo primero que te pide es que tomes una decisión: subdominios o subdirectorios. Por favor, elige…
Oculta las notificaciones de plugins y temas en WordPress
Oculta las notificaciones de plugins y temas en WordPress
Es posible que te hayas encontrado alguna vez o tengas un sitio creado con WordPress que tenga multitud de plugins instalados, o algún cliente que…
Cómo agregar campos personalizados al perfil de usuario de WordPress
Cómo agregar campos personalizados al perfil de usuario de WordPress
WordPress nos da la opción de permitir que los usuarios se registren en nuestro sitio (en Ajustes => Generales => Cualquiera puede registrarse). Por defecto…
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…