Mi CortaFuegos Personalizado para WordPress

La seguridad de tu sitios WordPress puede ser altamente mejorada con la creación de un cortafuegos de WordPress personalizado.

Un cortafuego para WordPress debe ser personalizado debido a que dos sitios no sufren de los mismos problemas y no son atacados por los mismos bots o hackers.

En mi experiencia un cortafuegos para WordPress personalizado se puede hacer de dos formas.

  • La primera de esas formas es mediante la creación de una cuenta gratuita de CloudFlare y el uso de las 5 Reglas de Firewall
  • La segunda la descubrí recientemente y es BBQ Pro de Jeff Starr, un plugin que cuesta $20 y que recibe actualizaciones de por vida sin tener que hacer pagos recurrentes.

En ambos hay cierto nivel de seguridad con su implementación sin embargo puedes agregar tus propias reglas basado en los ataques que recibe tu web.

¿Cómo Personalizar mi Propio Firewall?

Las ideas sobre cómo personalizar mi cortafuegos las tomo de dos lugares.

El primero de ellos es de un monitor de errores 404, si no lo sabías, RankMath tiene esa funcionalidad.

Esta es una lista de errores que yo mismo ocasione.

Monitor de 404 de RankMath
Monitor de Errores 404

RankMath únicamente registra los errores pero el administrador del sitio debe determinar si son errores 404 inofensivos o si estos fueron provocados por bots o hackers.

Por ejemplo, si yo empiezo a ver muchos errores 404 con la palabra ‘cuenta’, yo agregaría esa palabra a mi cortafuegos para WordPress personalizado para detener cualquier usuario que quiera buscar mi pagina de acceso.

La otra opcioń que me brinda datos es el panel de CloudWays que me da un resumen de los bots que han llegado a mis sitios en las últimas 24 horas.

Registro de Bots desde el panel de Cloudways

Además de brindar un reporte de bots, Cloudways tambien bloquea el acceso a la base de datos y el acceso a tu instalación por dirección IP, es decir yo puedo darte mi credenciales FTP o de la base de datos de uno de mis sitios y jamás podrás conectarte a ambos.

Tambien Cloudways ofrece protección contra Bots en alianza con Malcare de forma gratuita.

Puedes probar Cloudways por 3 días de forma gratuita y sin usar tarjeta de crédito y sin pagar un solo dolar dandole clic al banner.

The Ultimate Managed Hosting Platform

¿Por qué Debería Detener los Errores 404 mal Intencionados?

Pienso que hay tres razones importantes por las cuales debes detener los errores 404.

  • Los hackers se enfocan en presas fáciles, usuarios que tiene sitios llenos de vulnerabilidades, listas para ser explotadas.
  • Los recursos de tu servidor no son ilimitados, todo tiene un límite por lo que deberías cuidarlos.
  • La tercera razón es que un cortafuegos detiene los bots, crawlers y hackers de forma automática. No es algo que requiera tanto mantenimiento.

¿Comó Hacerlo por medio de CloudFlare?

CloudFlare tiene 5 reglas gratuitas de Cortafuegos que puedes usar para quitarte algunos problemas de encima.

Así luce el panel de CloudFlare, en este puedes ver el nombre de mis reglas de Firewall y un pequeño gráfico que indica cuán efectivas son.

Para usar mis reglas como punto de partida, sigue estos pasos:

  1. Agrega tu sitio a CloudFlare cambiando los nameservers de tu dominio por los de CloudFlare
  2. Una vez finalizado el proceso de agregar el sitio, ve a la pestaña llamada ‘Firewall’
  3. Y luego ve a la pestaña que dice ‘Firewall Rules’
  4. Haz click donde ‘Create Firewall Rule
  5. Darle un nombre a la regla.
  6. Haz clic donde dice ‘Editar Expresión’
  7. Copia la regla personalizada en el espacio
  8. Haz click en el botón que dice ‘Deploy’

¿Comó Hacerlo por medio de BBQ Pro?

Para hacer esto debes de comprar BBQ Pro de Jeff Star e ingresar las palabras claves en el lugar correcto.

Los pasos son:

  1. Instala y activa BBQ Pro
  2. Busca BBQ Pro en la barra vertical
  3. Vea a la pestaña llamada ‘Firewall
  4. Ahora vea la pestaña que dice ‘Custom’ donde puedes agregar las palabras claves que deseas bloquear

Solo debes agregar las palabras claves que deseas que esten restringidas en tu web.

¿Cuales son mis Reglas Personalizadas para CloudFlare?

Estas son mis reglas personalizadas de Cortafuegos para WordPress si usas CloudFlare.

Solo debes copiar y pegar siguiendo los pasos mencionados anteriormente.

Regla #1 = Extensiones

Esta es mi regla de cortafuegos para proteger una serie de extensiones que ninguna visitante debería revisar en la mayoría de los sitios.

(http.request.uri.path contains ".php") or (http.request.uri.path contains ".zip") or (http.request.uri.path contains ".rar") or (http.request.uri.path contains ".bak") or (http.request.uri.path contains ".bat") or (http.request.uri.path contains ".htacc") or (http.request.uri.path contains ".htpas") or (http.request.uri.path contains ".pass") or (http.request.uri.path contains ".cmd") or (http.request.uri.path contains ".mdb") or (http.request.uri.path contains ".cfg") or (http.request.uri.path contains ".git") or (http.request.uri.path contains ".hg") or (http.request.uri.path contains ".out") or (http.request.uri.path contains ".swp") or (http.request.uri.path contains ".sql") or (http.request.uri.path contains ".exe") or (http.request.uri.path contains ".ini") or (http.request.uri.path contains ".dll") or (http.request.uri.path contains ".git") or (http.request.uri.path contains ".tar") or (http.request.uri.path contains ".bash") or (http.request.uri.path contains ".cgi") or (http.request.uri.path contains ".asp") or (http.request.uri.path contains ".jsp") or (http.request.uri.path contains ".PHP") or (http.request.uri.path contains ".PhP") or (http.request.uri.path contains ".gz") or (http.request.uri.path contains ".dat")

Regla #2

Esta son una serie de palabras que claves que estan bloqueadas en mis sitios.

Algunos de estos son plugins y temas que han tenido vulnerabilidades en el pasado:

(http.request.uri.path contains "new-site") or (http.request.uri.path contains "install") or (http.request.uri.path contains "wp1") or (http.request.uri.path contains "wp2") or (http.request.uri.path contains "old-site") or (http.request.uri.path contains "cms") or (http.request.uri.path contains "old-wp") or (http.request.uri.path contains "backup") or (http.request.uri.path contains ".*") or (http.request.uri.path contains "upload_file") or (http.request.uri.path contains "vuln.htm") or (http.request.uri.path contains "FCKeditor") or (http.request.uri.path contains "browserconfig") or (http.request.uri.path contains "graphql") or (http.request.uri.path contains "/hitmag") or (http.request.uri.path contains "/mailchimp-wp") or (http.request.uri.path contains "/wp-file-manager") or (http.request.uri.path contains "/elementor") or (http.request.uri.path contains "/wpdiscuz") or (http.request.uri.path contains "/woocommerce") or (http.request.uri.path contains "/enfold-child") or (http.request.uri.path contains "/jekyll-exporter") or (http.request.uri.path contains "/breeze-minification") or (http.request.uri.path contains "/magic-liquidizer-responsive-table") or (http.request.uri.path contains "/downloads-manager") or (http.request.uri.path contains "/genesis-columns-advanced") or (http.request.uri.path contains "/tablepress") or (http.request.uri.path contains "/ezoic-integration") or (http.request.uri.path contains "/realia") or (http.request.uri.path contains "/category-page-icons") or (http.request.uri.path contains "/mm-plugin") or (http.request.uri.path contains "/dzs-videogallery") or (http.request.uri.path contains "/contabileads") or (http.request.uri.path contains "/prh-api") or (http.request.uri.path contains "/youtube-embed-plus") or (http.request.uri.path contains "allowurl") or (http.request.uri.path contains "null") or (http.request.uri.path contains "/easy-table-of-contents/") or (http.request.uri.path contains "trackback") or (http.request.uri.path contains "well-known") or (http.request.uri.path contains "phpunit") or (http.request.uri.path contains "author") or (http.request.uri.path contains "readme") or (http.request.uri.path contains "simplebootadmin") or (http.request.uri.path contains "dashboard")

Regla #3

Esta es mi regla para detener bots

(http.user_agent contains "SemrushBot") or (http.user_agent contains "rogerbot") or (http.user_agent contains "dotbot") or (http.user_agent contains "Trendiction") or (http.user_agent contains "trendiction.com") or (http.user_agent contains "Trendictionbot") or (http.user_agent contains "MauiBot") or (http.user_agent contains "ahrefs") or (http.user_agent contains "webmeup-crawler") or (http.user_agent contains "BLEXBot") or (http.user_agent contains "python") or (http.user_agent contains "SEOkicks") or (http.user_agent contains "babbar") or (http.user_agent contains "Barkrowler") or (http.user_agent contains "libwww") or (http.user_agent contains "Blackboard") or (http.user_agent contains "petalbot") or (http.user_agent contains "httrack")

Recuerda que puedes agregar estas reglas en tu panel de CloudFlare, borrar las palabras claves que quieras y agregar otras.

Desde el panel de CloudFlare puedes ver el desempeño de la regla y verificar si estas crean alguna afectación.

¿Cuales son mis Reglas Personalizadas para BBQ?

Son las mismas reglas que agrego en el cortafuegos de CloudFlare pero en un formato de tabla que permite fácilmente copiar y pegar.

Esto es lo que deberías agregar bajo la sección Request URI si usas BBQ Pro.

.php.zip.rar
.bak.bat.htacc
.htpas.pass.cmd
.mdb.cfg.git
.hg.out.swp
.sql.exe.ini
.dll.git.tar
.bash.cgi.asp
.jsp.PHP.PhP
.gz.dat

Esto es lo que deberías agregar bajo Request URI si usas BBQ Pro.

new-siteinstall
wp1wp2
old-sitecms
old-wpbackup
.*upload_file
vuln.htmFCKeditor
browserconfiggraphql
/hitmag/mailchimp-wp
/wp-file-manager/elementor
/wpdiscuz/woocommerce
/enfold-child/jekyll-exporter
/breeze-minification/magic-liquidizer-responsive-table
/downloads-manager/genesis-columns-advanced
/tablepress/ezoic-integration
/realia/category-page-icons
/mm-plugin/dzs-videogallery
/contabileads/prh-api
/youtube-embed-plusallowurl
null/easy-table-of-contents/
trackbackwell-known
phpunitauthor
readmesimplebootadmin
dashboard

Esta es la lista de Agentes de Usuario para bloquear bots sin pensar en lo que andan buscando. Debes agregar en la sección que se llama User Agent.

SemrushBotrogerbot
dotbotTrendiction
trendiction.comTrendictionbot
MauiBotahrefs
webmeup-crawlerBLEXBot
pythonSEOkicks
babbarBarkrowler
libwwwBlackboard
petalbothttrack

¿CloudFlare o BBQ Pro?

Esto es algo que debes considerar antes de optar por uno u otro.

  • CloudFlare te da una gran variedad de funcionalidades gratuitas incluyendo 5 reglas de cortafuegos que ter permite bloquear una gran cantidad de palabras.
  • El plugin gratuito de Jeff star que no se puede personalizar esta disponible en el el repositorio de WordPress de forma gratuita.
  • CloudFlare y BBQ Pro te permite agregar una lista de direcciones IP a tu lista para no bloquearte a ti mismo.
  • Las reglas de CloudFlare te permiten bloquear el tráfico que proviene de ciertos países.
  • El bloqueo de CloudFlare se hace a nivel de la red de contenido global por lo que el servidor no se verá afectado en lo absoluto.
  • El bloqueo que hace BBQ o BBQ pro siempre tiene un impacto minosculo en el servidor.
  • Puedes usar ambos plugin, uno que te proteja a nivel de CDN y uno que te proteja en caso que el CDN sea evitado por hackers expertos.

¿Por qué Agregar Ciertos Plugins y Temas?

En la historia de WordPress, han habido plugins y temas que han sufrido de vulnerabilidades.

Elementor ha sido campo fértil para hackers y en este preciso momento, el festín de los hackers es el plugin File Manager

Si yo no uso el plugin y cada bot me va a generar errores 404 en su búsqueda, prefiero que estén bloqueados

¿Por qué Bloquear Ahrefs y otros Bots de SEO?

Yo no uso los servicios de Ahrefs, Moz y algunos otros, tampoco pago hosting para que esos bots esten husmeando el contenido y los backlinks.

Los únicos bots bienvenidos son los de los motores de búsqueda como Google, Bing y Yahoo.

¿Tienes Otras Preguntas?

Si tienes preguntas, hice un grupo para hablar cosas interesantes sobre WordPress

Experiencia WordPress por RevistaWP

Siempre en Temas de Seguridad

Estas son algunas publicaciones en temas de seguridad que te podrían ayudar a proteger lo que tanto te ha costado.

  1. Reseña Sobre el Plugin BBQ Pro
  2. 9 Errores Comunes de Seguridad en WordPress
  3. Remover Backdoors de tu Sitio WordPress
  4. Hacker con Acceso Remoto a tu Sitio
  5. Plugins y Temas GPL: ¿Puedo Usarlos?
  6. Desactivar el Editor de Temas y Plugins
  7. Esconder la Versión de WordPress: ¿Sirve de Algo?
  8. Cómo Proteger la Página de Acceso en WordPress
  9. 12 Plugins de Seguridad para WordPress
  10. 7 Plugins de Auditoría para WordPress
  11. 41 Consejos de Seguridad para WordPress