Seguridad en WordPress: cómo proteger tu web paso a paso

Tener una web en WordPress no consiste solo en elegir un diseño, publicar contenido y añadir algunos plugins. También implica mantenerla protegida frente a accesos no autorizados, intentos de adivinar contraseñas, archivos maliciosos y errores de configuración.

WordPress es el gestor de contenidos más utilizado del mundo y, por esa razón, recibe constantemente intentos de ataque automatizados. La inmensa mayoría no van dirigidos específicamente contra un sitio concreto: son redes de bots que recorren internet escaneando servidores en busca de versiones desactualizadas, credenciales débiles o formularios de acceso sin protección.

La buena noticia es que no necesitas conocimientos avanzados de sistemas para conseguir una web sólida y bien protegida. La seguridad en WordPress no consiste en instalar plugins de forma compulsiva, sino en aplicar una estrategia de defensa en profundidad: mantener el software al día, forzar conexiones seguras, utilizar autenticación robusta y disponer de copias de seguridad verificables.

Explico cómo reforzar la seguridad de tu instalación de WordPress paso a paso, con un enfoque técnico riguroso, práctico y realista.

Conexión segura mediante HTTPS

El primer pilar de seguridad en cualquier sitio web es el cifrado de las comunicaciones. Trabajar sobre una conexión segura impide que usuarios malintencionados puedan interceptar contraseñas, cookies de sesión o información sensible transmitida entre el navegador y el servidor.

Asegúrate de que tu hosting dispone de un certificado SSL/TLS activo y de que todo el tráfico redirige automáticamente a la versión HTTPS. En WordPress, además de configurar las URLs del sitio con https://, puedes forzar el cifrado estricto en el panel de administración añadiendo la siguiente línea al archivo wp-config.php:

define( 'FORCE_SSL_ADMIN', true );

Antes de activar esta directiva, comprueba siempre que el certificado funcione correctamente en todo el dominio para evitar bloqueos en el acceso.

Mantén WordPress, los temas y los plugins actualizados

Las actualizaciones son la medida de seguridad preventiva más importante de todo el ecosistema. Gran parte de las vulnerabilidades explotadas en internet corresponden a fallos de seguridad conocidos públicamente en plugins y temas desactualizados.

Para mantener una superficie de exposición mínima:

  • Núcleo de WordPress: Mantén activadas las actualizaciones automáticas de seguridad (versiones menores) para recibir parches inmediatos sin intervención manual.
  • Plugins y temas: Actualiza con regularidad los complementos activos. Si un plugin o tema lleva años abandonado por su desarrollador y no recibe soporte, sustitúyelo por una alternativa con mantenimiento activo.
  • Elimina lo que no uses: Los plugins y temas desactivados que ya no necesitas deben borrarse por completo del servidor. Aunque no se ejecuten en el flujo habitual de la web, sus archivos permanecen en el almacenamiento y pueden contener vulnerabilidades explotables de forma directa.

Antes de aplicar actualizaciones mayores que afecten a elementos estructurales de la web, realiza siempre una copia de seguridad preventiva.

Mantener WordPress, los temas y los plugins actualizados

Autenticación robusta y control de accesos

Una contraseña débil o reutilizada puede neutralizar el resto de capas de seguridad en cuestión de segundos. Los ataques de fuerza bruta automatizados prueban grandes cantidades de combinaciones de usuario y contraseña contra los paneles de inicio de sesión.

Para proteger el acceso administrativo:

  • Genera contraseñas largas y aleatorias: Utiliza combinaciones complejas generadas por un gestor de contraseñas de confianza. Opciones como Bitwarden, Proton Pass, 1Password o KeePassXC permiten almacenar claves seguras y sincronizarlas con total privacidad.
  • Activa la autenticación en dos pasos (2FA) o utiliza passkeys cuando estén disponibles: El 2FA añade un segundo factor, normalmente un código temporal generado por una aplicación autenticadora. Las passkeys permiten iniciar sesión usando el método seguro de tu dispositivo, como huella, reconocimiento facial o PIN, sin depender de una contraseña tradicional.
  • Evita nombres de usuario predecibles: Si tu instalación utiliza el usuario admin, crea una nueva cuenta de administrador con un nombre personalizado y elimina la cuenta antigua asignando tus entradas al nuevo perfil.
  • Bloquea la enumeración de usuarios: Cambiar el nombre del administrador no es suficiente por sí solo, ya que WordPress expone los nombres de usuario públicamente a través de la API REST (/wp-json/wp/v2/users) y de los archivos de autor (/?author=1). Es fundamental bloquear estas consultas públicas mediante un plugin de seguridad o reglas en el servidor para evitar que los atacantes descubran tu usuario.
Caja fuerte y candado que representan contraseñas seguras en WordPress

Cortafuegos de aplicación web con Wordfence

Wordfence es una de las herramientas más completas para proteger WordPress. Integra un Web Application Firewall (WAF) a nivel de aplicación, capaz de frenar amenazas directas como los ataques de XSS y SQL Injection en WordPress, además de incluir un escáner de integridad de archivos y módulos de protección contra ataques de fuerza bruta.

Configuración del WAF

Tras instalar el plugin, el cortafuegos suele iniciarse en modo de aprendizaje (Learning Mode) para analizar el tráfico legítimo de la web y evitar falsos positivos con otros plugins. Una vez completadas las pruebas iniciales, asegúrate de que el firewall quede configurado en modo de protección activa (Enabled and Protecting).

Límite de intentos de acceso y bloqueo de IP

Configura el módulo de seguridad de acceso para bloquear temporalmente las direcciones IP que acumulen varios intentos fallidos de inicio de sesión consecutivos. Combinar este bloqueo automático con la autenticación 2FA dificulta enormemente los ataques de fuerza bruta y reduce considerablemente el riesgo de acceso no autorizado.

Ajuste de la URL de acceso: reducción de ruido

Plugins como WPS Hide Login permiten cambiar la dirección de acceso habitual (/wp-login.php) por una ruta personalizada.

Es importante tener claro que esta técnica forma parte de la seguridad por oscuridad: no soluciona vulnerabilidades de fondo ni sustituye a una contraseña fuerte con 2FA, pero resulta muy práctica para reducir drásticamente el ruido de bots básicos y el consumo innecesario de recursos en el servidor. Si utilizas sistemas de caché avanzados como LiteSpeed Cache, asegúrate de excluir tu nueva URL de inicio de sesión para evitar problemas de acceso.

Formulario de acceso a WordPress protegido con un escudo

Ajustes extra para reforzar la seguridad en WordPress

Además de mantener WordPress actualizado, usar contraseñas seguras y hacer copias de seguridad, hay algunos ajustes sencillos que ayudan a cerrar puertas que normalmente no necesitas tener abiertas.

No hace falta aplicarlos todos de golpe ni tocar nada que no entiendas. Si tienes dudas, haz una copia de seguridad antes o pide ayuda a tu proveedor de hosting.

1. El editor de archivos interno: úsalo con cabeza o desactívalo

WordPress suele incluir un editor de archivos dentro del propio panel, disponible en Apariencia → Editor de archivos de temas. Desde ahí es posible modificar directamente el código PHP o la hoja de estilos CSS del tema utilizando el navegador.

Dependiendo de la versión de WordPress, la configuración del hosting y los plugins de seguridad instalados, también puede aparecer una opción similar dentro de Plugins para editar sus archivos. Si no la ves, simplemente significa que esa función no está disponible o está desactivada en tu instalación.

A mí personalmente me gusta tenerlo a mano para hacer retoques, pero hay que tener claro dos cosas:

  • Riesgo técnico: un punto y coma mal puesto o un error de sintaxis en el código puede dejar tu web inaccesible (pantalla en blanco) al instante.
  • Riesgo de seguridad: si un atacante consiguiera acceder a tu cuenta de administrador, podría inyectar código malicioso directamente en tus archivos desde el panel.

¿Qué deberías hacer?

  • Si sabes tocar código y quieres mantenerlo activo: asegúrate de tener una contraseña muy fuerte, la verificación en dos pasos (2FA) activada en tu usuario y haz siempre una copia de seguridad antes de modificar nada. Para retoques visuales sencillos, suele ser más seguro usar Apariencia → Personalizar → CSS adicional.
  • Si no piensas tocar código nunca: lo más sensato es apagarlo para eliminar ese riesgo. Basta con añadir esta línea a tu archivo wp-config.php:

define('DISALLOW_FILE_EDIT', true);

Con esa sola línea, esos menús desaparecerán del panel de WordPress y nadie (ni tú por error, ni un intruso) podrá editar código desde el navegador.

2. Evita que se muestre el contenido de tus carpetas

Algunas carpetas de una web contienen imágenes, documentos o archivos necesarios para que WordPress funcione. Si el servidor estuviera mal configurado, alguien podría escribir la dirección de una de esas carpetas en el navegador y ver una lista con su contenido.

Por ejemplo, podría llegar a ver los nombres de algunas imágenes o conocer parte de la estructura interna de la web. No significa que pueda entrar en WordPress, pero es información que no necesitas mostrar públicamente.

En un hosting bien configurado, esta opción suele estar bloqueada por defecto. Puedes comprobarlo entrando en una carpeta de tu web desde el navegador, como esta:

tudominio.es/wp-content/uploads/

Si en lugar de aparecer una lista de archivos ves un error 403, 404 o una página de acceso denegado, el contenido de la carpeta no se está mostrando y no necesitas hacer nada más.

Si utilizas cPanel y quieres revisar la configuración manualmente, busca la herramienta Índices. En ella, selecciona la carpeta principal de tu web y comprueba que esté marcada la opción Sin indexación. En algunos hostings puede aparecer como Heredar; en ese caso, la carpeta utiliza la configuración de seguridad establecida por el servidor o por una carpeta superior.

Importante: no cambies esta opción si tu web funciona correctamente y no aparece ningún listado de archivos. Si tienes dudas, consulta al soporte de tu hosting antes de modificar la configuración.

La idea es sencilla: los visitantes deben poder acceder a tu web y a sus imágenes, pero no deberían ver un listado con los archivos internos de tus carpetas.

3. Revisa los permisos de archivos y carpetas

Los permisos determinan quién puede leer, modificar o ejecutar los archivos de WordPress. Una configuración demasiado abierta puede facilitar cambios no autorizados.

Como referencia general, en la mayoría de hostings Linux se utilizan estos valores:

  • Carpetas: 755
  • Archivos normales: 644
  • Archivo wp-config.php: 600 o 640, cuando el hosting lo permita

No cambies permisos al azar. Si tu web funciona correctamente y no tienes un motivo concreto, es mejor comprobarlo primero con el soporte del hosting, ya que una configuración incorrecta puede provocar errores.

4. Limita XML-RPC si no lo utilizas

XML-RPC es una función antigua de WordPress que permite conectar aplicaciones y servicios externos con tu web. Algunas herramientas todavía pueden necesitarla, pero muchas webs normales no la usan.

El problema es que también puede aprovecharse para concentrar intentos de acceso o realizar ataques automáticos.

Antes de bloquearlo, comprueba que no dependes de servicios que puedan utilizarlo. Si no lo necesitas, puedes desactivarlo desde un plugin de seguridad como Wordfence o pedir ayuda a tu hosting para restringirlo.

5. Impide ejecutar archivos PHP en la carpeta de subidas

La carpeta wp-content/uploads está pensada para guardar imágenes, documentos y otros archivos multimedia. No debería utilizarse para ejecutar código.

Bloquear la ejecución de archivos PHP en esa carpeta añade una capa de seguridad: si alguien lograra subir un archivo malicioso, el servidor tendría más difícil ejecutarlo.

Este ajuste depende del tipo de servidor y de la configuración del hosting. Si no estás acostumbrado a tocar archivos de configuración, mi recomendación es sencilla: pide a tu proveedor que compruebe si ya está protegido y, si no lo está, que aplique la restricción.

Estos ajustes no sustituyen las actualizaciones, las copias de seguridad, las contraseñas seguras ni la autenticación en dos pasos. Son una capa extra para reducir riesgos sin complicar el uso diario de WordPress.

Principio de mínimo privilegio y gestión de usuarios

Una de las mejores prácticas de seguridad es otorgar a cada usuario únicamente los permisos estrictamente necesarios para su labor diaria:

  • Administrador: Reservado exclusivamente para tareas técnicas de configuración, actualizaciones y mantenimiento.
  • Editor y Autor: Ideales para redactores y colaboradores que solo necesitan crear, editar y gestionar contenidos, tal como detalla la documentación de WordPress.
  • Suscriptor: El nivel mínimo de acceso para usuarios registrados que no deben realizar cambios en el sitio.

No utilices la cuenta de administrador principal para redactar artículos cotidianos y evita recurrir a temas o plugins piratas (nulled), ya que pueden incluir puertas traseras, código malicioso o modificaciones que comprometan la seguridad de la web.

Copias de seguridad verificables y almacenamiento externo

Las copias de seguridad son tu última línea de defensa ante cualquier incidente grave, fallo de hardware o desastre. Un backup completo debe incluir la base de datos, los archivos del núcleo, temas, plugins y la carpeta multimedia.

Para que tu estrategia de copias sea realmente fiable:

  • Almacenamiento externo: No guardes las copias de seguridad únicamente en el mismo servidor donde está alojada la web. Envíalas a un almacenamiento externo independiente (en la nube o en un almacenamiento local seguro).
  • Prueba la restauración: Una copia de seguridad cuya restauración nunca se ha probado es solo una suposición. Realiza simulacros periódicos de recuperación en un entorno de pruebas (staging) para verificar que los datos se restauran con total integridad.

En mis proyectos confío en la infraestructura de Raiola Networks, que incluye sistemas de copias de seguridad automáticas y aislamiento de cuentas, complementando siempre con una copia externa periódica bajo mi propio control.

Copias de seguridad de WordPress replicadas en distintas ubicaciones
Logotipo de Raiola Networks hosting recomendado
Recomendado por Soy Tavi

Aquí vive Soy Tavi

Servidores rápidos, soporte que contesta en español y cero dolores de cabeza. Es donde tengo montada esta web y mis propios proyectos.

Seguridad del entorno y segmentación de red

La protección de una web no termina en el servidor. El equipo personal desde el que inicias sesión y la red a la que te conectas son igual de relevantes:

  • Mantén el sistema operativo, el navegador y las herramientas de administración actualizados y libres de extensiones sospechosas. Si gestionas tu web desde un portátil, también es recomendable proteger los archivos locales mediante TPM y BitLocker en Windows, especialmente si guardas documentos, copias de seguridad o datos de acceso.
  • No accedas a la administración de tu web desde redes Wi-Fi públicas sin cifrar.
  • Si gestionas tu propia infraestructura doméstica o de laboratorio, segmentar los dispositivos mediante redes virtuales ayuda a aislar tus equipos de trabajo del resto de elementos conectados. Puedes profundizar en este concepto en mi post sobre VLANs y segmentación de red.

Conclusión

La seguridad en WordPress no es un producto que se compra ni un ajuste que se activa una sola vez, sino un proceso continuo de buenas prácticas. Establecer una base técnica limpia, forzar contraseñas únicas con autenticación en dos pasos, mantener el software actualizado y disponer de copias de seguridad probadas te permitirá gestionar tu web con total tranquilidad, reduciendo el riesgo de incidentes al mínimo.

Recomendado por Soy Tavi

Mi gestor de contraseñas

Contraseñas, alias de correo y sincronización entre dispositivos, todo en un mismo sitio.

Scroll al inicio