Tiempo de lectura aprox: 9 minutos, 12 segundos
Ocultar la pagina de inicio de sesión de WordPress
Cambiar la URL de inicio de sesión de WordPress y ocultar el wp-admin para burlar a los hackers de sombrero negro y evitar ataques de fuerza bruta … ¡es más fácil de lo que crees, hacer que tu sitio sea más difícil de descifrar!
No nos engañemos. Incluso los novatos saben que todo lo que tienen que hacer para hacer que la vida del propietario de un sitio de WordPress sea miserable es encontrar la página de inicio de sesión de WordPress y adivinar el nombre de usuario y la contraseña.
Adivinar contraseñas, por cierto, no es difícil, especialmente si usas las mismas contraseñas para la mayoría de tus inicios de sesión y compartes toda tu vida en las redes sociales.
WordPress es probablemente, el CMS más popular del mundo y esto lo convierte en un imán irresistible para los piratas informáticos y los intentos de inicio de sesión maliciosos.
Incluso lo mejor de lo mejor puede ser derribado por un disidente sigiloso con acceso a herramientas de fuerza bruta que automáticamente intentarán adivinar tu nombre de usuario y contraseña presionando tu página de inicio de sesión de WordPress una y otra vez.
La mejor manera de luchar contra los ataques de fuerza bruta (que así se conoce esta técnica) es … ¡Esconderse!
Los intentos de fuerza bruta para iniciar sesión en WordPress son tan comunes que incluso hay una página en el Codex dedicada al tema.
Pero … ¿por qué los piratas informáticos y los robots maliciosos tienen la oportunidad de intentar adivinar tus datos de inicio de sesión? Simplemente oculta tu página de inicio de sesión de WordPress y la mayoría de los bots y el software automatizado ni siquiera sabrán que tu sitio existe.
Lo que quiero es que aprendas cómo implementar una de las estrategias más simples y fáciles para proteger tu sitio de crackers y bots maliciosos: cambiar la URL de inicio de sesión de WordPress, ocultar tu página de inicio de sesión de wp-admin y wp-login y redirija a los visitantes no deseados lejos de tu página de inicio de sesión.
¿Por qué cambiar la URL de inicio de sesión de WordPress?
Tengo un sitio estándar de WordPress que instalé hace unos años. Para acceder a la página de inicio de sesión, todo lo que tiene que hacer es ir a wp-admin o wp-login.
Este sitio no ve mucho tráfico. En un mes típico, genera alrededor de 5,000 páginas vistas. Sin embargo, la página de inicio de sesión del sitio ve intentos de inicio de sesión maliciosos de manera sorprendentemente regular.
Tengo un plugin de seguridad activado y rastrea el número de intentos de inicio de sesión maliciosos bloqueados. Desde su instalación, puedo ver que mi sitio maneja cientos de intentos de inicio de sesión maliciosos cada mes, con un promedio de aproximadamente 20 al día, o un intento de inicio de sesión malicioso cada 60 minutos.
Los intentos de inicio de sesión no ocurren uno por hora. Pueden pasar semanas sin que se registre un solo intento de inicio de sesión malicioso. Luego, de repente, se registrarán unos cientos o incluso un par de miles de intentos de inicio de sesión en un corto período.
La mayoría de los sitios de WordPress configurados como instalaciones estándar experimentan periódicamente ataques de fuerza bruta al intentar iniciar sesión en el panel de WordPress. El tuyo probablemente también, lo sepas o no.
Los piratas informáticos pueden determinar fácilmente si un sitio funciona con WordPress o no (a menudo simplemente mirando la fuente de la página).
Una vez que un crackers sabe que tu sitio se ejecuta en WordPress, también sabe cómo encontrar tu URL de inicio de sesión de WordPress (alerta de spoiler: la URL de inicio de sesión predeterminada de WordPress se encuentra ingresando tu nombre de dominio, seguido de /wp-login.php).
El comportamiento predeterminado de WordPress carga la página de inicio de sesión cuando accede a wp-login.php. Si en su lugar escribes wp-admin, serás redirigido automáticamente a wp-login.php.
A menos que sepas cómo cambiar tu nombre de usuario administrador, tu amigable pirata informático vecino también sabrá que tu nombre de usuario probablemente sea algo así como administrador o admin.
Todo lo que el cracker tiene que hacer ahora es adivinar la contraseña. Incluso si no pueden adivinar la contraseña pero siguen intentándolo, esto puede agotar los recursos de su servidor y posiblemente «tirar abajo» tu sitio.
Si no pueden verlo, no pueden descifrarlo
Muchos piratas informáticos son oportunistas y buscan las cosas fáciles; si dejas tu billetera sobre la mesa en una cafetería, los oportunistas la cogerán.
Si no quieres que los oportunistas te roben, mantén ocultas tus pertenencias.
Continuando con esta analogía, tu página de inicio de sesión de WordPress brinda a los usuarios administradores acceso a todo tu dinero, así que como parte de nuestra estrategia de crear «seguridad a través de la oscuridad», ocultamos la URL de tu página de inicio de sesión a todos excepto al administrador.
Opcionalmente, instala WordPress en su propio directorio
Ya sea por que se trate de una nueva instalación de WordPress o de un sitio web existente, siempre que sea posible, considera instalar WordPress en un subdirectorio. Si bien esto no evitará que los piratas informáticos encuentren tu página de inicio de sesión de WordPress si eligen deliberadamente apuntar a tu sitio, desalentará a muchos «bots» aleatorios y usuarios maliciosos que buscan objetivos fáciles para comenzar a golpear tu sitio y sacudir tu árbol para ver lo que cae.
Tener tu sitio de WordPress instalado en un subdirectorio, es un buen primer paso para crear «seguridad a través de la oscuridad».
Como siempre, antes de hacer cualquier otra cosa, crea una copia de seguridad completa de tu sitio y almacenala en un lugar donde no la borres o modifiques accidentalmente.
Una cosa más. Al crear un subdirectorio, elije un nombre que no sea demasiado predecible como https://ejemplo.com/wordpress o http://ejemplo.com/wp. En su lugar, elije algo único que nadie podrá adivinar como https://ejemplo.com/ddiwp (un acrónimo de directorio donde instalé WordPress).
El siguiente paso es ocultar la URL de tu página de inicio de sesión (y opcionalmente redirigir a los visitantes de wp-login.php a otra página de tu sitio).
Hay algunas formas en que puedes ocultar tu página de inicio de sesión de WP a otros usuarios:
- Usa un plugin para enmascarar tu URL de inicio de sesión (la forma más fácil)
- Enmascara tu URL de inicio de sesión de WordPress sin un complemento (para los geek)
- Modifica el archivo .htaccess.
Ocultar la página de inicio de sesión de tu sitio – Descargo de responsabilidad
Antes de comenzar, ten en cuenta que esta estrategia no es recomendable si se requiere una página de inicio de sesión que debe ser fácil de encontrar para otros usuarios (como un sitio de membresía).
Si tu sitio no es un sitio de membresía y los intentos de inicio de sesión se limitan a una docena o menos de administradores, autores, editores y colaboradores, entonces ocultar tu página de inicio de sesión ayudará a proteger tu sitio contra intentos de inicio de sesión maliciosos.
Ocultar wp-login.php usando un plugin
Hay una serie de plugins gratuitos de WordPress que te permitirán ocultar la URL de la página de inicio de sesión. Algunos de estos complementos también te permitirán redirigir a los visitantes de wp-login.php a otra página de tu sitio web.
Dirígete al menú Plugins -> Añadir nuevo y busca «Ocultar inicio de sesión» para ver una lista de complementos de seguridad que permiten hacer eso.
Para este tutorial, utilizaremos el complemento Defender de WPMU DEV, pero insisto, hay muchos.
Defender te permite ocultar y redirigir wp-login.php, e incluye muchas otras características de seguridad.
Después de instalar y activar el complemento, navega hasta el menú principal del panel de WordPress y ve a Defender -> Dashboard.
Localiza la sección «Mask Login Area» y haz clic en el botón «Activate» para activar la función.
Haz clic en el botón «Finish Setup» para abrir la pantalla de opciones de enmascaramiento de URL.
Esto abre la pantalla Herramientas avanzadas (Advanced Tools»).
Debes ingresar, en la sección «Masking URL», una nueva dirección donde los usuarios de tu sitio irán para iniciar sesión o registrarse. Una vez más, recomiendo elegir algo que puedas recordar fácilmente, pero todos los demás no puedan adivinar al azar.
Para este ejemplo, usaré el mismo método de acrónimo utilizado anteriormente para encontrar el nombre del directorio ddiwp y nombré nuestra nueva URL de inicio de sesión de WordPress algo único como:
http://ejemplo.com/ddiwp/gli
En este caso, gli significa iniciar sesión y cumple el objetivo de ser simultáneamente fácil de recordar y difícil de adivinar.
De esta forma, conseguimos que tu nueva URL de inicio de sesión de WordPress sea difícil de adivinar para los piratas informáticos.
Guarda los cambios y cierra sesión en tu sitio de WordPress.
Ahora, intenta iniciar sesión nuevamente a través de la página de inicio de sesión predeterminada en yourdomain.com/wp-login.php.
Normalmente, escribir wp-admin en un navegador web redirige automáticamente a los usuarios a wp-login.php. Defender también deshabilita esta característica.
Solo los usuarios con acceso a la URL enmascarada verán la página de inicio de sesión de WordPress.
La URL de tu página de inicio de sesión de WordPress ahora está enmascarada, para iniciar sesión deberás entrar la URL: http://ejemplo.com/ddiwp/gli
Como un toque extra agradable para tus usuarios, puedes personalizar tu página de inicio de sesión de WordPress (con Mi primer plugin de WordPress), instalar plugins para mejorar el inicio de sesión y el registro del usuario, o permitir que los usuarios inicien sesión en WordPress utilizando una dirección de correo electrónico. Sin embargo, si solo ciertos usuarios pueden acceder a tu sección de administración, puedes limitar el acceso a la página de inicio de sesión para usuarios específicos por direcciones IP.
Paso opcional: Redirigir wp-login.php
Usando el método anterior, cualquier persona que intente visitar la página de inicio de sesión predeterminada de WordPress (es decir, wp-login.php) recibirá un mensaje de error («Esta función está desactivada»).
Si deseas enviar visitantes y usuarios (o incluso piratas informáticos) a una página diferente (por ejemplo, la página de tu tienda, página de contacto, sección de preguntas frecuentes o cualquier otra página de tu sitio), puedes redirigir la URL predeterminada de wp-login.php, usando la función de «Redirect traffic» de Defender.
Para redirigir la página wp-login.php, debes ir al menú Defender -> Advanced Tools -> Mask Login Area.
Habilita la redirección 404 en la sección «Redirect traffic», ingresa el «slug» de la página a la que deseas enviar visitantes y haz clic en el botón «Save Changes» para actualizar la configuración.
Notas:
- Tu «slug» puede consistir en cualquier combinación de a-z y 0-9.
- No puedes agregar URL completas (esto evita enviar sus errores 404 a otro dominio).
Ocultar la página de inicio de sesión de WordPress sin un plugin
Si deseas ocultar tu página de inicio de sesión sin usar un plugin (la manera geek), todo lo que necesitas es un editor de texto, acceder a tus archivos de instalación de WordPress mediante la herramienta que tengas designada (FTP, cPanel File Manager, etc.), y luego:
- Haz una copia de seguridad de tu archivo wp-login.php (Yo recomiendo, de paso, hacer una copia de seguridad de todo).
- Edita el archivo wp-login.php, selecciona todo el contenido y copialo al portapapeles.
- Crea un nuevo archivo de inicio de sesión PHP. El archivo puede tener el nombre que quieras, p.e. entrada-segura.php o, entrada-guay.php, etcétera.
- Pega el contenido del portapapeles en ese nuevo documento, guarda los cambios y cierra.
Alternativamente, abre el wp-login.php y guardalo con el nombre que quieras. - En tu nuevo archivo, busca y reemplaza cada instancia de la cadena «wp-login.php» por el nombre de tu nuevo archivo y guarda el archivo.
- Si has editado en local el nuevo archivo, subelo al servidor; recuerda subirlo al directorio que has creado para tu copia de WordPress.
- Elimina el archivo wp-login.php.
- Prueba tu nuevo inicio de sesión, recuerda acceder con la URL que has diseñado.
Si por alguna razón quieres volver al principio, sólo has de restaurar el archivo wp-login.php y eliminar el creado por ti.
Cualquiera que visite la página predeterminada wp-login.php experimentará un error.
Trucos para el .htaccess
Hay maneras de «ocultar» los detalles de inicio de sesión de WordPress utilizando el archivo .htaccess. Sin embargo, ocultar su URL de inicio de sesión de WordPress no significa necesariamente ocultar lo demás.
Por ejemplo, echemos un vistazo a lo que sucede cuando añades el redireccionamiento de URL a tu .htaccess. Recuerda hacer una copia de seguridad completa de tu sitio antes de realizar cambios en el archivo .htaccess.
Oscurecer la pagina de inicio de sesión de WordPress con redireccionamiento de URL
Puedes cambiar la ubicación de tu página de inicio de sesión cambiando el nombre del archivo de inicio de sesión de WordPress, utilizando el módulo mod_rewrite en un servidor Apache.
Para hacer esto, añade la siguiente línea al archivo .htaccess (nota: reemplaza «newloginpage» con cualquier alias y cambia la URL de ejemplo.com por tu dominio):
RewriteRule ^ newloginpage $ http://www.ejemplo.com/wp-login.php [NC, L]
En este ejemplo, usamos un alias llamado «danzadmalditosdanzad» y volveremos a cargar el archivo .htaccess en nuestro servidor:
RewriteRule ^ danzadmalditosdanzad $ https://ejemplo.com/ddiwp/entrada-guay.php [NC, L] # BEGIN WordPress # Las directivas (líneas) entre `BEGIN WordPress` y `END WordPress` se generan dinámicamente # , y solo se deberían modificar mediante filtros de WordPress. # Cualquier cambio en las directivas que hay entre esos marcadores se sobreescribirán. # END WordPress Options All -Indexes
Ahora, regresa al sitio e ingresa la nueva URL.
Como puedes ver, el método anterior no oculta la URL de inicio de sesión predeterminada de WordPress, simplemente crea un alias que permite a los usuarios iniciar sesión en su panel de WordPress utilizando una dirección web que es más fácil de recordar que https://tuejemplo.com/wp-login.php.
Conclusiones
Idealmente, recomendamos seguir usando un plugin si deseas cambiar la URL de inicio de sesión de WordPress, ocultar las páginas wp-admin o wp-login.php, o redirigir a los usuarios fuera de la página de inicio de sesión predeterminada. Jugar con el código puede causar problemas de compatibilidad, ralentizar tu sitio y crear otros problemas.
Sin embargo, se puede ocultar la forma de acceder, modificando reglas del archivo de seguridad .htaccess de Apache, si te sientes seguro.
WordPress es un imán para piratas informáticos y robots maliciosos, por lo que es importante comprender las mejores prácticas de seguridad de WordPress e implementar múltiples estrategias de seguridad de WordPress para proteger tu sitio de los piratas informáticos y los ataques de fuerza bruta. Esto incluye seguridad a través de la oscuridad.
Cuando se usa como parte de una estrategia de seguridad más integral, la oscuridad puede ser útil. Sin embargo, como acabamos de ver, simplemente ocultar la página de inicio de sesión de WordPress no es suficiente para garantizar que no verás ningún intento de inicio de sesión malicioso.
A menos que cambies realmente la URL de inicio de sesión de WordPress de tu sitio y redirijas a los visitantes no deseados fuera de páginas como wp-admin o wp-login.php, los piratas informáticos y los bots aún podrán encontrar tu página de inicio de sesión e intentar adivinar tus credenciales de inicio de sesión.
¡Gracias por leernos!
¡Tus comentarios y preguntas nos ayudan a mejorar, por favor comenta!