🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

WordPress: Cómo proteger el panel de administración (wp-admin) con contraseña y bloqueo de IP

Actualizado el 27 de abril de 2026

¿Por qué es importante proteger wp-admin?

El panel de administración de WordPress, también conocido como wp-admin, es la puerta de entrada a todo tu sitio web. Desde ahí puedes gestionar entradas, páginas, plugins, temas y la configuración general. Si un atacante consigue acceder a esta área, podría tomar el control total de tu web, instalar malware, robar datos de tus usuarios o incluso eliminar todo el contenido.

Proteger wp-admin es una de las medidas de seguridad más efectivas que puedes implementar. No importa si tienes un blog personal o una tienda online, cualquier sitio WordPress es un objetivo potencial para bots y hackers que intentan acceder por fuerza bruta (probando miles de combinaciones de usuario y contraseña por minuto).

En este artículo, aprenderás paso a paso cómo añadir una capa extra de protección mediante contraseña adicional y bloqueo de IP. Son métodos sencillos, no requieren conocimientos avanzados de programación y marcarán una gran diferencia en la seguridad WordPress de tu sitio.


Método 1: Proteger wp-admin con contraseña adicional (HTTP Authentication)

La autenticación HTTP es una forma de proteger una carpeta o archivo específico en tu servidor pidiendo un usuario y contraseña adicionales antes de que el navegador siquiera cargue la página de login de WordPress.

Esto significa que un atacante, incluso si conoce tu usuario y contraseña de WordPress, necesitará primero pasar esta barrera extra. Funciona como una "doble puerta".

¿Cómo funciona?

Al acceder a tudominio.com/wp-admin, el navegador mostrará un cuadro de diálogo pidiendo usuario y contraseña. Solo si introduces los datos correctos, se cargará la pantalla de login normal de WordPress.

Paso 1: Crear el archivo .htpasswd

Este archivo contendrá el usuario y la contraseña cifrada. Puedes crearlo en cualquier parte de tu servidor, pero es recomendable que esté fuera de la carpeta pública (public_html) para que no sea accesible desde el navegador.

  1. Accede a tu panel de control de hosting (cPanel, Syspanel, etc.).
  2. Busca la opción "Administrador de archivos" o "File Manager".
  3. Navega hasta la carpeta raíz de tu cuenta (normalmente home o home/usuario).
  4. Crea un nuevo archivo llamado .htpasswd (con el punto al inicio).
  5. Ahora necesitas generar el hash de tu contraseña. Puedes usar una herramienta online como https://toolster.net/htpasswd_generator o usar el comando openssl si tienes acceso por terminal.
  6. En la herramienta, introduce el usuario que quieres usar (por ejemplo, adminseguro) y la contraseña que prefieras. Te dará una línea como esta:
    adminseguro:$apr1$mZx3kL9p$Q8jP5sW2vXyNtR7cFbE1uH
  7. Copia esa línea completa y pégala en el archivo .htpasswd que creaste. Guarda el archivo.

[WARNING] Guarda este archivo en un lugar seguro. Si lo pierdes, no podrás acceder a wp-admin hasta que lo recrees.

Paso 2: Modificar el archivo .htaccess

El archivo .htaccess es el archivo de configuración principal de Apache. Lo usaremos para indicar al servidor que proteja la carpeta wp-admin.

  1. En el Administrador de archivos, ve a la carpeta public_html donde está instalado WordPress.
  2. Localiza el archivo .htaccess. Si no lo ves, asegúrate de que la opción "Mostrar archivos ocultos" esté activada.
  3. Antes de editarlo, descarga una copia de seguridad de este archivo.
  4. Abre el archivo .htaccess en el editor de texto.
  5. Añade el siguiente código al final del archivo:
<Files wp-login.php>
AuthType Basic
AuthName "Acceso Restringido"
AuthUserFile /home/TU_USUARIO/.htpasswd
Require valid-user
</Files>

[INFO] Debes reemplazar /home/TU_USUARIO/.htpasswd por la ruta absoluta donde guardaste el archivo .htpasswd. Si no conoces tu ruta absoluta, puedes encontrarla en el panel de control, o creando un archivo PHP temporal con <?php echo __DIR__; ?> y subiéndolo a tu servidor. Pero lo más común es que sea algo como /home/tu_usuario/.htpasswd si lo creaste en la raíz de tu cuenta.

  1. Guarda los cambios y sube el archivo si lo estabas editando localmente.

Paso 3: Probar el acceso

Ahora intenta acceder a tudominio.com/wp-login.php o tudominio.com/wp-admin. Deberías ver un cuadro de diálogo pidiendo usuario y contraseña. Introduce los datos que configuraste en el .htpasswd.

Si todo ha ido bien, después de esta barrera verás el login normal de WordPress.


Método 2: Bloquear IPs específicas para wp-admin

Bloquear el acceso a wp-admin por IP es una estrategia excelente si eres la única persona que administra el sitio o si tu equipo trabaja desde un rango de IPs fijo (por ejemplo, la oficina). Consiste en permitir el acceso solo desde direcciones IP concretas y denegar el resto.

Esto reduce drásticamente los intentos de ataque, ya que solo las IPs en tu lista blanca podrán siquiera cargar la página de login.

¿Cómo encontrar tu IP pública?

Antes de empezar, necesitas saber tu dirección IP pública. Puedes buscarla en Google escribiendo "¿cuál es mi IP?" o visitando sitios como whatismyipaddress.com. Anota esa dirección.

Paso 1: Editar el .htaccess para restringir por IP

Volvemos al archivo .htaccess. Ahora añadiremos reglas específicas para la carpeta wp-admin.

  1. Abre de nuevo el .htaccess.
  2. Añade este bloque de código al final:
<Files wp-login.php>
Order Deny,Allow
Deny from all
Allow from 123.456.789.000
Allow from 98.765.432.100
</Files>

[TIP] Reemplaza 123.456.789.000 y 98.765.432.100 con las direcciones IP reales que quieras permitir. Puedes añadir tantas líneas Allow from como necesites.

Paso 2: Proteger también los archivos de administración

El bloqueo de wp-login.php es esencial, pero también deberías proteger la carpeta wp-admin completa. Para ello, añade este otro bloque al .htaccess:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/wp-admin
RewriteCond %{REMOTE_ADDR} !^123.456.789.000$
RewriteCond %{REMOTE_ADDR} !^98.765.432.100$
RewriteRule ^ - [F]
</IfModule>

Esto devolverá un error 403 (Prohibido) a cualquier IP que no esté en la lista.

[WARNING] Si tu IP cambia a menudo (algo común en conexiones domésticas), este método puede dejarte fuera de tu propio sitio. Si te pasa, deberás acceder por FTP y eliminar las líneas que añadiste al .htaccess.


Método 3: Combinar contraseña y bloqueo de IP (Máxima seguridad)

La opción más robusta es combinar ambos métodos. Primero, el servidor comprobará si la IP está permitida. Si lo está, pedirá la contraseña HTTP adicional. Si no, devolverá un error 403 directamente.

Puedes fusionar los bloques de código en uno solo:

<Files wp-login.php>
AuthType Basic
AuthName "Acceso Restringido"
AuthUserFile /home/TU_USUARIO/.htpasswd
Require valid-user
Order Deny,Allow
Deny from all
Allow from 123.456.789.000
Allow from 98.765.432.100
Satisfy any
</Files>

La directiva Satisfy any indica que se cumplirá la condición si la IP está permitida o si el usuario y contraseña son válidos.


Alternativas con plugins de seguridad

Si no te sientes cómodo editando archivos de configuración, existen plugins de seguridad WordPress que ofrecen estas funcionalidades de forma más amigable. Algunos de los más populares son:

  • Wordfence Security: Incluye autenticación de dos factores, bloqueo de IPs, firewall y limitación de intentos de login. Es muy completo.
  • iThemes Security (anteriormente Better WP Security): Ofrece opciones para cambiar la URL de login, ocultar la página de acceso y forzar contraseñas seguras.
  • Limit Login Attempts Reloaded: Especializado en bloquear IPs tras varios intentos fallidos de inicio de sesión. Muy útil contra ataques de fuerza bruta.

Estos plugins son una gran opción, especialmente si gestionas varios sitios o no quieres tocar código. Sin embargo, ten en cuenta que añadir muchos plugins puede ralentizar tu web. A veces, un par de líneas en el .htaccess es más eficiente.


Preguntas frecuentes (FAQ)

¿Qué hago si me bloqueo a mí mismo?

Si has configurado el bloqueo por IP y tu IP ha cambiado, no podrás acceder. La solución es:

  1. Accede a tu hosting por FTP (FileZilla, por ejemplo).
  2. Localiza el archivo .htaccess.
  3. Descárgalo, edítalo y elimina las líneas de bloqueo de IP.
  4. Sube el archivo de nuevo. Ya podrás acceder.

¿Puedo proteger también el archivo wp-config.php?

Sí, es una buena práctica. Puedes añadir un bloque similar en el .htaccess para denegar el acceso a este archivo crítico. Añade esto:

<Files wp-config.php>
Order Allow,Deny
Deny from all
</Files>

¿Estos métodos afectan al rendimiento de mi sitio?

No. La comprobación de IP y la autenticación HTTP son procesos muy ligeros que el servidor realiza en milisegundos. No notarás ninguna diferencia en la velocidad de carga.

¿Qué pasa con los usuarios que no son administradores? ¿También se ven afectados?

Sí. Estos métodos protegen el acceso a wp-admin y wp-login.php, que es la puerta de entrada para cualquier usuario registrado (suscriptores, editores, etc.). Si tienes usuarios con roles que no administran el sitio, pueden verse bloqueados.

[TIP] Si tienes varios usuarios, es mejor usar métodos que no bloqueen el acceso por IP, como la autenticación de dos factores (2FA) o limitar los intentos de login.

¿Debo usar todos los métodos a la vez?

Depende de tu nivel de paranoia y tu situación. Si eres el único administrador y tu IP es fija, la combinación de contraseña y bloqueo de IP es excelente. Si tienes un equipo o usuarios registrados, es mejor optar por plugins que ofrezcan 2FA y limitación de intentos.


Conclusión

Proteger el panel de administración es un paso fundamental en la seguridad WordPress. Implementar una contraseña adicional y bloquear IPs para wp-admin son dos de las medidas más efectivas y sencillas que puedes tomar. Te protegerán contra la mayoría de los ataques automatizados y de fuerza bruta.

Recuerda que la seguridad es un proceso continuo. Combina estos métodos con otras buenas prácticas, como mantener WordPress, plugins y temas actualizados, usar contraseñas robustas y realizar copias de seguridad periódicas.

Si tienes dudas, empieza con un plugin de seguridad y, cuando te sientas más cómodo, prueba con los métodos manuales. Tu sitio web te lo agradecerá.

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel