Los ataques por fuerza bruta a nuestro wp-admin (o mejor dicho wp-login.php) son muy habituales. Es como buscar una aguja en un pajar el que esos bots malicioso descubran cuales son las credenciales de nuestra web. Cierto, pero lo que de verdad nos debería molestar es el gasto inútil de recursos, y el ruido que generan ensuciando los logs de nuestro servidor con tanto intento fallido de ataque.

Lo más habitual es recurrir al uso de algún plugin de WordPress tipo firewall que limite los intentos fallidos de login o que sencillamente nos cambie la URL de acceso a nuestro dashboard, cambiando wp-login.php por mipaneldecontrol.php o la ruta que nosotros queramos. Ya sabéis que no me gustan los firewalls o plugins de seguridad para WordPress:
Método 1: Enviar un header personalizado desde tu browser
Este método consiste en enviar junto a la petición HTTP una cabecera que consta de una clave y valor personalizados. Si el par clave/valor es correcto se habilitará el formulario de login de tu WordPress, y podrás entrar tu user y password habitual. La cabecera actúa a modo de interruptor. En caso contrario, que no enviemos la cabecera HTTP correcta o que ésta no exista, nuestro servidor responderá con HTTP CODE 410 (GONE o lo que es lo mismo «Vete a la M***** maldito intruso!!!» ). Explicaré como hacerlo para Apache, lo siento soy un Apache Lover….Si alguien quiere currarselo para NGINX que lo haga y lo ponga en los comentarios, le estaré agradecido.
Este es el código que tienes que copiar en el inicio de tu .htaccess (o mejor si puedes en tu server config o virtual host) :
<FilesMatch ^(wp-login\.php|wp-admin)$>
RewriteCond %{QUERY_STRING} !.*action=logout.*
RewriteCond %{HTTP:QUIENSOY} !=manoloeldelbombo
RewriteRule ^ - [L,R=410]
</FilesMatch>
Cambia lo de ‘QUIENSOY’ y ‘manoloeldelbombo’ por lo que quieras…… No tienes que memorizarlos. Tras este cambio si alguien accede a tu wp-admin o wp-login.php via URL tipo https://miweb.com/wp-admin o https://miweb.com/wp-login.php le aparecerá el siguiente y contundente mensaje:
Si no te gusta el agresivo GONE y quieres ser más educado, no dar pistas, hacerte el sueco ante el intruso y decirle que no sabes que te está preguntando…..muéstrale un simple 404. El bot se acabará cansando y dejará de molestarte, pues pensará que no existe la página de login. Este sería el código a incluir para devolver un 404 (NOT FOUND) :
<FilesMatch ^(wp-login\.php|wp-admin)$>
RewriteCond %{QUERY_STRING} !.*action=logout.*
RewriteCond %{HTTP:QUIENSOY} !=manoloeldelbombo
RewriteRule ^ - [L,R=404]
</FilesMatch>
Ok, entendido, ¿pero cómo demonios entro ahora en mi dashboard de WordPress? Pues muy sencillo, te has de instalar una extensión en tu Chrome o Firefox que permita añadir cabeceras personalizadas a tus peticiones HTTP. Para Chrome hay varias extensiones:
El más completo es el tercero, pues te permite discriminar por URL. El primero es algo complicado de entender y el segundo es el más sencillo y además también existe para Firefox. Así que nos centraremos en ModHeader. Tras instalarlo añadiremos nuestra cabecera, es así de simple:

Ahora si volvemos a visitar la URL de nuestro dashboard ya tendremos acceso al formulario habitual de login de WordPress, pues nuestra cabecera viajará con la petición HTTP y además coincidirá con el valor configurado previamente. Puedes pausar si lo deseas el envío de la cabecera para que actúe como «interruptor» de acceso a tu web. También podrías personalizar una cabecera distinta para cada una de tus webs o usar siempre la misma. ¿Sencillo? Pues el segundo método lo es todavía más….
Ahora falta ver si este método es efectivo. Puede que tenga algún bug y que no funcione cuando se combina con algunos plugins, pero yo de momento no le he encontrado ninguna pega. Eso sí, habría que ver que tal se comporta esta solución con WooCommerce por ejemplo. Esa prueba os la dejo a vosotros…..
En el siguiente post te presento otro método de securizar el dashboard de tu wordpress todavía mucho más sencillo….y sin plugins…
Esta web no admite comentarios nativos. No quiero lios con la maldita RGPD.
Si quieres comentar este artículo ves al siguiente hilo de Twitter: Haz Click aquí para comentar