Avisos
Vaciar todo

[Resuelto] Proteger wp-login en woocommerce  

 
Tomás
 Tomás
Reputable Member

Hola, buenos días,

De sobra es sabido que proteger wp-admin y wp-login en Wordpress es una buena medida de seguridad, pero mi pregunta es orientado a woocommerce.

¿Puedo bloquear por IP la carpeta de wp-login.php sin que afecte al funcionamiento normal de woocommerce?, podría tener problemas con los inicios de sesión de los clientes u otro tipo de problemas?

Contenido solo visible a usuarios registrados

Citar
Respondido : 08/02/2025 8:39 am
Luis Méndez Alejo
 Luis Méndez Alejo
Moderador Moderator

Hola, Tomás

 

Varias de las medidas de seguridad que aplicamos a nivel servidor (para todas las cuentas de Hosting alojadas en cada servidor) van encaminadas a proteger los formularios de acceso de WordPress, y otros CMS, de ataques de fuerza bruta o con diccionarios, que son las únicas formas posibles de romper la seguridad de una web por medio de la obtención de credenciales de acceso mediante ataques de diccionario, etc.

 

Esto quiere decir que no es necesario aplicar medidas adicionales, a menos que estés detectando actividad sospechosa en tu web o que presumas que hay intentos de acceder a la administración del sitio con credenciales aleatorias u otros métodos.

 

Si bloqueas por IP el acceso a "wp-admin" o "wp-login" lo más probable es que sin querer acabes tu bloqueado y sin acceso o hagas lo mismo con algún cliente o comprador de tu sitio e-commerce.

 

No obstante, siempre puedes añadir algún plugin como "WP Cerber Security", del que ya he hablado en el blog https://www.webempresa.com/blog/wpcerber-plugin-de-seguridad-para-wordpress.html o algún otro para ocultar el login habitual cambiando su denominación aunque esto podría también afectar a tus compradores de la tienda.

Con este plugin podrás crear una regla de bloqueo en WP Cerber > Dashboard > Listas de Acceso. En "Lista negra de IP" puedes añadir rangos de países que quieras bloquear, separados por comas. Aquí puedes ver los rangos de Ip por país: https://es.ipshu.com/country-list

 

Aplicar un 2FA al formulario de login de la administración del sitio "wp-login.php" podría ayudar a reducir las peticiones a "admin-ajax" pero si sois varias las personas que accedéis a la administración de la web, tendrás que hacerlo de forma que cualquiera de ellos, desde su aplicación de generación de códigos únicos para 2FA pueda generar el código desde su móvil sin tener que depender de ti o del administrador principal.

 

Otra solución puede ser añadir reCAPTCHA en tus formularios de login de la web para dificultar el ataque por diccionario o intentos de acceso similares. En el siguiente artículo explico cómo integrar reCAPTCHA v3 en formularios de WordPress, incluido el de comentarios del blog: https://www.webempresa.com/blog/captcha-wordpress-formularios.html

 

En resumen, siempre podrás añadir medidas de seguridad "extra" en tu sitio, aunque desde Webempresa ya se añaden muchas para evitar que las webs alojadas puedan ser vulneradas, pero tendrás que evaluar que las medidas adicionales que apliques no acaben afectando al buen funcionamiento de tu tienda online y que los compradores no tengan que sufrir las consecuencias de esas medidas adicionales.

 

 

Si te surge cualquier duda házmelo saber para ayudarte.

 

 

 

ResponderCitar
Respondido : 08/02/2025 9:32 am

Gestor de Contraseñas - VPN Conexión Segura - Gestor 2FA (Segundo Factor de Autenticación

Tomás
 Tomás
Reputable Member

Hola Luís,

Muchas gracias por tu respuesta.

Te comento que, efectivamente, mi web ha recibido varios ataques, especialmente desde que se ha hecho más visible.

Lo que necesito saber, en particular, es sobre la carpeta wp-login.php. En cuanto a wp-admin, la tengo bien configurada e implementada en Cloudflare, restringiendo el acceso a todo el mundo menos dos direcciones IP (la de casa y del trabajo), ya que tengo contratadas dos IPs estáticas.

El problema es que, como bien sabes, en WooCommerce el formulario de acceso es distinto al de WordPress, y este es el que me preocupa, ya que con las credenciales de administrador también se puede acceder al área de administración de WooCommerce.

En Cloudflare he bloqueado el acceso a la carpeta wp-admin, pero he permitido algunos archivos como: /wp-admin/admin-ajax.php, /wp-admin/admin-post.php, /wp-admin/options.php, y /wp-admin/theme-editor.php, para que el funcionamiento de la tienda no se vea afectado.

Mi pregunta es: ¿podría hacer lo mismo con wp-login.php sin que esto interfiera en el funcionamiento normal de WooCommerce?, es suficiente bloqueando wp-admin??

Gracias de nuevo, y quedo atento a tus recomendaciones.

ResponderCitar
Respondido : 08/02/2025 9:44 am
Luis Méndez Alejo
 Luis Méndez Alejo
Moderador Moderator

Hola, Tomás

 

 

Te pongo dos ejemplos rápidos de por qué las medidas que estás aplicando no son las adecuadas.

 

El archivo /wp-admin/admin-ajax.php es fundamental para muchas funcionalidades de WordPress, incluyendo las acciones AJAX que utilizan plugins y temas. WooCommerce lo utiliza para diversas operaciones, como la actualización del carrito de compras, la gestión de pedidos y la comunicación con las pasarelas de pago que tengas activadas en la tienda.

Bloquear este archivo afectaría gravemente la experiencia de usuario y el funcionamiento de la tienda.

El archivo /wp-admin/admin-post.php se encarga de procesar las solicitudes POST enviadas al área de administración de WordPress y WooCommerce lo usa para almacenar los datos de los productos, procesar los pedidos y otras acciones, si lo bloqueas podrías impedir que los clientes completen compras o que se gestionen correctamente los pedidos.

 

Apenas son dos ejemplos de por qué no es conveniente aplicar bloqueos a archivos y centrarse más en establecer políticas de bloqueos de IP de países a los que no vendes, etc., en lugar de bloquear los archivos que hacen posible el correcto funcionamiento de la tienda.

 

En lugar de permitir el acceso sin restricciones a archivos como /wp-admin/options.php plantéate el utilizar un plugin de seguridad que permita proteger este archivo con contraseña o limitar el acceso a direcciones IP específicas.

 

Si te surge cualquier duda házmelo saber para ayudarte.

 

ResponderCitar
Respondido : 08/02/2025 10:07 am

Cursos Gratuitos WordPress

Tomás
 Tomás
Reputable Member

Hola Luís, si te fijas en mi respuesta, te digo:

bloqueado el acceso a la carpeta wp-admin, pero he permitido algunos archivos como/wp-admin/admin-ajax.php/wp-admin/admin-post.php/wp-admin/options.php, y /wp-admin/theme-editor.php

Pero gracias de todas formas por tu tiempo dedicado.

ResponderCitar
Respondido : 08/02/2025 10:21 am
Luis Méndez Alejo
 Luis Méndez Alejo
Moderador Moderator

Hola, Tomás

 

 

Si me fijé en lo que indicaste de "permitir" pero quise matizar (sobre todo para otros usuarios que lean esta consulta del Foro) el peligro que puede encerrar bloquear ese tipo de archivos.

 

¿podría hacer lo mismo con wp-login.php sin que esto interfiera en el funcionamiento normal de WooCommerce?, es suficiente bloqueando wp-admin??

 

Claro que es posible bloquear o restringir el acceso a wp-login.php sin afectar el funcionamiento normal de WooCommerce, pero requiere algunas precauciones.

Puedes configurar CloudFlare para permitir el acceso a wp-login.php solo desde direcciones IP específicas, como tu propia dirección o la de otras personas que administren la web (si fuese el caso) para dificultar el acceso no autorizado desde otras IP.

Añadir 2FA para tener una segunda capa de seguridad en el inicio de sesión, ya que si un atacante obtiene las credenciales de un usuario con "rol" de administrador necesitará un segundo factor (el código desde el teléfono) para acceder.

Por regla general, los usuarios solo interactúan con la parte frontal de la tienda y no necesitan acceso al dashboard ni a wp-login.php

 

Saludos

ResponderCitar
Respondido : 08/02/2025 11:00 am

Tomás
 Tomás
Reputable Member

Muchas gracias Luís por dedicarme tú tiempo.

 

Ahora entendido muy claro.

 

Muchas gracias 🙂

ResponderCitar
Respondido : 08/02/2025 11:12 am
Luis Méndez Alejo
 Luis Méndez Alejo
Moderador Moderator

Hola, Tomás

 

Si te sirve de consejo, yo habitualmente implemento 2FA en todas las webs que administro y de esta forma me olvido de tener que estar implementando bloqueos, ¡revisando países, IPs, etc. Lo más difícil es que un "atacante" tenga además acceso a tu móvil, por lo que este token generado por tu móvil es la mejor contramedida que se me ocurre.

 

Cualquier consulta que tengas al respecto, no dudes en comunicarlo.

Cerramos el tema, pero si por cualquier causa necesitas reabrirlo, dínoslo vía ticket citando este hilo y lo reabrimos. 😉 

Un saludo

ResponderCitar
Respondido : 08/02/2025 11:25 am

wpdoctor-revisa-la-salud-de-tu-wordpress