
⚙️ All In One WP Security: configuración de seguridad de WordPress paso a paso en 16 pasos
Cada día, un sitio WordPress promedio recibe entre 200 y 500 solicitudes ilegítimas a wp-login.php. No son hackers con capucha, son scripts. Rastrean internet, encuentran la página de inicio de sesión estándar y empiezan con fuerza bruta: admin/123456, admin/qwerty, admin/contraseña_de_base_de_datos_filtrada. Tarde o temprano, la descifran.
El hosting no protege contra esto. El firewall del servidor ve una solicitud POST legítima a wp-login.php y la deja pasar, no puede distinguir si quien ingresa la contraseña es usted o un bot. La protección de WordPress y la protección del servidor son dos capas diferentes, y usted es responsable de la primera.
All-In-One Security (AIOS) del equipo de UpdraftPlus cubre esta capa por completo. Un solo plugin en lugar de un paquete: firewall, protección de inicio de sesión, auditoría de archivos, bloqueo de bots y copias de seguridad. Un millón de instalaciones, calificación 4.7 en WordPress.org. La versión gratuita es suficiente para proteger un sitio promedio. A continuación, una configuración paso a paso, desde lo básico hasta la exportación de la configuración.
💡 Resumen rápido:
- Ocultaremos la página de inicio de sesión detrás de una URL personalizada y activaremos la autenticación de dos factores. Los ataques de fuerza bruta fallarán de inmediato.
- Configuraremos tres capas de firewall: reglas htaccess más reglas PHP más lista negra 6G. Filtrado de solicitudes en capas.
- Bloquearemos el acceso a archivos de servicio, desactivaremos el editor PHP del panel de administración y verificaremos los permisos de las carpetas.
- Activaremos la detección de honeypot y de errores 404. Los bots se filtrarán antes de aterrizar, sin captcha para los usuarios.
- Guardaremos la configuración lista en un archivo para transferirla entre sitios en un minuto.
Paso 1. Eliminar los metadatos del generador de WP
Lo primero que filtra su versión de WordPress es la etiqueta <meta name="generator" content="WordPress X.X.X"> en el <head> de cada página. Un atacante obtiene el número de versión exacto y selecciona exploits para ella en segundos. AIOS elimina esta etiqueta con un solo interruptor.
Ruta: WP Security → Settings → General Settings. Active Remove WP Generator Meta Info y guarde. Revise el código fuente de su página de inicio (Ctrl+U), la línea con generator debería desaparecer. También en esta misma sección, desactive Enable Info Comments, AIOS por defecto añade comentarios HTML con información de servicio, mejor eliminarlos también.

Paso 2. Bloquear intentos de inicio de sesión
El ataque de fuerza bruta a wp-login.php es el ataque número uno por frecuencia. Los bots prueban cientos de contraseñas por minuto, generando carga en el servidor y la base de datos. Tarde o temprano una contraseña débil se descifra, especialmente si un usuario administrador o editor usa qwerty123.
Ruta: WP Security → User Login → Login Lockdown. Active Enable Login Lockdown y configure: máximo 5 intentos, bloqueo de IP durante 60 minutos, reinicio del contador después de 24 horas. Para sitios con múltiples administradores, active Notify by Email, la notificación de bloqueo llega al instante. Si ve notificaciones frecuentes, cambie el slug de la página de inicio de sesión (paso 14).

Paso 3. Aprobación manual para nuevos registros
Si el registro está abierto en su sitio, sin esta configuración cualquier bot creará una cuenta en segundos. Las cuentas de spam se acumulan por miles, saturando la base de datos y creando superficie de ataque mediante escalada de privilegios.
Ruta: WP Security → User Registration → Manual Approval. Active Enable Manual Approval. Ahora cada cuenta nueva espera la confirmación del administrador antes de activarse. En esta misma sección, configure el captcha para los formularios de registro, una barrera adicional que los bots no pueden superar.

Paso 4. Cambiar el prefijo de las tablas de la base de datos
El prefijo wp_ es estándar para todas las instalaciones de WordPress. Las inyecciones SQL y los scripts de compromiso masivo lo apuntan específicamente: cuando un exploit conoce los nombres de las tablas (wp_users, wp_options), el ataque se vuelve dirigido en lugar de ciego.
Ruta: WP Security → Database → DB Prefix. Verá el prefijo actual. Si es wp_, haga clic en Change DB Table Prefix. El plugin le sugerirá una cadena aleatoria o le permitirá ingresar la suya (de 4 a 6 caracteres, solo letras latinas y guiones bajos). Antes de ejecutar, definitivamente haga una copia de seguridad de la base de datos (paso 5). El proceso tarda de 5 a 10 segundos en un sitio promedio, pero la reversión sin copia de seguridad es imposible.

Paso 5. Copia de seguridad de la base de datos
Antes de cualquier cambio estructural, cambio de prefijo, limpieza de revisiones, actualización del núcleo, la copia de seguridad es obligatoria. AIOS está integrado con UpdraftPlus, la copia de seguridad se lanza desde la misma interfaz.
Ruta: WP Security → Database → Database Backup. Haga clic en Create Database Backup, el archivo se guarda localmente. Configure la carga automática a la nube a través de UpdraftPlus (Google Drive, Dropbox, S3) y la programación diaria. Restaurar un sitio después de un compromiso sin copia de seguridad es prácticamente imposible, y con AIOS + UpdraftPlus es un solo botón.

Paso 6. Verificar los permisos de directorios y archivos
Los permisos de acceso incorrectos, 777 en wp-config.php, 666 en la carpeta uploads, acceso de escritura abierto a wp-content, abren un camino directo para escribir código malicioso. Si un atacante obtiene acceso a un tema a través de una vulnerabilidad, los permisos incorrectos le permiten modificar archivos del sistema.
Ruta: WP Security → Filesystem Security → File Permissions. Ejecute el escaneo. Todas las líneas deben estar en verde. Si hay una línea roja o amarilla, haga clic en Set Recommended Permissions junto al archivo o carpeta problemáticos. Después de corregir, reinicie el escaneo, debería quedar limpio.

Paso 7. Desactive la edición de PHP desde el panel de administración
El editor integrado de temas y plugins, wp-admin/theme-editor.php y wp-admin/plugin-editor.php, es una vía directa a la ejecución de código arbitrario. Si un atacante obtiene acceso al panel de administración, el editor le permite añadir una shell PHP en functions.php y tomar el control del servidor. Un desarrollador profesional no necesita este editor, las modificaciones se realizan mediante FTP/SFTP o despliegue automatizado.
Ruta: WP Security → Filesystem Security → PHP File Editing. Active Disable PHP File Editing. Tras guardar, los elementos «Theme Editor» y «Plugin Editor» desaparecerán de los menús «Appearance» y «Plugins». Si necesita hacer cambios, hágalos únicamente a través del gestor de archivos del hosting o por SSH.

Paso 8. Bloquee el acceso a los archivos de servicio de WordPress
readme.html, license.txt, wp-config-sample.php y debug.log revelan la versión del CMS, la estructura de la instalación y las rutas internas. debug.log es especialmente peligroso: en modo WP_DEBUG escribe rutas absolutas del servidor y trazas de pila de errores con nombres de plugins.
Ruta: WP Security → Filesystem Security → WP Info Files. Marque los cuatro elementos: readme.html, license.txt, wp-config-sample.php, debug.log. Guarde. Ahora, al solicitar directamente yoursite.com/readme.html, el servidor devolverá 403 Forbidden. Estas son reglas de .htaccess, funcionan a nivel de Apache/Nginx antes de que se inicie PHP.

Paso 9. Funciones básicas del firewall
El firewall de AIOS tiene tres niveles de protección. Las reglas de .htaccess bloquean las solicitudes antes de pasarlas a PHP (la capa más rápida). Las reglas PHP filtran vectores XSS, desactivan XML-RPC y los feeds RSS. La tercera capa descarta los falsos bots de Google por user-agent.
Ruta: WP Security → Firewall → Basic Firewall. Active:
- Enable Basic Firewall Protection, activación general;
- Block Fake Googlebots, se filtran los bots con
user-agentfalso de Googlebot; - Disable RSS and Atom Feeds, si el sitio no usa RSS, desactívelo (análisis de contenido);
- Disable Directory Listing, impide que Apache muestre el contenido de carpetas sin
index.php.
Aquí desactive también XML-RPC si no utiliza la aplicación móvil de WordPress, Jetpack o trackbacks. Para la mayoría de los sitios de blog en 2026, XML-RPC no es necesario.

Paso 10. Reglas de firewall adicionales
Las reglas extendidas de .htaccess cierran varios vectores de ataque más: acceso directo del navegador a wp-config.php y .htaccess, límite de tamaño de archivos subidos, desactivación de la firma del servidor.
Ruta: WP Security → Firewall → Additional Firewall. Active:
- Deny Access to wp-config.php, la configuración clave no está disponible vía HTTP;
- Deny Access to.htaccess, el archivo de reglas del servidor queda protegido contra lectura;
- Disable Server Signature, Apache deja de informar la versión en las cabeceras
Server; - Limit File Upload Size, establezca 10 MB (suficiente para imágenes, insuficiente para subir un archivo con shell).
Las reglas se escriben directamente en .htaccess. Tras guardar, abra el sitio en una ventana de incógnito y verifique que todo funciona.

Paso 11. Lista negra del firewall 6G
6G Firewall de Perishable Press es un conjunto estricto de reglas de .htaccess que bloquea patrones maliciosos en URLs y cadenas de consulta: inyecciones SQL, intentos de inclusión de archivos (../../wp-config.php), vectores XSS y firmas de escáneres de vulnerabilidades. Las reglas son estáticas, no requieren actualizaciones, los patrones de ataque no han cambiado en años.
Ruta: WP Security → Firewall → 6G Blacklist. Active Enable 6G Firewall Protection y guarde. Si tras la activación algún plugin legítimo deja de funcionar (raro, pero ocurre con plugins que tienen patrones de URL no estándar), añádalo a la lista blanca: Firewall → Whitelist.

Paso 12. Prevenir el hotlinking de imágenes
El hotlinking ocurre cuando otro sitio incrusta su imagen mediante una URL directa (<img src="https://yoursite.com/uploads/photo.jpg">). Su servidor sirve diligentemente la imagen, consumiendo tráfico y recursos de CPU, mientras el visitante ve el contenido en el sitio de otra persona. Para sitios con capturas de pantalla y fotos originales, esto es notable.
Ruta: WP Security → Firewall → Prevent Hotlinks. Active Prevent Hotlinking. Añada dominios de excepción (google.com, facebook.com, twitter.com) para que las vistas previas en redes sociales y buscadores sigan funcionando. AIOS escribe reglas en .htaccess, prohibiendo las solicitudes directas de imágenes con una cabecera Referer de otro dominio.

Paso 13. Detección de errores 404
Los errores 404 masivos son un indicio de escaneo de vulnerabilidades. Un bot prueba /wp-admin/, /admin/, /backup.zip, /phpmyadmin/ y cientos de otras rutas típicas, verificando la superficie de ataque. AIOS rastrea dichas solicitudes, las vincula a IPs y bloquea la fuente.
Ruta: WP Security → Scanner → 404 Detection. Active Enable 404 Detection. Umbral: 20 errores en 15 minutos → bloqueo temporal de 30 minutos; 50 errores en 15 minutos → bloqueo permanente. La pestaña Logged 404 Events mostrará una lista en vivo de solicitudes sospechosas, útil para entender qué se está escaneando exactamente en su sitio.

Paso 14. Cambiar la dirección de la página de acceso
/wp-admin y /wp-login.php son puntos de entrada estándar, conocidos por todos los bots. Sin este paso, la protección de fuerza bruta (paso 2) funciona, pero los ataques aún llegan por miles, los bots golpean una puerta conocida. Renombrar la página de acceso elimina el objetivo en sí.
Ruta: WP Security → Brute Force → Rename Login Page. Introduzca un slug personalizado: al menos 4 caracteres, que no sea admin, login ni wp-*. Una buena opción: manage- más 6 letras aleatorias, por ejemplo manage-xk7qpd. Tras guardar, compruebe inmediatamente la nueva URL y márquela en favoritos. El wp-login.php estándar se desactivará; si olvida el slug, tendrá que restaurarlo vía FTP (eliminando o renombrando el plugin).

Paso 15. Trampa honeypot para bots
El honeypot es un campo oculto en el formulario de acceso. Un humano no lo ve (regla CSS display:none o posicionamiento fuera de pantalla), pero un bot lo encuentra al analizar el marcado HTML y lo rellena. AIOS detecta el campo oculto rellenado y bloquea el intento por no ser humano. Sin captcha, el usuario ni siquiera sabe de la verificación.
Ruta: WP Security → Brute Force → Honeypot. Active Enable Honeypot Protection. El campo se añade al formulario de wp-login.php automáticamente y funciona silenciosamente en segundo plano. Según Team Updraft, el honeypot filtra la abrumadora mayoría de los bots automatizados, ellos no necesitan su panel de administración específicamente, solo buscan el formulario estándar y rellenan todos los campos en secuencia.

Paso 16. Prevenir la incrustación del sitio en frames
El clickjacking es un ataque donde su sitio se carga en un <iframe> transparente sobre el sitio del atacante. El usuario cree que está haciendo clic en la interfaz, pero en realidad interactúa con el formulario de otro sitio. La cabecera X-Frame-Options: SAMEORIGIN previene la incrustación.
Ruta: WP Security → Firewall → Prevent Framing. Active Prevent Your Site From Being Displayed in a Frame. AIOS añade la cabecera HTTP X-Frame-Options: SAMEORIGIN a todas las respuestas del servidor. Verificación: curl -I https://yoursite.com, la cabecera debe aparecer en la respuesta. Para sitios con formulario de acceso, carrito o panel de administración, este paso es crítico.

Exportar configuración lista para otros sitios
Si gestiona múltiples sitios, la importación-exportación ahorra horas. AIOS guarda toda la configuración en un archivo de texto que se carga en otro sitio con un solo clic.
Ruta: WP Security → Settings → Import/Export. Haga clic en Export Settings, obtendrá un archivo .txt con todas las opciones activadas y sus valores. El archivo puede editarse antes de importarlo en otro sitio: sustituya el email para notificaciones de seguridad y el slug de la página de acceso por los actuales del sitio de destino.
Importación: WP Security → Settings → Import/Export → Import Settings → seleccione el archivo. Los 16 pasos se aplicarán automáticamente en un par de segundos, sin necesidad de recorrer cada pantalla de nuevo.
⁉️🤔 Preguntas frecuentes
¿Es necesario AIOS si el hosting promete «protección total»?
El hosting protege el servidor: nivel de sistema operativo, firewalls de red, filtrado DDoS. AIOS protege la aplicación WordPress: fuerza bruta en el panel de administración, inyecciones en plugins, vulnerabilidades en temas desactualizados. El firewall del servidor no detecta que un bot está probando contraseñas en
wp-login.php, ve solicitudes POST legítimas. Las capas no se superponen, necesita ambas. Un sitio en un hosting «protegido» sin un plugin de seguridad sigue siendo vulnerable a nivel de CMS.
¿AIOS entrará en conflicto con Cloudflare u otro WAF?
No, trabajan en niveles diferentes. Cloudflare es capa 7 (proxy HTTP), filtra el tráfico antes de que llegue al servidor. AIOS es nivel de aplicación (PHP,
.htaccess), después de que la solicitud llega a WordPress. El único matiz: al usar Cloudflare, active Habilitar detección de IP en AIOS, el plugin debe ver la IP real del visitante desde la cabeceraX-Forwarded-For, no la IP del proxy.
¿Puedo eliminar AIOS después de la configuración? Las reglas quedan en.htaccess de todos modos.
No. Las reglas de
.htaccesspermanecerán físicamente en el archivo, pero sin monitoreo ni actualizaciones quedarán obsoletas. Peor aún: el honeypot, el cambio de nombre de la página de inicio de sesión, el bloqueo del editor PHP y la autenticación de dos factores solo funcionan mientras el plugin está activo, esto es lógica PHP, no reglas estáticas. Si elimina el plugin, abre elwp-login.phpestándar y desactiva toda la protección de inicio de sesión.
¿Se romperá el sitio si activo los 16 pasos a la vez?
En la gran mayoría de los sitios, no. Pero la recomendación en producción: active en bloques de tres a cuatro pasos, verificando el funcionamiento del sitio después de cada bloque. Tenga especial cuidado con el Firewall 6G (paso 11) y el cambio de prefijo de tabla (paso 4, la copia de seguridad es obligatoria). En años del plugin con un millón de instalaciones, no se han registrado conflictos críticos con temas y plugins populares.
¿Qué ofrece la versión premium de AIOS sobre la gratuita?
Tres adiciones clave: autenticación de dos factores con políticas flexibles (TFA obligatoria para administradores después de N días, configuración de frecuencia de repetición de solicitud), escáner de malware con alertas de listas negras de Google y bloqueo por país (prohibición de acceso por geo-IP). La versión gratuita es suficiente para proteger un blog o sitio corporativo. Una tienda en línea con datos confidenciales de clientes debería obtener Premium.
¿Qué hago si olvidé la URL personalizada de la página de inicio de sesión?
Conéctese al servidor por FTP/SFTP, vaya a
/wp-content/plugins/all-in-one-wp-security-and-firewall/y cambie temporalmente el nombre de la carpeta del plugin. Esto desactivará AIOS y restaurará elwp-login.phpestándar. Inicie sesión en el panel de administración, restaure el nombre de la carpeta, active el plugin y establezca un nuevo slug. Para evitar olvidos, guarde la URL en su gestor de contraseñas inmediatamente al crearla.
¿Vale la pena configurar AIOS en 2026 o hay mejores alternativas?
Años después, AIOS sigue siendo el plugin de seguridad gratuito para WordPress más equilibrado: un millón de instalaciones, desarrollo activo, actualizaciones regulares para nuevas versiones del núcleo. Alternativas como Wordfence o Solid Security también son sólidas, pero más pesadas.
Los 16 pasos anteriores toman de 15 a 20 minutos. Resultado: página de inicio de sesión oculta, tres capas de firewall, honeypot invisible y configuración lista para clonar al siguiente sitio.
Conjunto mínimo sin el cual la protección no puede considerarse completa:
- Base: pasos 1, 2, 9, 14, enmascaramiento de versión, protección contra fuerza bruta, firewall básico y página de inicio de sesión oculta;
- Nivel de servidor: pasos 7, 8, 10, 11, prohibición del editor PHP, bloqueo de archivos de servicio, reglas adicionales y 6G;
- Protección profunda: pasos 4, 6, 12, 15, prefijo de tabla, permisos de acceso, anti-hotlink, honeypot;
- Perímetro: pasos 3, 5, 13, 16, moderación de registro, copias de seguridad, detección 404, protección contra clickjacking.
Configure un sitio, exporte la configuración e impórtela en otros en un minuto. Una vez al trimestre, revise AIOS → Panel de control: el contador de seguridad mostrará si alguna configuración «se cayó» tras una actualización del núcleo.



