¿Limitar los intentos de inicio de sesión sin un complemento?
Cómo proteger la página de inicio de sesión de WordPress sin usar un complemento
English version: Limit login attempts without a plugin?
Puedes encontrar muchos comentarios y consejos al respecto en internet. Pero ¿es real?
Por defecto, WordPress permite un número ilimitado de intentos de inicio de sesión a través del formulario de inicio de sesión, enviando cookies especiales, usando llamadas XML-RPC y llamadas a la API REST. Esto permite descifrar contraseñas con relativa facilidad mediante ataques de fuerza bruta. Hoy en día, hackers y bots intentan constantemente iniciar sesión en tu sitio de WordPress adivinando tu contraseña de administrador y las contraseñas de otros usuarios registrados. Por lo tanto, si quieres proteger tu sitio sin usar plugins, necesitas:
- Conozca bien PHP .
- Conozca lo suficiente sobre los filtros y acciones de autenticación (integrados en WordPress) para conectarlos. Recomiendo empezar con enlaces como "authenticate" y "wp_login_failed".
- Realice un seguimiento del formulario de inicio de sesión posterior, las solicitudes de autorización de XML RPC y API REST y, sí, no olvide las cookies de autorización (¿son válidas?).
- Guarda en algún lugar todos los intentos de inicio de sesión y todas las direcciones IP para calcular cuándo y qué IP debes bloquear. Recomiendo usar la API Transient. En serio. Es la forma más sencilla. Claro que no puedes controlarla, pero usarla te permite hacer algo sin conocimientos de SQL.
- Calcular el tiempo entre intentos fallidos de inicio de sesión para una IP particular.
- ¿Tiene una herramienta o código PHP para restablecer cualquiera de esos contadores y la IP de un cliente bloqueado? ¿Qué sucedería si un cliente legítimo fuera bloqueado por casualidad?
¿Parece una locura? Tienes una segunda opción: buscar en Google fragmentos de código de algún blog de internet sin garantía ni soporte.
Conclusión: Puedes encontrar muchos consejos en internet sobre cómo limitar los intentos de inicio de sesión sin plugins. Pero todos los consejos provienen de personas que ni siquiera saben exactamente cómo funciona el algoritmo de autenticación de WordPress, incluyendo a los amables usuarios de StackOverflow. En cualquier caso, puedes hacerlo si no te preocupa la seguridad de tu sitio, ya que no hay forma de hacerlo correctamente sin conocimientos de programación PHP ni del mecanismo de autenticación de WordPress.