blog webempresa

Cambiar URL de acceso WordPress

por | Oct 15, 2022 | Plugins WordPress, Seguridad WordPress

Cambiar URL de acceso WordPress

Recientemente plugins como BackupBuddy se ha visto afectado por un 0day que ha supuesto 5 millones de ataques bloqueados dirigidos hacia instalaciones de WordPress con dicho plugin para comprometer wp-config.php y /etc/passwd (contraseñas) algo que los chicos de Wordfence han mitigado con su plugin de seguridad, pero que deja claro que aunque WordPress es muy seguro, son los plugins y temas de terceros los que pueden acabar comprometiendo esta seguridad y dejar una instalación vulnerable.

Hablemos de cómo cambiar la URL de acceso a WordPress para reducir los intentos de ataques al formulario de login.

Este tipo de ataques a WordPress ponen de manifiesto que hay que poner coto a estos intentos automatizados de obtener acceso a la fuerza al formulario de acceso al dashboard de WordPress mediante ataques de “fuerza bruta” con o sin diccionario y casi siempre scriptados.

Es muy evidente que el acceso a este CMS se realiza por medio de wp-admin o wp-login.php lo que pone en bandeja a scripts automáticos o usuarios con mucho tiempo libre este servicio y solo es cuestión de tiempo y de medidas bajas o inexistentes en los servidores donde se alojen las webs de WordPress para que estos ataques den su fruto.

El objetivo de este artículo, orientado a todos los públicos, pero en particular a usuarios noveles o con pocos conocimientos en seguridad para WordPress y que no quieren complicarse en procesos complejos, es el de aprender a implementar mediante plugin la opción de desplazar mediante cambio de nombre el acceso de wp-admin de forma que se eviten que ataques de fuerza bruta contra el formulario de login tengan éxito, por oscuridad.

  Vídeo sobre la modificación de URL del login de WordPress

 

En el siguiente vídeo documentamos la instalación de Move Login y el framework Noop (actualmente en desuso) así como la realización de una prueba de concepto del mismo.

 

  Por qué cambiar la URL de login en WordPress

 

Uno de los causantes del consumo de recursos en el servidor por parte de cuentas de Hosting que alojen instalaciones de WordPress, son las peticiones de “admin-ajax.php” que se hacen al formulario de acceso en wp-admin y que ponen de manifiesto que la mayoría de estos intentos son “ataques automatizados de diccionario” para obtener credenciales de acceso por “fuerza bruta”, y que dependiendo de las medidas de mitigación y el hardening aplicado en mod_sec en el servidor, estos ataques podrán tener éxito o no.

Si estás alojad@ en un proveedor de Hosting que se preocupe por la seguridad de los servidores y las cuentas de Hosting de sus clientes, entonces no deberías preocuparte en exceso, ya que se supone que estas medidas de protección van implícitas en el servidor donde te alojes y en caso de sucederse este tipo de intentos de ataques, seguramente quedarán en “agua de borrajas” y no prosperarán.

Si crees que no hay intentos de acceso a tu formulario de login de WordPress, no tienes más que instalar el plugin WP Cerber Security y evaluar durante un mes el tráfico que se sucede en tu sitio y principalmente aquel que el propio plugin para porque lo detecta como tráfico malicioso contra wp-admin o wp-login.php y por defecto sencillamente lo bloquea.

Bloqueos de WP Cerber contra intentos de accesos maliciosos

Esto sucede las 24 horas, estés durmiendo o tomando un baño en la playa o esquiando en la montaña, sigue sucediendo minuto tras minuto y la única manera de reducir estos intentos, que al final afectan al número de peticiones que recibe tu web y por ende el servidor donde se aloja, es modificando o dificultando el acceso al formulario de login o añadiendo medidas con el plugin citado WP Cerber u otros similares para poner coto a estos intentos.

Creo que este argumento es suficiente para justificar el implantar medidas adicionales a las que utilice el servidor, de manera que sepas que reduces peticiones maliciosas y de paso añades una capa extra de seguridad a tu web.

 El script de AJAX en WordPress, admin-ajax.php, se localiza en el directorio wp-admin y necesita estar en la lista blanca. Si este archivo no está en la lista blanca, la protección con contraseña del dashboard romperá toda la funcionalidad AJAX que el sitio pueda estar utilizando en el frontal.

  Cómo cambiar la URL de acceso en WordPress

 

Hay varias maneras de modificar y “oscurecer” la URL de acceso a WordPress clásica, la que todo el que usa WordPress conoce, y los malos también, para que deje de ser una de estas dos habituales.

  • https://tu-dominio.com/wp-admin/
  • https://tu-dominio.com/wp-login.php/

Y pase a ser “otra cosa” menos deducible y por consiguiente desconocida para el resto del mundo, salvo tú, tu Hosting y las personas que tengan acceso con credenciales a tu sitio web.

Esto lo puedes hacer por ejemplo con un plugin como WPS Hide Login que se centra en permitir modificar la URL de la página que muestra el formulario de acceso y cambiarla por otra palabra, de tu elección.

Plugin WPS Hide Login

Haz clic en la imagen para acceder al plugin en WordPress.org

Si lo que quieres es modificar la URL de la página que carga el formulario de acceso de tu WordPress, este plugin te permite hacerlo de forma rápida y muy sencilla.

El plugin no modifica el nombre del archivo wp-login.php y aplica cambios en los permisos del citado archivo, tampoco añade reglas de reescritura a los archivos de tu instalación asociados al acceso.

Lo que hace es trabajar como “man in the middle” (hombre en el medio) e interceptar las peticiones a dicho formulario y a wp-admin y hacer que sean inaccesibles.

Si por alguna razón desactivas el plugin o lo eliminas, tu sitio volverá a funcionar con la URL habitual de acceso al formulario de login.

  Instalación y configuración de WPS Hide Login

 

Es un procedimiento sencillo el instalar el plugin y luego activarlo, pero te lo dejo resumido por si no lo ves claro.

  1. Accede al dashboard de WordPress y realiza una copia de seguridad ¡IMPORTANTE!
  2. Verificas que el archivo .htaccess tenga permisos de escritura 644.
  3. Ve a Plugins > Añadir nuevo y busca “WPS Hide Login”.
  4. Instala el plugin y actívalo.
  5. Accede a Ajustes > WPS Hide Login y configúralo.

La configuración del plugin la localizas en:

dashboard   Ajustes   Ajustes generales   WPS Hide Login

Si en el menú lateral de “Ajustes” ves directamente el acceso a WPS Hide Login verás que te lleva a Ajustes generales⁣, ya que es una redirección hacia este apartado de las configuraciones que es donde se ha integrado el ajuste del plugin instalado, al final del todo.

Ajustes de WPS Hide Login

Puedes establecer los nombres sustitutivos para el formulario “login”, así como establecer a qué página de tu web se redireccionarán los intentos de acceso a https://tu-dominio.com/wp-admin o wp-login.php de forma que sea como un bucle para quienes invoquen esa página.

Debe ser un nombre corto, sin espacios, sin caracteres especiales o acentos que puedan luego dificultar su uso.

Si el plugin no puede escribir el archivo .htaccess de WordPress, por problemas de permisos, debes editarlo desde tu Panel de Hosting (wePanel), con el Administrador de Archivos para insertar manualmente el código propuesto por el plugin tras guardar los cambios en la configuración.

Lo normal es que dicho archivo tenga los permisos correctos (644) y que el plugin pueda añadir de forma automática el código, no obstante es bueno siempre verificarlo editando el archivo tras guardar los cambios en el plugin.

  Cómo cambiar la URL de acceso a WordPress sin Plugin

 

Si es posible realizar este tipo de ofuscaciones de una URL sin tener que recurrir a plugins ¡mejor que mejor! y más saludable para tu WordPress, ya que te ahorras un plugin y un dolor de cabeza, menos con las actualizaciones y demás cuestiones colaterales.

Una de estas formas es mediante una directiva en el archivo .htaccess para impedir que wp-login.php pueda ser accesible si no gestionas usuarios en WordPress y no se hace necesario disponer de formulario de acceso para estos usuarios (muy recomendado), pues servicios como los comentarios se pueden externalizar para no depender del formulario nativo de comentarios de WordPress -usando cajas de comentarios de Facebook, DISQUS, etc.-, o puedes optar por no requerir estar logueado para comentar.

Esta directiva la añades en el mencionado archivo, antes del # BEGIN WordPress que suele aparecer en el archivo para el mod_rewrite.c con el siguiente código:

<Files wp-login.php>
	ErrorDocument 401 default
	AuthUserFile /home/<user>/.htpasswds/.htpasswd_user
	AuthName "Acceso restringido"
	AuthType Basic
	Require valid-user
</Files>

Si bien que implementar una protección por htaccess al directorio /wp-admin, desde el Panel de Hosting, donde habitualmente se dispone de esta funcionalidad para proteger el acceso a determinados directorios (wePanel) sería la opción recomendada siempre:

ErrorDocument 401 default
AuthUserFile /home/<user>/.htpasswds/.htpasswd_user
AuthName "Acceso restringido"
AuthType Basic Require valid-user
<Files admin-ajax.php>
	Order allow,deny
	Allow from all
	Satisfy any
</Files>

Este método no siempre funciona a la primera y depende bastante de lo que tu proveedor de Hosting permita que sea invocado desde el archivo .htaccess de tu sitio web y de tu pericia con este tipo de directivas.

  Conclusiones

 

Con la implementación del plugin Move Login conseguimos evadir, por oscuridad, los intentos de ataques automáticos o manuales de fuerza bruta contra el formulario de acceso al dashboard de WordPress y mejorar la seguridad en este CMS.

Una solución muy factible, si no quieres andar modificando la URL de acceso a tu WordPress, es instalar el plugin CiberProtector para WordPress y activar un segundo factor de autorización o 2FA en WordPress que sirva para añadir una capa extra de seguridad al formulario de acceso, ya que será necesario tener tu móvil (se supone que solo lo tienes tú) para obtener el código de seguridad que se genera automáticamente cada 30 segundos, además del usuario y contraseña de administrador de la web.

Si quieres profundizar un poco más acerca del hardening en WordPress te recomiendo la lectura del Codex donde se explica de forma bastante completa.

¿Te ha resultado útil este artículo?

Promo hosting noviembre