El archivo xmlrpc.php en WordPress ha sido un objetivo frecuente de ataques de fuerza bruta y solicitudes maliciosas. Si tu sitio web funciona sobre OpenLiteSpeed, puedes bloquearlo directamente desde el archivo .htaccess para reducir la carga en tu servidor y mejorar la seguridad.
A continuación, te explicamos cómo bloquear xmlrpc.php en OpenLiteSpeed y otras configuraciones adicionales para optimizar la protección de tu sitio.
¿Por qué bloquear xmlrpc.php en WordPress?
El archivo xmlrpc.php permite la comunicación remota con WordPress, siendo útil para aplicaciones externas como Jetpack, apps móviles de WordPress y algunos editores externos. Sin embargo, también representa una vulnerabilidad, ya que los atacantes pueden explotarlo para:
- Realizar ataques de fuerza bruta contra usuarios y administradores.
- Enviar solicitudes múltiples simultáneas, causando un alto consumo de recursos.
- Abusar del sistema de pingbacks para ataques DDoS.
Si no utilizas funcionalidades que requieran xmlrpc.php, lo mejor es bloquear su acceso para evitar estos riesgos.
Cómo bloquear xmlrpc.php en OpenLiteSpeed con .htaccess
Para bloquear xmlrpc.php en OpenLiteSpeed, agrega la siguiente regla en tu archivo .htaccess dentro del directorio raíz de tu instalación de WordPress:
<IfModule mod_rewrite.c>
RewriteRule xmlrpc - [F,L]
</IfModule>
Explicación de la regla:
RewriteRule xmlrpc - [F,L]
devuelve un error 403 (Acceso Prohibido) cuando se intenta acceder a xmlrpc.php.[F]
indica que la solicitud es prohibida.[L]
significa que es la última regla que debe ejecutarse en este bloque.
Con esta configuración, cualquier intento de acceder a xmlrpc.php será rechazado antes de que WordPress lo procese.
Bloquear también wp-trackback.php
Otro archivo que recibe muchas solicitudes malintencionadas es wp-trackback.php, utilizado para notificaciones de trackbacks en WordPress. Para bloquear ambos archivos simultáneamente, usa el siguiente código en .htaccess:
<IfModule mod_rewrite.c>
RewriteRule ^(xmlrpc\.php|wp-trackback\.php) - [F,L]
</IfModule>
Esto protegerá aún más tu sitio contra ataques automatizados.
Permitir acceso solo a direcciones IP específicas
Si necesitas bloquear xmlrpc.php pero quieres permitir el acceso desde una IP de confianza, puedes modificar la regla para excluir ciertas direcciones IP. Por ejemplo, si deseas permitir solo la IP 123.456.78.910, agrega:
<IfModule mod_rewrite.c>
RewriteCond %{REMOTE_ADDR} !^123\.456\.78\.910
RewriteRule xmlrpc - [F,L]
</IfModule>
Esto significa que todas las solicitudes a xmlrpc.php serán bloqueadas, excepto las provenientes de la IP indicada.
Excepción para direcciones IP de Jetpack
Si usas Jetpack y quieres permitir su acceso mientras bloqueas xmlrpc.php para otros usuarios, puedes agregar la siguiente configuración en .htaccess:
<IfModule mod_rewrite.c>
RewriteCond expr "! -R '122.248.245.244/32'"
RewriteCond expr "! -R '54.217.201.243/32'"
RewriteCond expr "! -R '54.232.116.4/32'"
RewriteCond expr "! -R '192.0.80.0/20'"
RewriteCond expr "! -R '192.0.96.0/20'"
RewriteCond expr "! -R '192.0.112.0/20'"
RewriteCond expr "! -R '195.234.108.0/22'"
RewriteRule xmlrpc - [F,L]
</IfModule>
Este código permite solo las IPs oficiales de Jetpack, mientras bloquea todas las demás solicitudes a xmlrpc.php.
Conclusión
Bloquear xmlrpc.php en WordPress es una medida eficaz para reducir ataques de fuerza bruta y mejorar la seguridad de tu sitio. Si utilizas OpenLiteSpeed, puedes hacerlo fácilmente a través de .htaccess, personalizando las reglas según tus necesidades.
Si no utilizas Jetpack ni aplicaciones externas que dependan de xmlrpc.php, lo mejor es bloquearlo completamente. En caso contrario, puedes permitir el acceso solo a IPs de confianza para mantener el equilibrio entre seguridad y funcionalidad.
Implementando estas reglas, podrás proteger tu WordPress contra tráfico malicioso y mejorar la eficiencia de tu servidor.